2020Journal of Cyber SecurityOpen access

Excellent Practical Byzantine Fault Tolerance

Huanrong Tang, Yaojing Sun, Jianquan Ouyang

Open full text 9 citations

Abstract

With the rapid development of blockchain technology, more and more people are paying attention to the consensus mechanism of blockchain. Practical Byzantine Fault Tolerance (PBFT), as the first efficient consensus algorithm solving the Byzantine Generals Problem, plays an important role. But PBFT also has its problems. First, it runs in a completely closed environment, and any node can't join or exit without rebooting the system. Second, the communication complexity in the network is as high as O(n2), which makes the algorithm only applicable to small-scale networks. For these problems, this paper proposes an Optimized consensus algorithm, Excellent Practical Byzantine Fault Tolerance (EPBFT), in which nodes can dynamically participate in the network by combining a view change protocol with a node's add or quit request. Besides, in each round of consensus, the algorithm will randomly select a coordination node. Through the cooperation of the primary and the coordination node, we reduce the network communication complexity to O(n). Besides, we have added a reputation credit mechanism and a wrong node removal protocol to the algorithm for clearing the faulty nodes in time and improving the robustness of the system. Finally, we design experiments to compare the performance of the PBFT and EPBFT algorithms. Through experimental, we found that compared with the PBFT algorithm, the EPBFT algorithm has a lower delay, communication complexity, better scalability, and more practical.

About this research paper

What this paper is about

With the rapid development of blockchain technology, more and more people are paying attention to the consensus mechanism of blockchain. Practical Byzantine Fault Tolerance (PBFT), as the first efficient consensus algorithm solving the Byzantine Generals Problem, plays an important role. But PBFT also has its problems. First, it runs in a completely closed environment, and any node can't join or exit without rebooting the system. Second, the communication complexity in the network is as high as O(n2), which makes the algorithm only applicable to small-scale networks. For these problems, this paper proposes an Optimized consensus algorithm, Excellent Practical Byzantine Fault Tolerance (EPBFT), in which nodes can dynamically participate in the network by combining a view change protocol with a node's add or quit request. Besides, in each round of consensus, the algorithm will randomly select a coordination node. Through the cooperation of the primary and the coordination node, we reduce the network communication complexity to O(n). Besides, we have added a reputation credit mechanism and a wrong node removal protocol to the algorithm for clearing the faulty nodes in time and improving the robustness of the system. Finally, we design experiments to compare the performance of the PBFT and EPBFT algorithms. Through experimental, we found that compared with the PBFT algorithm, the EPBFT algorithm has a lower delay, communication complexity, better scalability, and more practical.

Why it matters

OpenAlex reports 9 citations for this work. Citation counts describe recorded attention and do not establish research quality.

Key contribution

A contribution statement is not available in the OpenAlex record.

Method / approach

Method details are not available in the OpenAlex metadata.

Main findings

Findings are not separately available in the OpenAlex metadata.

Limitations

Limitations are not available in the OpenAlex metadata.

Applications

Application details are not available in the OpenAlex metadata.

Available abstract

With the rapid development of blockchain technology, more and more people are paying attention to the consensus mechanism of blockchain. Practical Byzantine Fault Tolerance (PBFT), as the first efficient consensus algorithm solving the Byzantine Generals Problem, plays an important role. But PBFT also has its problems. First, it runs in a completely closed environment, and any node can't join or exit without rebooting the system. Second, the communication complexity in the network is as high as O(n2), which makes the algorithm only applicable to small-scale networks. For these problems, this paper proposes an Optimized consensus algorithm, Excellent Practical Byzantine Fault Tolerance (EPBFT), in which nodes can dynamically participate in the network by combining a view change protocol with a node's add or quit request. Besides, in each round of consensus, the algorithm will randomly select a coordination node. Through the cooperation of the primary and the coordination node, we reduce the network communication complexity to O(n). Besides, we have added a reputation credit mechanism and a wrong node removal protocol to the algorithm for clearing the faulty nodes in time and improving the robustness of the system. Finally, we design experiments to compare the performance of the PBFT and EPBFT algorithms. Through experimental, we found that compared with the PBFT algorithm, the EPBFT algorithm has a lower delay, communication complexity, better scalability, and more practical.

Key concepts: Byzantine fault tolerance, Computer science, Scalability, Quantum Byzantine agreement, Distributed computing, Fault tolerance, Node (physics), Robustness (evolution)

Related papers

Back to paper searchBrowse research topicsOriginal source
Excellent Practical Byzantine Fault Tolerance — Research Paper | ScholarLens