Computer Science ›› 2023, Vol. 50 ›› Issue (6A): 220300064-6.doi: 10.11896/jsjkx.220300064

• Information Security • Previous Articles     Next Articles

Practical Byzantine Consensus Algorithm Based on Verifiable Random Functions

HUANG Baohua, PENG Li, ZHAO Weihong, CHEN Ningjiang   

  1. School of Computer and Electronic Information,Guangxi University,Nanning 530004,China
  • Online:2023-06-10 Published:2023-06-12
  • About author:HUANG Baohua,born in 1973,Ph.D,associate professor,postgraduate supervisor,is a senior member of China Computer Federation.His main research interests include database security,vehi-cular ad hoc network security,blockchain,etc.
  • Supported by:
    National Natural Science Foundation of China(61962005) and National Key Research and Development Program of China(2018YFB1404404).

Abstract: To solve the problems of fixed primary node selection method and high communication cost of the practical Byzantine fault tolerance consensus algorithm widely used in alliance chain,this paper proposes a selective Byzantine fault tolerance consensus algorithm named SBFT based on verifiable random function.The first proposal is to dynamically calculate node contribution value by evaluating the node behavior after each round of consensus,and select the nodes participating in consensus based on the node contribution value.Next,a combination of node contribution value and verifiable random function is used for random selection of primary nodes by cryptographic sortation,which makes the selected primary node unpredictable while reducing the probability of non-honest nodes becoming primary node.Finally,the consistency protocol of PBFT is improved by changing the mesh communication network topology of PBFT into a star communication network topology and incorporating the view replacement process into the normal consensus process.Simulation experimental results show that the proposed SBFT algorithm has higher throughput,lower consensus latency and higher algorithmic efficiency compared with the PBFT algorithm.

Key words: Blockchain, Consensus algorithm, PBFT, Verifiable random function, Contribution value of nodes

CLC Number: 

  • TP391
