计算机科学 ›› 2021, Vol. 48 ›› Issue (2): 303-310.doi: 10.11896/jsjkx.200500112
季钰翔1, 黄建华1, 王喆1, 郑红1, 唐瑞琮2
JI Yu-xiang1, HUANG Jian-hua1, WANG Zhe1, ZHENG Hong1, TANG Rui-cong2
摘要: 共识算法是去中心化的区块链系统实现数据状态一致的关键。针对传统的实用拜占庭容错(Practical Byzantine Fault Tolerance,PBFT)共识算法在可扩展性和安全性方面存在的不足,提出一种基于信任度的匹配拜占庭共识算法 (Trust-based Matching Byzantine Fault Tolerance,TMBFT)。首先,通过基于信任度的邻居匹配模型来选取部分节点进行投票共识,以降低区块链网络的通信量;其次,引入信任度评价机制来监督邻居节点的行为,确保有效检测出拜占庭节点,保证节点投票的安全性;最后,设计投票计数机制保证了共识结果的一致性,并提高了共识效率。与PBFT相比,TMBFT将通信复杂度从O(N2)降到O(Nlog2N),有效降低了网络中的通信开销。安全性分析表明,信任度评价机制可降低节点作恶的概率,并有效提高系统安全性。实验结果表明,TMBFT较传统拜占庭算法具有更好的性能优势。
中图分类号:
[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 |
|