计算机科学 ›› 2021, Vol. 48 ›› Issue (2): 303-310.doi: 10.11896/jsjkx.200500112

• 信息安全 • 上一篇    下一篇

基于信任度匹配的改进PBFT共识算法

季钰翔1, 黄建华1, 王喆1, 郑红1, 唐瑞琮2   

  1. 1 华东理工大学信息科学与工程学院 上海200237
    2 香港DAEX区块链有限公司 上海200120
  • 收稿日期:2020-05-22 修回日期:2020-10-05 出版日期:2021-02-15 发布日期:2021-02-04
  • 通讯作者: 黄建华(jhhuang@ecust.edu.cn)
  • 作者简介:lygjyx@sina.com
  • 基金资助:
    国家自然科学基金(61472139)

Improved PBFT Consensus Algorithm Based on Trust Matching

JI Yu-xiang1, HUANG Jian-hua1, WANG Zhe1, ZHENG Hong1, TANG Rui-cong2   

  1. 1 School of Information Science & Engineering,East China University of Science & Technology,Shanghai 200237,China
    2 Hong Kong DAEX Blockchain Limited,Shanghai 200120,China
  • Received:2020-05-22 Revised:2020-10-05 Online:2021-02-15 Published:2021-02-04
  • About author:JI Yu-xiang,born in 1996,postgra-duate.His main research interests include blockchain and so on.
    HUANG Jian-hua,born in 1963,Ph.D,professor,is a member of China Computer Federation.His main research interests include computer network,information security and blockchain.
  • Supported by:
    The National Natural Science Foundation of China(61472139).

摘要: 共识算法是去中心化的区块链系统实现数据状态一致的关键。针对传统的实用拜占庭容错(Practical Byzantine Fault Tolerance,PBFT)共识算法在可扩展性和安全性方面存在的不足,提出一种基于信任度的匹配拜占庭共识算法 (Trust-based Matching Byzantine Fault Tolerance,TMBFT)。首先,通过基于信任度的邻居匹配模型来选取部分节点进行投票共识,以降低区块链网络的通信量;其次,引入信任度评价机制来监督邻居节点的行为,确保有效检测出拜占庭节点,保证节点投票的安全性;最后,设计投票计数机制保证了共识结果的一致性,并提高了共识效率。与PBFT相比,TMBFT将通信复杂度从O(N2)降到O(Nlog2N),有效降低了网络中的通信开销。安全性分析表明,信任度评价机制可降低节点作恶的概率,并有效提高系统安全性。实验结果表明,TMBFT较传统拜占庭算法具有更好的性能优势。

关键词: 拜占庭容错, 共识算法, 邻居匹配, 区块链, 投票计数, 信任度

Abstract: Consensus algorithm is the key to realize data consistency in decentralized blockchain systems.Aiming at the scalability and security problems of Practical Byzantine Fault Tolerance (PBFT),a Trust-based Matching Byzantine Fault Tolerance (TMBFT) algorithm is proposed.Firstly,the trust-based neighbor matching model is used to select some nodes for voting consensus,so as to reduce the traffic of the blockchain network.Secondly,a trust evaluation mechanism is introduced to supervise the behavior of neighbor nodes,to ensure the effective detection of Byzantine nodes and the security of node voting.Finally,a vote counting mechanism is designed to ensure the consistency of consensus results and improve the efficiency of consensus.Compared with PBFT,TMBFT reduces the communication complexity from O(N2) to O(Nlog2N),and effectively reduces the communication overhead in the network.Security analysis shows that the trust evaluation mechanism reduces the probability of malicious voting and improves the system security effectively.Experimental results show that TMBFT has better performance than the traditional Byzantine algorithm.

Key words: Blockchain, Byzantine fault tolerance, Consensus algorithm, Neighbor matching, Trust, Vote counting

中图分类号: 

  • TP393
