Skip Content
You are currently on the new version of our website. Access the old version .
DronesDrones
  • Article
  • Open Access

25 July 2022

LAP-BFT: Lightweight Asynchronous Provable Byzantine Fault-Tolerant Consensus Mechanism for UAV Network

,
and
The College of Computer Science and Technology, Nanjing University of Aeronautics and Astronautics, Nanjing 210016, China
*
Author to whom correspondence should be addressed.
This article belongs to the Special Issue Security, Privacy and Reliability of Drone Communications for beyond 5G Networks

Abstract

Mission-oriented UAV networks operate in nonsecure, complex environments with time-varying network partitioning and node trustworthiness. UAV networks are thus essentially asynchronous distributed systems with the Byzantine General problem, whose availability depends on the tolerance of progressively more erroneous nodes in the course of a mission. To address the resource-limited nature of UAV networks, this paper proposes a lightweight asynchronous provable Byzantine fault-tolerant consensus method. The consensus method reduces the communication overhead by splitting the set of local trusted state transactions and then dispersing the reliable broadcast control transmission (DRBC), introduces vector commitments to achieve multivalue Byzantine consensus (PMVBA) for identity and data in a provable manner and reduces the computational complexity, and the data stored on the chain is only the consensus result (global trustworthiness information of the drone nodes), avoiding the blockchain’s “storage inflation” problem. This makes the consensus process lighter in terms of bandwidth, computation and storage, ensuring the longevity and overall performance of the UAV network during the mission. Through QualNet simulation platform, existing practical asynchronous consensus algorithms are compared, and the proposed method performs better in terms of throughput, consensus latency and energy consumption rate.

1. Introduction

The use of UVAs as a flight platform is growing rapidly. Due to their inherent attributes such as mobility, flexibility and adaptive altitude, UAVs have many key potential applications in wireless systems [1]. UAV networks performing missions in clusters of UAVs have irreplaceable applications in emergency networking, rescue and military applications due to their light weight and fast deployment, such as [2] the study of the phase synchronization problem of establishing connections between base stations (BS) and ground receivers (GR) by a group of UAVs as relays. The UAV network is a mobile ad hoc network that is not supported by a reliable central authority and the completion of the mission relies on the interoperability of the UAV nodes. Maintaining the trustworthiness of the UAV network and correctly assessing the reliability and trustworthiness of the nodes is therefore key to mission accomplishment. However, the complex mission environment exposes the UAV network not only to network partitioning caused by physical interference but also to the risk of malicious cyber attacks from external nodes. Moreover, during the mission, legitimate drone nodes can become faulty or selfish due to external interference and energy consumption; the open nature of wireless networks also makes drone nodes more vulnerable to network attacks (e.g., link layer attacks) and compromises them to become Byzantine nodes with a legitimate identity. The absence of central authoritative support, the dynamic generation of errant nodes and the arbitrary nature of Byzantine node behavior make the UAV network during a mission essentially an asynchronous distributed system in a Byzantine environment. Information passed between nodes may be discarded, delayed or even tampered with. It is therefore necessary to establish a highly trusted distributed Byzantine fault-tolerant system for the UAV network, thus ensuring high availability for resource-constrained UAV networks in unfriendly mission environments. The key to solving the problem lies in sensing node state changes in real time, accurately identifying untrustworthy nodes and isolating them from the mission network in time for the UAV network to effectively reach consensus on the latest state records of all participating nodes. In this regard, the Byzantine environment, the asynchronous nature of the UAV network and resource constraints are the main challenges in establishing a lightweight and efficient consensus-based UAV trusted network.
Distributed systems rely on message passing to enable communication and coordination between processes or nodes, and consensus algorithms are key to achieving data consistency among system components. Therefore, consensus algorithms have been a hot research topic in distributed systems and are the core of blockchain. According to the fault tolerance of distributed systems for faulty components, consensus protocols are divided into two main categories, namely, crash-tolerant protocols (CFT) and Byzantine fault-tolerant protocols (BFT) [3]. The consensus protocol for the UAV network explored in this paper is a BFT protocol that needs to resist not only malicious attacks from external nodes but also faces interference from dynamically generated faulty nodes internally. The consensus algorithm is divided into two main steps: first, the selection of the master node and the determination of the proposed master node; second, the agreement of consensus on the proposal. The consensus protocol is divided into deterministic and probabilistic consensus based on the consistency decision. Castro and Liskov [4] first proposed the practical Byzantine consensus algorithm (PBFT) based on replication technology, which first made the implementation of highly available distributed fault-tolerant systems possible. The PBFT specifies that all nodes take turns to be the master node and uses a three-stage protocol (sorting, communication and acknowledgment) by two-by-two communication between nodes to achieve deterministic consensus, with good consensus efficiency and no possibility of changing the consensus result. However, the identity of participants must be clear, the communication complexity is high, and the scale of the system is limited. Its application scenarios usually have relatively sufficient bandwidth and computing power, so it is widely used in coalition chains of manageable scale. However, the high complexity of communication, the need for relatively sufficient bandwidth and computing power and the need to clearly identify system participants result in limited system size and application scenarios. As an unlicensed public chain, Bitcoin uses “Satoshi Nakamoto Consensus”, essentially a probabilistic consensus that competes for master nodes through proof-of-work (POW), sends new blocks through only one round of broadcasts and uses multiple confirmations to progressively increase the probability of consistency. The literature [5,6] uses POW consensus-only blockchain combined with MANET to assist in establishing trusted routes. The advantages are reduced communication complexity and no licensing required for participating nodes, thus increasing the scalability of the system. The disadvantages are also obvious: the time cost of consensus is too high, and the consensus result is uncertain.
The FLP Impossibility Conclusion [7] is the most fundamental conclusion of consensus algorithms (protocols) for asynchronous systems: there is no deterministic consensus algorithm that can solve the Byzantine consensus problem in an asynchronous environment, even when only benign errors occur. For specific asynchronous distributed system applications, the design of asynchronous Byzantine consensus algorithms needs to consider how to break the limits of the FLP’s impossible conclusion. Mission-oriented UAV networks are lightweight and have nodes with limited bandwidth, computational power and energy availability, which, together with the presence of external malicious nodes and internal Byzantine nodes, makes the UAV network of distributed mission systems asynchronous most of the time. The complexity of the mission environment, the generation of errant nodes and the dynamics of the network topology all affect the security and activeness of the UAV network distributed system consensus mechanism. At the same time, the time-sensitive nature of the task requires improving the consensus efficiency of the algorithm to meet the availability and trustworthiness of the UAV network. Existing asynchronous Byzantine consensus algorithms [8,9,10] do not set limits on the computational power of nodes in these application scenarios, although they fully consider asynchronous features (e.g., introducing random methods to save activities and eliminating cycle synchronization and network timeout settings). Given the light weight of UAV network nodes, the high mission timeliness and the asynchronous nature of the network, the key to ensuring the overall trustworthiness of the network in an environment where erroneous nodes are gradually increasing is the ability of the UAV network to quickly and efficiently agree on the latest trustworthy state of the UAV nodes involved in the mission.
The main contributions of this work are as follows:
  • First, a node state blockchain monitoring system is introduced to achieve real-time scoring of neighboring nodes’ forwarding behavior. Each node generates local state transactions, which contain neighboring nodes’ trustworthiness loss assessment, remaining energy and neighboring nodes list. The blockchain system stages a consensus on the set of local state transactions, calculates the global trustworthiness of nodes, marks untrustworthy nodes and elects new authorized nodes. The consensus result is used as new block information to update the blockchain, and the drone nodes reconfigure the trusted network based on the latest block.
  • Secondly, a fuzzy K-Modes clustering algorithm that can handle classification type data is introduced to divide the UAV network into k subnetwork regions based on the location of UAV node distribution, with a list of neighboring node IDs as the feature vector, and calculate the subregion center nodes. The region centers are stored in the new blocks as part of the configuration information to guarantee the maximum coverage of the UAV network in the new round of upper-layer networks and optimize the interzone routing.
  • Third, the lightweight asynchronous provable Byzantine fault-tolerant algorithm (LAP-BFT) is proposed. This algorithm partitions the set of local state transactions so that each delegated authorization node is only burdened with a small share of data for reliable broadcast transmission. Multivalued Byzantine asynchronous consensus is accomplished through an external proof smart contract (with computational complexity O ( 1 ) ) in the Genesis block. This not only reduces the bandwidth requirement for individual nodes but also avoids the high computational power consumption caused by threshold key operations. It enables asynchronous consensus to operate lightly in resource-constrained UAV networks.