[1]PEASE M,SHOSTAK R,LAMPORT L.Reaching agreement in the presence of faults[J].Journal of the ACM(JACM),1980,27(2):228-234.
[2]LAMPORT L,SHOSTAK R,PEASE M.The Byzantine gene-rals problem[J].ACM Transactions on Prograomming and System,1982,4(3):382-401.
[3]LAMPORT L.The Part-Time Parliament[J].ACM Transac-tions on Computer Systems,1998,16(2):133-169.
[4]DIEGO O,JOHN O.In search of an understandable consensus algorithm[C]//Proceedings of the 2014 USENIX Annual Technical Conference(USENIX ATC 2014).2014:305-319.
[5]CASTRO M,LISKOV B.Practical Byzantine Fault Tolerance[C]//Proceedings of the Third Symposium on Operating Systems Design and Implementation.1999:1-14.
[6]NAKAMOTO S.Bitcoin:A peer-to-peer electronic cash system[EB/OL].[2020-06-10].https://bitcoin.org/bitcoin.pdf.
[7]KING S,NADAL S.PPCoin:Peer-to-Peer Crypto-Currencywith Proof-of-Stake[EB/OL].[2020-04-10].https://www.researchgate.net/publication/265116876_PPCoin_Peer-to-Peer_Crypto-Currency_with_Proof-of-Stake.
[8]SCHUH F,LARIMER D.Bitshares 2.0:Financial smart con-tract platform[EB/OL].[2020-04-10].https://www.weusecoins.com/assets/pdf/library/Bitshares%20Financial%20Plat-form.pdf.
[9]LI W,FENG C,ZHANG L,et al.A Scalable Multi-Layer PBFT Consensus for Blockchain[J].IEEE Transactions on Parallel and Distributed Systems,2021,32(5):1146-1160.
[10]LI Y,QIAO L,LV Z.An optimized byzantine fault tolerance algorithm for consortium blockchain[J].Peer-to-Peer Networking and Applications,2021,14(5):2826-2839.
[11]CHEN Z H,LI Q.Improved PBFT Consensus Mechanism based on K-medoids[J].Computer Science,2019,46(12):101-107.
[12]ABRAHAM I,GUETA G,MALKHI D.Hot-stuff the linear,optimal-resilience,one-message BFT devil[J].arXiv:1803.05069,2018.
[13]GUETA G G,ABRAHAM I,GROSSMAN S,et al.SBFT:A Scalable and Decentralized Trust Infrastructure[C]//2019 49th Annual IEEE/IFIP International Conference on Dependable Systems and Networks(DSN).2019:568-580.
[14]SCHWARTZ D,YOUNGS N,BRITTO A.The Ripple Protocol Consensus Algorithm[EB/OL].[2020-06-10].https://ripple.com/files/ripple_consensus_whitepaper.pdf.
[15]SHENG GAO T Y.T-PBFT An EigenTrust-based practical Byzantine fault tolerance consensus algorithm[J].China Communications,2019,16(12);111-123.
[16]TONG W,DONG X,ZHENG J.Trust-PBFT:A PeerTrust-Based Practical Byzantine Consensus Algorithm[C]//2019 International Conference on Networking and Network Applications(NaNA).2019:344-349.
[17]MICALI S,RABIN M,VADHAN S.Verifiable random func-tions[C]//Proceedings of the 40th Annual Symposium on Foundations of Computer Science.1999:120-130.
[18]LEUNG D,SUHL A,GILAD Y,et al.Vault:Fast Bootstrapping for the Algorand Cryptocurrency[C]//Proceedings of the Network and Distributed Systems Security(NDSS) Symposium.2019:1-15.
[19]GILAD Y,HEMO R,MICALI S,et al.Algorand:Scaling Byzantine Agreements for Cryptocurrencies[C]//Proceedings of the Twenty-Sixth ACM Symposium on Operating Systems Principles.2017:51-68.
[20]Ontology Project.Consenses mechanism[EB/OL].[2020-06-14].https://docs.ont.io/ontology-elements/consensus-mechanism.
[21]WU Y,SONG P,WANG F.Hybrid Consensus Algorithm Optimization:A Mathematical Method Based on POS and PBFT and Its Application in Blockchain[J].Mathematical Problems in Engineering,2020,2020:7270624.
[22]ZHAN Y,WANG B,LU R,et al.DRBFT:Delegated randomization Byzantine fault tolerance consensus protocol for blockchains[J].Information Sciences,2021,559:8-21.
[23]HANKE T,MOVAHEDI M,WILLIAMS D.DFINITY Technology Overview Series,Consensus System[J].arXiv:1805.04548,2018.
[24]KWON J.Tendermint:Consensus without mining[EB/OL].[2020-06-14].https://tendermint.com/static/docs/tendermint.pdf.
[1] WANG Junlu, LIU Qiang, ZHANG Ran, JI Wanting, SONG Baoyan. Blockchain-based Dual-branch Structure Expansion Model [J]. Computer Science, 2023, 50(8): 365-371.
[2] YANG Jian, WANG Kaixuan. Tripartite Evolutionary Game Analysis of Medical Data Sharing Under Blockchain Architecture [J]. Computer Science, 2023, 50(6A): 221000080-7.
[3] TAN Pengliu, WANG Runshu, ZENG Wenhao, WANG Shikun, ZOU Wenshi. Overview of Blockchain Consensus Algorithms [J]. Computer Science, 2023, 50(6A): 220400200-12.
[4] TU Jun, JIA Dongli, WANG Jin. Byzantine Fault Tolerant Consensus Algorithm Based on Traceable Ring Signature [J]. Computer Science, 2023, 50(6A): 220300100-7.
[5] LIN Feilong, YUE Yuedong, ZHENG Jianhui, CHEN Zhongyu, LI Minglu. Blockchain-based Identity Authentication and Authorization Mechanism [J]. Computer Science, 2023, 50(6A): 220700158-9.
[6] PAN Lu, LUO Tao, NIU Xinzheng. Restart and Recovery Algorithm Based on Distributed Cluster Nodes [J]. Computer Science, 2023, 50(6A): 220300205-6.
[7] XIAO Jian, YANG Min. Multi-factor Blockchain Private Key Protection Scheme Based on Secret Sharing [J]. Computer Science, 2023, 50(6): 307-312.
[8] LIU Wei, GUO Lingbei, XIA Yujie, SHE Wei, TIAN Zhao. Raft Consensus Algorithm Based on Credit Evaluation Model [J]. Computer Science, 2023, 50(6): 322-329.
[9] ZHANG Shue, TIAN Chengwei, LI Baogang. Review of Identity Authentication Research Based on Blockchain Technology [J]. Computer Science, 2023, 50(5): 329-347.
[10] LIU Zerun, ZHENG Hong, QIU Junjie. Smart Contract Vulnerability Detection Based on Abstract Syntax Tree Pruning [J]. Computer Science, 2023, 50(4): 317-322.
[11] LI Bei, WU Hao, HE Xiaowei, WANG Bin, XU Ergang. Survey of Storage Scalability in Blockchain Systems [J]. Computer Science, 2023, 50(1): 318-333.
[12] CHEN Yan, LIN Bing, CHEN Xiaona, CHEN Xing. Blockchain-based Trusted Service-oriented Architecture [J]. Computer Science, 2023, 50(1): 342-350.
[13] WANG Zi-kai, ZHU Jian, ZHANG Bo-jun, HU Kai. Research and Implementation of Parallel Method in Blockchain and Smart Contract [J]. Computer Science, 2022, 49(9): 312-317.
[14] LI Bo, XIANG Hai-yun, ZHANG Yu-xiang, LIAO Hao-de. Application Research of PBFT Optimization Algorithm for Food Traceability Scenarios [J]. Computer Science, 2022, 49(6A): 723-728.
[15] ZHOU Hang, JIANG He, ZHAO Yan, XIE Xiang-peng. Study on Optimal Scheduling of Power Blockchain System for Consensus Transaction ofEach Unit [J]. Computer Science, 2022, 49(6A): 771-776.
Viewed
Full text


Abstract

Cited

  Shared   
  Discussed   
No Suggested Reading articles found!