[1] NAKAMOTO S.Bitcoin:A Peer-to-Peer Electronic Cash System[EB/OL].http://bitcoin.org/bitcoin.pdf.
[2] CHEN W L,ZHENG Z B.Blockchain Data Analysis:A Review of Status,Trends and Challenges[J].Journal of Computer Research and Development,2018,55(9):1853-1870.
[3] NOVO O.Blockchain Meets IoT:An Architecture for Scalable Access Management in IoT[J].IEEE Internet of Things Journal,2018,5(2):1184-1195.
[4] CASTRO M,LISKOV B.Practical Byzantine Fault Tolerance[C]//Proceedings of the Third Symposium on Operating Systems Design and Implementation (OSDI).New Orleans,USA,1999.
[5] FAN J,YI L T,SHU J W.Research on the Technologies of Byzantine System[J].Journal of Software,2013,24(6):1346-1360.
[6] GIULIA F,NINA H,YUVAL P,et al.Communication Cost of Consensus for Nodes with Limited Memory[EB/OL].https:∥arxiv.org/pdf/1901.01665.pdf.
[7] KING S,NADAL S.PPCoin:Peer-to-Peer Crypto-Currencywith Proof-of-Stake[EB/OL].https:∥www.semanticscholar.org/paper/PPCoin%3A-Peer-to-Peer-Crypto-Currency-with-King-Nadal/0db38d32069f3341d34c35085dc009a85ba13c13.
[8] DEIRMENTZOGLOU E,PAPAKYRIAKOPOULOS G,PAT-SAKIS C.A Survey on Long-Range Attacks for Proof of Stake Protocols[J].IEEE Access,2019,7:28712-28725.
[9] LUO Y,CHEN Y,CHEN Q,et al.A New Election Algorithm for DPos Consensus Mechanism in Blockchain[C]//2018 the 7th International Conference on DigitalHome (ICDH).IEEE,2018:116-120.
[10] GILAD Y,HEMO R,MICALI S,et al.Algorand:Scaling Byzantine Agreements for Cryptocurrencies[C]//Proceedings of the 26th Symposium on Operating Systems Principles.New York:ACM,2017:51-68.
[11] MICALI S,RABIN M,VADHAN S.Verifiable Random Functions[C]//40th Annual Symposium on Foundations of Compu-ter Science.New York:IEEE,1999.
[12] KIAYIAS A,RUSSELL A,DAVID B,et al.Ouroboros:A Pro-vably Secure Proof-of-Stake Blockchain Protocol[C]//Annual International Cryptology Conference.Springer,Cham,2017:357-388.
[13] CRAIN T,GRAMOLI V,LARREA M,et al.DBFT:Efficient Leaderless Byzantine Consensus and its Application to Blockchains[C]//2018 IEEE 17th International Symposium on Network Computing and Applications (NCA).IEEE,2018.
[14] KWON J.Tendermint:Consensus without Mining [EB/OL].https://tendermint.com/static/docs/tendermint.pdf.
[15] KOTLA R.Zyzzyva:Speculative Byzantine Fault Tolerance[C]//ACM Sigops Symposium on Operating Systems Principles.ACM,2007:45-48.
[16] ROCKET T,YIN M,SEKNIQI K,et al.Scalable and Probabilistic Leaderless BFT Consensus through Metastability[EB/OL].https://arxiv.org/pdf/1906.08936.pdf.
[17] COORDICIDE T,IOTA F.The Coordicide [EB/OL].https:∥files.iota.org/papers/Coordicide_WP.pdf.
[18] POPOV S,BUCHANAN W J.FPC-BI:Fast Probabilistic Con-sensus within Byzantine Infrastructures[EB/OL].https:∥arxiv.org/pdf/1905.10895.pdf.
[19] 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).Daegu:IEEE,2019.
[20] GAO S.T-PBFT:An EigenTrust-Based Practical ByzantineFault Tolerance Consensus Algorithm[J].China Communications,2019,16(12):111-123.
[21] DU M,CHEN Q,MA X.MBFT:A New Consensus Algorithm for Consortium Blockchain[J].IEEE Access,2020,8:87665-87675.
[22] OROSTICA B,NUNEZ F.Robust Gossiping for DistributedAverage Consensus in IoT Environments[J].IEEE Access,2019,7:994-1005.
[23] WU D Y,LI Q,YU X,et al.Trust Model for P2P Based onBlockchain[J].Computer Science,2019,46(12):138-147.
[1] 王子凯, 朱健, 张伯钧, 胡凯.
区块链与智能合约并行方法研究与实现
Research and Implementation of Parallel Method in Blockchain and Smart Contract
计算机科学, 2022, 49(9): 312-317. https://doi.org/10.11896/jsjkx.210800102
[2] 周航, 姜河, 赵琰, 解相朋.
适用于各单元共识交易的电力区块链系统优化调度研究
Study on Optimal Scheduling of Power Blockchain System for Consensus Transaction ofEach Unit
计算机科学, 2022, 49(6A): 771-776. https://doi.org/10.11896/jsjkx.210600241
[3] 蔡晓娟, 谭文安.
一种改进的融合相似度和信任度的协同过滤算法
Improved Collaborative Filtering Algorithm Combining Similarity and Trust
计算机科学, 2022, 49(6A): 238-241. https://doi.org/10.11896/jsjkx.210400088
[4] 陈彦冰, 钟超然, 周超然, 薛凌妍, 黄海平.
基于医疗联盟链的跨域认证方案设计
Design of Cross-domain Authentication Scheme Based on Medical Consortium Chain
计算机科学, 2022, 49(6A): 537-543. https://doi.org/10.11896/jsjkx.220200139
[5] 李博, 向海昀, 张宇翔, 廖浩德.
面向食品溯源场景的PBFT优化算法应用研究
Application Research of PBFT Optimization Algorithm for Food Traceability Scenarios
计算机科学, 2022, 49(6A): 723-728. https://doi.org/10.11896/jsjkx.210800018
[6] 傅丽玉, 陆歌皓, 吴义明, 罗娅玲.
区块链技术的研究及其发展综述
Overview of Research and Development of Blockchain Technology
计算机科学, 2022, 49(6A): 447-461. https://doi.org/10.11896/jsjkx.210600214
[7] 高健博, 张家硕, 李青山, 陈钟.
RegLang:一种面向监管的智能合约编程语言
RegLang:A Smart Contract Programming Language for Regulation
计算机科学, 2022, 49(6A): 462-468. https://doi.org/10.11896/jsjkx.210700016
[8] 毛典辉, 黄晖煜, 赵爽.
符合监管合规性的自动合成新闻检测方法研究
Study on Automatic Synthetic News Detection Method Complying with Regulatory Compliance
计算机科学, 2022, 49(6A): 523-530. https://doi.org/10.11896/jsjkx.210300083
[9] 王思明, 谭北海, 余荣.
面向6G可信可靠智能的区块链分片与激励机制
Blockchain Sharding and Incentive Mechanism for 6G Dependable Intelligence
计算机科学, 2022, 49(6): 32-38. https://doi.org/10.11896/jsjkx.220400004
[10] 孙浩, 毛瀚宇, 张岩峰, 于戈, 徐石成, 何光宇.
区块链跨链技术发展及应用
Development and Application of Blockchain Cross-chain Technology
计算机科学, 2022, 49(5): 287-295. https://doi.org/10.11896/jsjkx.210800132
[11] 阳真, 黄松, 郑长友.
基于区块链与改进CP-ABE的众测知识产权保护技术研究
Study on Crowdsourced Testing Intellectual Property Protection Technology Based on Blockchain and Improved CP-ABE
计算机科学, 2022, 49(5): 325-332. https://doi.org/10.11896/jsjkx.210900075
[12] 任畅, 赵洪, 蒋华.
一种量子安全拜占庭容错共识机制
Quantum Secured-Byzantine Fault Tolerance Blockchain Consensus Mechanism
计算机科学, 2022, 49(5): 333-340. https://doi.org/10.11896/jsjkx.210400154
[13] 冯了了, 丁滟, 刘坤林, 马科林, 常俊胜.
区块链BFT共识算法研究进展
Research Advance on BFT Consensus Algorithms
计算机科学, 2022, 49(4): 329-339. https://doi.org/10.11896/jsjkx.210700011
[14] 王鑫, 周泽宝, 余芸, 陈禹旭, 任昊文, 蒋一波, 孙凌云.
一种面向电能量数据的联邦学习可靠性激励机制
Reliable Incentive Mechanism for Federated Learning of Electric Metering Data
计算机科学, 2022, 49(3): 31-38. https://doi.org/10.11896/jsjkx.210700195
[15] 张潆藜, 马佳利, 刘子昂, 刘新, 周睿.
以太坊Solidity智能合约漏洞检测方法综述
Overview of Vulnerability Detection Methods for Ethereum Solidity Smart Contracts
计算机科学, 2022, 49(3): 52-61. https://doi.org/10.11896/jsjkx.210700004
Viewed
Full text


Abstract

Cited

  Shared   
  Discussed   
No Suggested Reading articles found!