The rest of paper is organized as follows: Work related to the consensus problem of the Byzantine system is in Section 2. The system model, including the network model, the threat model of the network and the structure of the blockchain, is placed in Section 3. A specific description of the recommended scheme, including blockchain node state detectors, is in Section 4. The proof and analysis of the nature of the system is presented in Section 5, where security and activity are proven and analyzed. Section 6 observes the consensus latency, throughput and energy consumption rate of each of the four asynchronous consensus algorithms by comparing their operation in a UAV network scenario. Section 7 concludes and looks at the possibility of the dynamic execution of smart contracts in UAV network trusted systems.

3. System Mode

The mission-oriented UAV network consists of N lightweight UAVs, denoted as U i i { 1 , 2 , , N } , and can be considered as a P2P virtual network based on a mobile ad hoc network. The global trust platform for the UAV network is a private permission blockchain system. The system is based on the elliptic curve cryptosystem of setting the public and private keys of the drone U i , the drone node identity I D i and the proof of the node’s existence in the network W _ i . The identity vector commitment and the registered node base information of the UAV network are stored in the Genesis block and synchronized to all registered UAVs before the mission starts. The security environment is set up with an elliptical public key cryptosystem, where the registration server allocates public and private keys for UAVs and generates a unique identity for UAVs by hashing the IP and public key of UAVs and mapping them to a point of the elliptical curve (finite exchange group G). The system constructs UAV identity vector commitment and provides a witness of existence for all registered UAVs. A random set of UAV nodes are selected as delegated agents responsible for the first round of consensus at the start of the mission. This part is not the focus of this paper, so only the setup and security foundation of the UAV network is briefly explained. The following description is the basic setup required for the blockchain system to operate. H 1 = ( 0 , 1 ) * Z q * , H 2 = ( 0 , 1 ) * G are the hash functions to generate UAV identity,
I D i = H 2 ( H 1 ( P K i U i ) S i g n r e g S K ( H 1 ( P K i I P i ) ) )
where S i g n r e g S K is the signature function of the registration server. I D = { I D 1 , I D 2 , , I D N } is the identity vector of all registered UAVs, using the vector commitment algorithm to generate the identity vector commitment ( V C I D ) and the identity witness ( W i ) of the UAVs. V C I D = W i ( I D i ) is an authentication function with computational complexity O ( 1 ) , which is deployed as a smart contract to the blockchain Genesis block.

3.1. Network Model

