Abstract

AbstractAs the foundation of a blockchain, consensus algorithm significantly affects the blockchain system’s performance. To a consortium blockchain, Practical Byzantine Fault Tolerance (PBFT) has been widely believed as a good candidate consensus due to its many advantages. However, PBFT is not particularly designed for a consortium blockchain. Thus, there is still a large improvement space to implement the PBFT algorithm in a sharded blockchain. Based on network sharding, we aim to address the problems incurred by the traditional PBFT algorithm. Because when there are large number of nodes in a P2P network, PBFT can lead to a significant performance degradation. Even worse, Byzantine nodes cannot be found timely in a large-scale blockchain network where the PBFT algorithm is adopted. In this paper, we propose an adapted version of BFT consensus for the sharded blockchain. The proposed cross-shard BFT consensus mainly consists of a two-phase consensus mechanism after performing network sharding. In the first phase, Raft consensus is first adopted within each shard, in which a leader is elected. In the second phase, those leaders from all shards form a committee and perform a committee-wise PBFT consensus. Through introducing anchor nodes within each shard, the security of the proposed two-phase consensus is guaranteed. We analyze the security of the cross-shard BFT consensus based on a committee-wise monitoring framework. Through simulations, we find out that the proposed cross-shard BFT consensus yields a higher throughput, lower latency than the original PBFT. The fault-tolerance ability of the proposed consensus is around 1.5\(\times \) to 2\(\times \) of PBFT.KeywordsBlockchainConsensus algorithmPractical byzantine fault toleranceNetwork sharding

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call