The mission environment of the UAV network contains multiple types of nodes: trusted nodes, which operate strictly according to the specified protocol and do not deviate from it in any way; untrusted nodes, which include external malicious nodes and internal error nodes that are dynamically generated during the mission, i.e., faulty nodes; UAVs that cannot complete incoming and outgoing messages; selfish nodes, UAVs that send data but do not forward network data; and compromised nodes, UAVs that delay, discard or even tamper with forwarded data. UAV networks in mission execution suffer from the Byzantine General problem and exhibit asynchronicity in most cases. Therefore, the trustworthiness of the UAV network depends on the current performance state of the UAV nodes participating in the mission, including the global reputation assessment of the nodes, the nodes’ own residual energy and the number of neighbouring nodes. As the mission progresses, the credibility of the UAV nodes evolves. The blockchain trustworthiness system based on a lightweight asynchronous provable consensus mechanism explored in this paper assesses the local state of the drone nodes in real time and achieves a consistent and up-to-date network-wide trustworthiness state assessment through the consensus of the authorisation committee to ensure high trustworthiness of the drone network in operation. Figure 1 shows the model of the unmanned network blockchain trustworthiness system during the mission execution phase.
Figure 1. LAP-BFT consensus UAV blockchain network model.
All UAVs involved in the mission in the system model are full nodes of the blockchain system, and all UAV nodes are trusted at the beginning of the mission. Neighboring UAV nodes monitor each other’s data forwarding behavior, while recording the number of their respective neighboring nodes. According to the set deduction rules, the drone nodes evaluate the local reputation of all neighboring nodes, collect the remaining energy, establish a record of the nodes’ current trustworthiness status and multicast it to the delegated agents after the new block is chained. The Delegated Agent group is selected periodically and consists of the top M trusted nodes with the best status. The system authorizes the delegated agent group to perform consensus operations. The untrustworthy nodes are identified by counting the global state of the nodes, updating the delegated agents and finally creating new blocks.

3.2. Thread Model

In an unfriendly mission environment, external malicious nodes cannot only use their own powerful performance to carry out replay attacks, DOS attacks, etc., but also can take advantage of the openness of the wireless network to implement intrusions, such as link layer attacks, which cause legitimate UAV nodes to compromise and cause the UAV network to generate Byzantine nodes. As a special kind of mobile ad hoc network, the UAV network forwards data in a multi-hop, multi-path fashion via neighbouring node broadcasts. Therefore Byzantine error nodes, which are dynamically generated during the mission, cannot prevent the delivery of information between trusted nodes. However, errant nodes can discard messages sent by the correct node, or send inconsistent messages to different nodes, or deliberately delay the delivery of U i and U j messages from the correct node, tamper with the content of forwarded messages, misrepresent the state of the node itself, etc. Byzantine nodes can even collude with each other to improve the trustworthiness of each other’s state. The selfish nodes in the error nodes’ behavior of only receiving and not forwarding does not lead to malicious attacks, but it can also consume network resources. Too many error nodes in the system will not only seriously affect the overall performance of the UAV network, but also cause the system to crash due to the inability of the consensus algorithm to complete.

3.3. Blockchain Strcture

UAVs act as blockchain nodes in a secure environment and register their identity, allocate public and private keys, generate a vector committed witness for authentication, etc. Initially, the system assigns a maximum global reputation value to all UAV nodes. The blockchain creation block is generated by a security center that is not involved in the mission. The Genesis block contains basic information about the registered UAV (a list of key–value pairs, { I D : ( I P , P K , R e p u t a i o n ) } . Identity vector commitments for all drones, the first round of delegated agents authorized to perform consensus operations, and the smart contracts required by the system are deployed in the Genesis block. The smart contracts mainly include a local reputation assessment smart contract, a node global status statistics smart contract and an identity authentication smart contract. The Genesis block is broadcast by the security centre to the network-wide nodes, and the drone nodes update the block chain. Each node activates the local instant status collection and evaluation function, monitors the data forwarding behaviour of neighbouring nodes, evaluates local reputation and collects the latest status. The delegated agent committee acts as the authorisation centre to collect and count the current trusted status assessment (global reputation of the node, remaining energy and number of neighbouring nodes) of the registered drone nodes. The delegated agent committee performs consensus on the collected local state data and the new delegated agent committee is finally elected, and the change committee will perform the next round of consensus operations. The block structure and blockchain form is shown in Figure 2.
Figure 2. UAV network blockchain structure.

5. Proof of System Properties and Performance Analysis

The ultimate design aim of this solution is to achieve atomic broadcast of the latest state assessment of UAV nodes in an asynchronous UAV network and to establish consistent networkwide block data of the global section trusted state to support continuous trusted running of the UAV network. Formally, an atomic broadcast protocol satisfies the following properties with overwhelming probability.
  • Agreement, if an honest node outputs a value v then every honest node outputs v.
  • Total Order, if two honest nodes output ⟨ v 0 , v 1 , , v j ⟩ and ⟨ v 0 , v 1 , , v j ⟩, respectively, then v 0 = v 0 , v 1 = v 1 , , v j = v j .
  • Censorship resilience, if a value v is input to n f honest nodes, then it will eventually be output by each honest node.
The Lightweight Asynchronous Provable Byzantine Fault-Tolerant Consensus Protocol (LAP-BFT) is an asynchronous common subset (ACS) consisting of the Decentralized Reliable Broadcast Subprotocol (DRBC) and the Provable Multi-Valued Byzantine Consistency Subprotocol (PMVBA). Combined with the smart contract used for validation in the Genesis block, it can be efficiently and simply converted to an atomic broadcast for all node local state datasets with the correct delegate agent node outputting the public subset. LAP-BFT MUST satisfy the Agreement, Total Order and External-Validity properties for security, and the Termination property for activity.

5.1. Proof of Security and Activity

Theorem 2.
The system satisfies the following Agreement property: At the end of a round of consensus protocol, if there exists an honest node that outputs a locally trusted set of state records { L S t a t u s P a c k e t d } ( | R | ) , then all honest nodes output { L S t a t u s P a c k e t d } ( | R | ) .
Proof. 
M delegated agents arrange the collected local trusted status data records ( L S A s ) into the dataset {LSA}N in the order of the nodes’ identity vector commitments in the Genesis block. Disperse them into M subsets of records of size B = N / M . The delegated agent nodes take the corresponding B records in the order of their position in the current delegated agent list, e.g., if the position of the agent node I D d requires Index, then L S t a t u s P a c k e t d = { L S A } ( i n d e x + B ) . After RBC communication, there are R sets of L S t a t u s P a c k e t d data records in R honest nodes, which are combined into a consistent data set { L S t a t u s P a c k e T d } ( | R | ) in the order of Index size and proven. □
Theorem 3.
The system satisfies the following Total order property: If an honest node outputs a sequence of messages { v 0 , v 1 , , v j } , another honest node outputs a sequence of messages { v 0 , v 1 , , v j } , then v 0 = v 0 , v 1 = v 1 , , v j = v j .
Proof. 
The local trusted state dataset collected by the delegated agent group is ordered based on the order in which the identity vector commitments were generated at the time of UAV registration. Honest nodes transmit dispersed packets via a reliable broadcast protocol, which are then verified by a provable multivalue agreement protocol and finally concatenated according to the order of the delegated agent nodes’ positions in their lists, so that the order of the data in all honest nodes is consistent and proven. □
Theorem 4.
Corresponding to the resilience of censorship in atomic broadcasting, ACS requires verifiability of consensus results, and this scheme provides external validation. The system satisfies the following External-Validity property, such that if an honest node outputs a value v, then E x t _ V e r i f y ( v ) = t r u e , where E x t _ V e r i f y is external verification.
Proof. 
The UAV network runs in an authenticated environment with an authentication function stored in the Genesis block as a blockchain smart contract. This includes authentication of the data sender; node data integrity verification, i.e., the node performs a H A S H ( c u r S c o r e i x ) process on the reputation assessment values of its local data against neighboring nodes, and during the consensus process, the agent nodes receiving the dispersed packets compare the corresponding hash values to determine whether the sender has tampered with them. The legitimacy of the data sent by the honest node is confirmed by the data legitimacy verification smart contract provided by the blockchain, which is proven. □
Theorem 5.
The system satisfies the following Termination property. Let f be the number of error nodes in the delegated agent nodes. If ( f + 1 ) activates the PMVBA protocol and all messages between honest nodes (trusted delegated agents) arrive, then the honest nodes output { L S t a t u s P a c k e t d } ( | R | ) , where | R | is the number of honest nodes.
Proof. 
The PMVBA protocol is executed in all delegated agent nodes, and if there are f + 1 primary agents that are trusted honest nodes, then there are honest nodes that receive | R | signed and acknowledged copies of the scattered packets, where | R | = f + 1 , and eventually the honest nodes output { L S t a t u s P a c k e t d } ( | R | ) . However, even if f > ( N + 1 ) / 3 , (N is the total number of nodes in the UAV network), the consensus protocol can terminate execution as long as the number of erroneous nodes in the agents f < ( M + 1 ) / 3 , (M is the total number of agents). The UAV network operates in a complex environment, and it is possible that the agent nodes may not be able to meet the Byzantine fault tolerance requirements, resulting in a situation where the consensus protocol cannot be terminated. Because the agent has periodically elected trusted nodes to act as such, the data record can be verified between honest nodes, and therefore a consensus cycle can be set to resolve the activity problem. If the timeout fails to terminate consensus, but the number of scattered packet signatures has exceeded two, the master node is determined based on the order of the size of the agent ID and the local trusted state dataset of that master node is used as an asynchronous common subset to maintain consensus activity. Obtained. □

5.2. Other Security Analyses

Preventing replay attacks: The UAV network blockchain system provides authentication based on identity vector commitment, where malicious external nodes in the mission environment cannot perform unauthorized access but can still launch replay attacks. The height of the current block is included in the local trusted state packet, while the agent node saves one round of collected local trusted state data to local data, so that duplicate data for the same round is discarded directly. Data from different rounds are also rejected because they do not match the height of the local block chain. This effectively prevents replay attacks, and the same round of data can be cleared after a new block is chained, avoiding storage pressure.
Preventing erroneous blocks from being chained: Honest delegated agent nodes in the consensus process locally validate the received dispersed trusted status packets, validated as described in Theorem 4. If the delegated agent transforms into a Byzantine node, the validation of the dispersed packets it sends does not pass. Add the signature S i g n S K x ( L S t a t u s P a c k e t d ) to verify legitimacy. If passed, the signature is merged into S as a key-value pair I D x : ( S i g n S K x , L S t a t u s P a c k e t d ) . The UAV node receiving the new block prevents forgery of it by a malicious node in the delegate agent by verifying S.

5.3. Effectiveness Analysis

The completion of missions in complex environments with resource-constrained UAV networks relies on how their systems meet lightweight requirements. This scheme provides a lightweight asynchronous provable multivalued Byzantine consensus algorithm for the analysis of UAV networks in terms of communication, computation (energy consumption) and storage.
Lightweight communication: The scheme provides de asynchronous consensus algorithm where consensus transactions are local state records generated by the nodes themselves at this stage, rather than transaction data from third parties. Primarily at the network layer neighbouring nodes collect data by monitoring each other’s forwarding behaviour and performing reputation discount assessment. The message complexity depends on the number of one-hop neighbouring nodes of the node. In terms of the reputation discount evaluation value of a neighbouring node I D x , c u r S c o r e i x ) , its size is 5 bytes, and even if the node I D i has 100 neighbouring nodes, its local state data length is much less than 1 KB. Let the single local status be provided by the node. The size of the data is L. Additionally, in this phase, multicast is sent to the proxy and the communication complexity is O ( 1 ) ; in the consensus phase, the number of agent nodes, M, is much smaller than the number of nodes participating in the mission, N. This dispersed data is used for stable transmission (DRBC), and the length of the dispersed packet | m | = L × M / N . The communication complexity of the synchronization phase is O ( M 2 | m | ) , M g g { N and there is no need to keep historical transactions in the block. The main component of the consensus data is the global reputation evaluation ( I D i , G r e p u t a i o n ) of the current round of N drone nodes, which is also 5 bytes. Thus even at a network size of 1000 drones, the new block size is only K levels. The communication complexity of delegating the agent to broadcast the new block to the current network is O ( 1 ) .
Lightweight computation: The consensus algorithm provided by this scheme adopts the method of external proof function to verify the consensus result, the verification method does not need to traverse the query, such as identity authentication using vector commitment to verify the existence witness provided by the node, integrity verification by comparing the hash value and verifying the signature, etc.; the computational complexity is all O ( 1 ) . The output Asynchronous Common Subset (ACS) is a direct merging of the dispersed trusted state records submitted by the honest delegated agent nodes, which does not require the use of corrective codes to disperse and recover data because of the guarantee of external proofs, avoiding the computation of [8,9,10] threshold encryption and decryption. In addition, the scheme uses delegated authority to select the node with the best state for each round of consensus computing and dynamic change, which also effectively achieves computational balance and extends the overall running time of the UAV network.
Lightweight storage: The UAV network trusted system is essentially a stateless blockchain, replacing the identity registration record with a 32-bit vector commitment. There is also no need to keep dynamically generated local trusted state data as a historical record. At each consensus stage, only the aggregated subvector of untrustworthy node witnesses from the global trusted state record and the list of new proxy agents are kept. The delegated agents only provide the local state data storage required for a consensus round. No cumulative storage is required.

6. Simulation Experiments

The experiments were conducted using the QualNet network simulation environment. The QualNet simulator, developed by Scalable Networks Technologies (SNT) for network design, operation and management, simulates the network behavior and performance of thousands of nodes and is a comprehensive set of tools for simulating large wireless or wired networks. The biggest difference between the UAV network trusted system and other application scenarios is that transactions are node-related, and consensus transactions are the state values of all nodes during runtime, rather than third-party customer-submitted data. The more nodes there are the more transactions there are. The UAV network has no error nodes at the beginning of the mission, and as the mission progresses creates faulty nodes, selfish nodes and Byzantine nodes.
Scenarios with different scales of wireless communication are set up in the QualNet simulation environment with a certain percentage of error nodes. The dynamic changes in the operation of the UAV network mission are simulated by configuring multiple sets of configuration files and by the node application importing different configurations at different time periods. Several asynchronous consensus protocols are deployed into the node stack separately, and the consensus process throughput, latency and energy consumption are compared for different combinations of mission nodes of different sizes and containing different proportions of error nodes.
In this scheme, the final asynchronous generic subset of ACS is generated by executing DRBC and PMVBA subprotocols. Let the length of the data to be consented | m | and the simulation experiments focus on the message complexity, communication complexity and computational complexity in the related algorithms during the consensus process. Comparing the throughput, latency and computational overhead of the asynchronous consensus algorithms in [8,9,10] in one round of consensus. Table 4 shows a comparison of the performance of processing ACS.
Table 4. Complexity comparison for ACS.
The base latency: A round of consensus latency, is defined in this scenario using the latency in HB-BFT; the average time interval from the first node starting the protocol to the n-fth node obtaining the result. The latency is related to the size of the transaction volume and the number of participating nodes, and the application scenario in this paper, where the transactions are the nearest trusted state data of the nodes, and thus the more nodes the larger the transaction volume. The experimental design sets different network sizes and configures no more than one-third of the total number of erroneous nodes in the consensus delay during a consensus round, and the experimental results are shown in Figure 5.
Figure 5. Comparison of consensus base delay.
It is obvious that the asynchronous consensus latency of HB-BFT is much higher than other schemes, mainly because the ABA subprotocol in the ACS protocol has multiple instances in each node, which not only consumes a large number of operations but also increases the consensus latency. In contrast, the algorithm in [9] uses an agent approach to reduce the number of ABA instances, but because the consensus result of the final generated ACS is achieved by all participating nodes randomly selecting a set of transactions using the RS_Code technique, the threshold encryption and decryption operations are added to the consensus algorithm, while in this case the asynchronous consensus algorithm of LAP-BFT only runs on the selected proxy and provides smart contracts through the blockchain for external proof to achieve the final ACS consensus result, which takes less time to run.
Latency under different error nodes: Multi-round consensus delay experiments to design application scenarios for a UAV network with 60 nodes. A different number of error nodes are generated in each round as the mission progresses. The number of error nodes is gradually increased in each consensus round by the UAV network through several sets of aggregate profiles, which are loaded into the system at different stages to simulate the dynamic generation of error nodes in a complex task environment. Comparing the latency of the four consensus algorithms is shown in Figure 6. It can be seen that the consensus algorithms of HB-FBT and Dumbo-HBT have a gradual increase in latency as the number of errant nodes increases, and the latency rises more rapidly. When the number of erroneous nodes exceeds 1/3 of the total number of participating nodes, the consensus reaching condition cannot be satisfied, the consensus process cannot be terminated and the latency is infinite. lAP-BFT uses dynamic selection of the best group of nodes based on reputation as the proxy for each round of asynchronous consensus to minimize the possibility of erroneous nodes appearing in the delegated agent nodes. This way the probability of more than 1/3 error nodes arising in the delegated agent nodes is very small. As a result, LAP-BFT asynchronous consensus satisfies the terminable condition even with erroneous nodes that exceed Byzantine tolerance, and with little change in consensus latency as erroneous nodes increase.
Figure 6. Comparison of delay times with different error nodes.
Relationship between throughput and latency: Throughput is the number of transactions submitted by the system per second and is a concept that is closely related to bandwidth. The transaction volume in the application scenario of this paper is related to the number of nodes, but the transaction data consists mainly of reputation discounts from neighboring nodes, which are small in order of magnitude. As the network size gradually increases, the node throughput also gradually increases, and after reaching a peak, the throughput decreases. Experiment-1 demonstrates that ABA is too consuming in the HB-BFT scenario and that the computational power of HB-BFT asynchronous consensus bottlenecks at more than 60 nodes. In addition, it is more meaningful to study the relationship between throughput and latency for this application scenario, so the experiments were designed for different scales of up to 60 drones, first to ensure that each asynchronous algorithm can run in these scenarios, and then for the consensus latency case at different throughputs; the maximum tolerable error nodes exist for each scale. The experimental results are shown in Figure 7. Again due to the different ways of building ACS, Dumbo1 and Dumbo2 require threshold signature encryption, and latency rises faster with throughput, while HB-BFT needs to handle threshold key processing, and the number of ABA instances per node increases with the number of nodes, and the number of nodes is proportional to the volume of transactions, so HB-BFT rises fastest with the number of nodes. Latency growth for LAP-BFT is more moderate because the computational complexity of external validation of the consensus process is constant and because there is only one instance of PMVBA per node and the computation occurs in a small number of delegated agents.
Figure 7. Throughput versus latency.
Rate of energy consumption: The UAV network’s energy supply is limited, and extending the runtime of the UAV network is also an important manifestation of lightweighting. The verification environment of a UAV network of 50 registered UAVs generates 14 erroneous nodes at some stage. The asynchronous state of the network is simulated by setting node property parameters and specifying their forwarding behavior in the program run. Five faulty nodes, which do not process forwarded data; five Byzantine nodes, which randomly tamper with forwarded data; and four selfish nodes, which send data but do not forward it. The drones move on a given path, without considering obstacle avoidance. The simulated energy values are set to correspond to the running times of the different required algorithms corresponding to the nodes deployed on them, and the experiments compare the rate of consumption of a given amount of energy by different asynchronous consensus algorithms. This is shown in Figure 8:
Figure 8. Comparison of energy consumption rates.
Dumbo1 uses fixed proxies and its computational complexity is related to the number of proxies, but because the consensus algorithm runs all the time, the proxy nodes are consumed quickly and the consensus process cannot continue when the proxy consumption ends. Dumbo2 uses more energy than LAP-BFT because the threshold key is still computed. This is because LAP-BFT uses only external verification to prove the consensus result, and more importantly, dynamically selects groups of delegated agents to share the consensus computation, extending the running time of the entire network.

7. Conclusions

The objective of this solution is to establish an asynchronous fault-tolerant system to maintain the trustworthiness of the UAV network during mission execution. Through mutual monitoring between drone nodes during data delivery, the nodes evaluate the behavior of their respective neighboring nodes and collect the latest current local trusted state. A lightweight asynchronous provable consensus is used to reach networkwide agreement on the global trusted state of the nodes, providing a trusted environment for the next round of drone network operation. The security and activity of the asynchronous consensus proposed in the scheme are explained in terms of theoretical proofs, and the transmission efficiency and computational overhead of three practical asynchronous consensus algorithms operating in the UAV network environment are compared by QualNet network simulation software. Experiments with one or more rounds of consensus process show that this scheme has superior performance in terms of throughput, consensus latency and consensus computational overhead of a single round. The smart contract is used in many aspects of the scheme, such as authentication, proof of consensus results, etc. In an asynchronous environment, how to execute the smart contract dynamically according to the actual needs is the focus of the next paper.

Author Contributions

Conceptualization, L.K.; Data curation, L.K.; Project administration, B.C.; Writing—original draft, L.K.; Writing—review & editing, F.H. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported in part by the National Key Research and Development Program of China, under Grant 2019YFB2102002; in part by the National Natural Science Foundation of China, under Grant 62176122, 62001217; in part by A3 Foresight Program of NSFC, under Grant No. 62061146002.

Institutional Review Board Statement

Not applicable.

Data Availability Statement

Not applicable.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Mozaffari, M.; Saad, W.; Bennis, M.; Nam, Y.; Debbah, M. A Tutorial on UAVs for Wireless Networks: Applications, Challenges, and Open Problems. IEEE Commun. Surv. Tutor. 2019, 21, 2334–2360. [Google Scholar] [CrossRef] [Green Version]
  2. Pourranjbar, A.; Baniasadi, M.; Abbasfar, A.; Kaddoum, G. A Novel Distributed Algorithm for Phase Synchronization in Unmanned Aerial Vehicles. IEEE Commun. Lett. 2020, 24, 2260–2264. [Google Scholar] [CrossRef]
  3. Rahli, V.; Vukotic, I.; Völp, M.; Veríssimo, P.J.E. Velisarios: Byzantine Fault-Tolerant Protocols Powered by Coq. In Lecture Notes in Computer Science, Proceedings of the Programming Languages and Systems—27th European Symposium on Programming, ESOP 2018, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2018, Thessaloniki, Greece, 14–20 April 2018; Ahmed, A., Ed.; Springer: Berlin/Heidelberg, Germany, 2018; Volume 10801, pp. 619–650. [Google Scholar] [CrossRef] [Green Version]
  4. Castro, M.; Liskov, B. Practical Byzantine Fault Tolerance. In Proceedings of the Third USENIX Symposium on Operating Systems Design and Implementation (OSDI), New Orleans, LV, USA, 22–25 February 1999; Seltzer, M.I., Leach, P.J., Eds.; USENIX Association: Berkeley, CA, USA, 1999; pp. 173–186. [Google Scholar]
  5. Jarjis, A.; Kadir, G. Blockchain Authentication for AODV Routing Protocol. In Proceedings of the 2020 Second International Conference on Blockchain Computing and Applications, BCCA 2020, Antalya, Turkey, 2–5 November 2020; Alsmirat, M.A., Jararweh, Y., Aloqaily, M., Özkasap, Ö., Eds.; IEEE: Piscataway, NJ, USA, 2020; pp. 78–85. [Google Scholar] [CrossRef]
  6. Careem, M.A.A.; Dutta, A. Reputation based Routing in MANET using Blockchain. In Proceedings of the 2020 International Conference on COMmunication Systems & NETworks, COMSNETS 2020, Bengaluru, India, 7–11 January 2020; IEEE: Piscataway, NJ, USA, 2020; pp. 1–6. [Google Scholar] [CrossRef]
  7. Borowsky, E.; Gafni, E. Generalized FLP impossibility result for t-resilient asynchronous computations. In Proceedings of the Twenty-Fifth Annual ACM Symposium on Theory of Computing, San Diego, CA, USA, 16–18 May 1993; Kosaraju, S.R., Johnson, D.S., Aggarwal, A., Eds.; ACM: New York, NY, USA, 1993; pp. 91–100. [Google Scholar] [CrossRef]
  8. Miller, A.; Xia, Y.; Croman, K.; Shi, E.; Song, D. The Honey Badger of BFT Protocols. In Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security, Vienna, Austria, 24–28 October 2016; Weippl, E.R., Katzenbeisser, S., Kruegel, C., Myers, A.C., Halevi, S., Eds.; ACM: New York, NY, USA, 2016; pp. 31–42. [Google Scholar] [CrossRef] [Green Version]
  9. Guo, B.; Lu, Z.; Tang, Q.; Xu, J.; Zhang, Z. Dumbo: Faster Asynchronous BFT Protocols. In Proceedings of the CCS ’20: 2020 ACM SIGSAC Conference on Computer and Communications Security, Virtual, 9–13 November 2020; Ligatti, J., Ou, X., Katz, J., Vigna, G., Eds.; ACM: New York, NY, USA, 2020; pp. 803–818. [Google Scholar] [CrossRef]
  10. Lu, Y.; Lu, Z.; Tang, Q.; Wang, G. Dumbo-MVBA: Optimal Multi-Valued Validated Asynchronous Byzantine Agreement, Revisited. In Proceedings of the PODC ’20: ACM Symposium on Principles of Distributed Computing, Virtual, 3–7 August 2020; Emek, Y., Cachin, C., Eds.; ACM: New York, NY, USA, 2020; pp. 129–138. [Google Scholar] [CrossRef]
  11. Lamport, L. The part-time parliament. In Concurrency: The Works of Leslie Lamport; Malkhi, D., Ed.; ACM: New York, NY, USA, 2019; pp. 277–317. [Google Scholar] [CrossRef]
  12. Garay, J.A.; Kiayias, A. SoK: A Consensus Taxonomy in the Blockchain Era. In Lecture Notes in Computer Science, Proceedings of the Topics in Cryptology—CT-RSA 2020—The Cryptographers’ Track at the RSA Conference 2020, San Francisco, CA, USA, 24–28 February 2020; Jarecki, S., Ed.; Springer: Berlin/Heidelberg, Germany, 2020; Volume 12006, pp. 284–318. [Google Scholar] [CrossRef]
  13. Ongaro, D.; Ousterhout, J.K. In Search of an Understandable Consensus Algorithm. In Proceedings of the 2014 USENIX Annual Technical Conference, USENIX ATC ’14, Philadelphia, PA, USA, 19–20 June 2014; Gibson, G., Zeldovich, N., Eds.; USENIX Association: Berkeley, CA, USA, 2014; pp. 305–319. [Google Scholar]
  14. Knudsen, H.; Li, J.; Notland, J.S.; Haro, P.H.; Ræder, T.B. High-Performance Asynchronous Byzantine Fault Tolerance Consensus Protocol. In Proceedings of the 2021 IEEE International Conference on Blockchain, Blockchain 2021, Melbourne, Australia, 6–8 December 2021; Xiang, Y., Wang, Z., Wang, H., Niemi, V., Eds.; IEEE: Piscataway, NJ, USA, 2021; pp. 476–483. [Google Scholar] [CrossRef]
  15. Navaroj, G.I.; Julie, E.G.; Robinson, Y.H. Adaptive practical Byzantine fault tolerance consensus algorithm in permission blockchain network. Int. J. Web Grid Serv. 2022, 18, 62–82. [Google Scholar] [CrossRef]
  16. Ben-Or, M. Another Advantage of Free Choice: Completely Asynchronous Agreement Protocols (Extended Abstract). In Proceedings of the Second Annual ACM SIGACT-SIGOPS Symposium on Principles of Distributed Computing, Montreal, QC, Canada, 17–19 August 1983; Probert, R.L., Lynch, N.A., Santoro, N., Eds.; ACM: New York, NY, USA, 1983; pp. 27–30. [Google Scholar] [CrossRef]
  17. Bracha, G. An O(log n) expected rounds randomized byzantine generals protocol. J. ACM 1987, 34, 910–920. [Google Scholar] [CrossRef]
  18. Singh, J.; Kumawat, A.; Venkatesan, S. Improved Byzantine fault tolerance with fast consensus. Concurr. Comput. Pract. Exp. 2022, 34, e6813. [Google Scholar] [CrossRef]
  19. Abraham, I.; Malkhi, D.; Spiegelman, A. Asymptotically Optimal Validated Asynchronous Byzantine Agreement. In Proceedings of the 2019 ACM Symposium on Principles of Distributed Computing, PODC 2019, Toronto, ON, Canada, 29 July–2 August 2019; Robinson, P., Ellen, F., Eds.; ACM: New York, NY, USA, 2019; pp. 337–346. [Google Scholar] [CrossRef]
  20. Cachin, C.; Kursawe, K.; Petzold, F.; Shoup, V. Secure and Efficient Asynchronous Broadcast Protocols. In Lecture Notes in Computer Science, Proceedings of the Advances in Cryptology—CRYPTO 2001, 21st Annual International Cryptology Conference, Santa Barbara, CA, USA, 19–23 August 2001; Kilian, J., Ed.; Springer: Berlin/Heidelberg, Germany, 2001; Volume 2139, pp. 524–541. [Google Scholar] [CrossRef] [Green Version]
  21. Duan, S.; Reiter, M.K.; Zhang, H. BEAT: Asynchronous BFT Made Practical. In Proceedings of the 2018 ACM SIGSAC Conference on Computer and Communications Security, CCS 2018, Toronto, ON, Canada, 15–19 October 2018; Lie, D., Mannan, M., Backes, M., Wang, X., Eds.; ACM: New York, NY, USA, 2018; pp. 2028–2041. [Google Scholar] [CrossRef]
  22. Kursawe, K.; Shoup, V. Optimistic Asynchronous Atomic Broadcast. In Lecture Notes in Computer Science, Proceedings of the Automata, Languages and Programming, 32nd International Colloquium, ICALP 2005, Lisbon, Portugal, 11–15 July 2005; Caires, L., Italiano, G.F., Monteiro, L., Palamidessi, C., Yung, M., Eds.; Springer: Berlin/Heidelberg, Germany, 2005; Volume 3580, pp. 204–215. [Google Scholar] [CrossRef]
  23. Cachin, C.; Kursawe, K.; Petzold, F.; Shoup, V. Secure and Efficient Asynchronous Broadcast Protocols. In Proceedings of the Annual International Cryptology Conference, Santa Barbara, CA, USA, 19–23 August 2001; p. 6. [Google Scholar]
  24. Wang, Y. The Adversary Capabilities in Practical Byzantine Fault Tolerance. In Lecture Notes in Computer Science, Proceedings of the Security and Trust Management—17th International Workshop, STM 2021, Darmstadt, Germany, 8 October 2021; Roman, R., Zhou, J., Eds.; Springer: Berlin/Heidelberg, Germany, 2021; Volume 13075, pp. 20–39. [Google Scholar] [CrossRef]
  25. Ben-Or, M.; Kelmer, B.; Rabin, T. Asynchronous Secure Computations with Optimal Resilience (Extended Abstract). In Proceedings of the Thirteenth Annual ACM Symposium on Principles of Distributed Computing, Los Angeles, CA, USA, 14–17 August 1994; Anderson, J.H., Peleg, D., Borowsky, E., Eds.; ACM: New York, NY, USA, 1994; pp. 183–192. [Google Scholar] [CrossRef]
  26. Ramasamy, H.V.; Cachin, C. Parsimonious Asynchronous Byzantine-Fault-Tolerant Atomic Broadcast. In Proceedings of the International Conference on Principles of Distributed Systems, Bordeaux, France, 12–15 December 2006; p. 82. [Google Scholar]
  27. Cachin, C.; Tessaro, S. Asynchronous Verifiable Information Dispersal. In Lecture Notes in Computer Science, Proceedings of the Distributed Computing, 19th International Conference, DISC 2005, Cracow, Poland, 26–29 September 2005; Fraigniaud, P., Ed.; Springer: Berlin/Heidelberg, Germany, 2005; Volume 3724, pp. 503–504. [Google Scholar] [CrossRef]
  28. Rabin, M.O. Efficient dispersal of information for security, load balancing, and fault tolerance. J. ACM 1989, 36, 335–348. [Google Scholar] [CrossRef]
  29. Choudhury, A. Brief Announcement: Almost-surely Terminating Asynchronous Byzantine Agreement Protocols with a Constant Expected Running Time. In Proceedings of the PODC’20: ACM Symposium on Principles of Distributed Computing, Virtual, 3–7 August 2020; Emek, Y., Cachin, C., Eds.; ACM: New York, NY, USA, 2020; pp. 169–171. [Google Scholar] [CrossRef]
  30. Kuo, R.; Zheng, Y.R.; Quyen, N.T.P. Metaheuristic-based possibilistic fuzzy K-Modes Algorithms Categ. Data Clust. Inf. Sci. 2021, 557, 1–15. [Google Scholar] [CrossRef]
  31. Kashani, M.; Arashi, M.; Rabiei, M.R.; D’Urso, P.; Giovanni, L.D. A fuzzy penalized regression model with variable selection. Expert Syst. Appl. 2021, 175, 114696. [Google Scholar] [CrossRef]
  32. Chen, K.; Chang, T. Fuzzy testing model for the lifetime performance of products under consideration with exponential distribution. Ann. Oper. Res. 2022, 312, 87–98. [Google Scholar] [CrossRef]
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Article Metrics

Citations

Article Access Statistics

Multiple requests from the same IP address are counted as one view.