计算机科学 ›› 2022, Vol. 49 ›› Issue (11): 360-367.doi: 10.11896/jsjkx.210900178
• 信息安全 • 上一篇
谢卓, 张志鸿, 李磊, 冯英杰, 陈静
XIE Zhuo, ZHANG Zhi-hong, LI Lei, FENG Ying-jie, CHEN Jing
摘要: 作为一种新兴技术,区块链从诞生之初就引起了广泛的关注。共识算法是区块链技术的核心技术之一,共识算法的研究也是区块链发展的重中之重。针对广泛应用于联盟链的实用拜占庭容错算法(PBFT)存在的主节点选取随意以及节点无法动态加入、退出的问题,提出了一种动态的PBFT算法——DPBFT。首先,对PBFT的主节点选取方法进行改进,为每个节点设置信任度积分,根据节点在每轮共识中的行为动态更新信任度积分,依据积分值来选取主节点,提高了诚实节点当选主节点的概率。其次,为PBFT算法设置4个子协议(JOIN,EXIT,PCLEAR,RCLEAR),分别解决节点加入、退出的问题以及对作恶节点做出惩罚,使得系统拥有动态的网络结构。结果证明新加入的4个子协议本身具有良好的安全性和活性,且不影响原始PBFT算法的安全性和活性。最后,实验结果表明,DPBFT算法相比传统PBFT算法具有更好的共识效率。
中图分类号:
[1]NAKAMOTO S.Bitcoin:a peer-to-peer electronic cash system.[EB/OL].https://bitcoin.org//bitcoin.pdf. [2]CAI X Q,DENG Y,ZHANG L,et al.The Principle and Core Technology of Blockchain [J].Chinese Journal of Computers,2021,44(1):84-131. [3]HUANG D Y,LI L,CHEN B,et al.RBFT:a new Byzantine fault-tolerant consensus mechanism based on Raft cluster [J].Journal of Communications,2021,42(3):209-219. [4]ZHANG P Y,SONG J.Research Advance on Efficiency Optimization of Blockchain Consensus Algorithms[J].Computer Science,2020,47(12):296-303. [5]XIA Q,DOU W S,GUO K W,et al.Survey on Blockchain Consensus Protocol [J].Journal of Software,2021,32(2):277-299. [6]KING S,NADAL S.PPCoin:Peer-to-Peer Crypto-Currencywith Proof-of-Stake[J/OL].http://inpluslab.sysu.edu.cn/files/blockchain/proof_of_stake.pdf. [7]HERLIHY M P,WING J M.Linearizability:A correctness condition for concurrent objects [J].ACM Transactions on Programming Languages and Systems(TOPLAS),1990,12(3):463-492. [8]CASTRO M,LISKOV B.Practical Byzantine fault tolerance[J].Operating Systems Review,2002,20(4):398-461. [9]ZHAN Y,WANG B C,LU R X,et al.DRBFT:Delegated randomization Byzantine fault tolerance consensus protocol for blockchains [J].Information Sciences,2021,559:8-21. [10]YU G,WU B,NIU X X.Improved Blockchain Consensus Mecha-nism Based on PBFT Algorithm[C]//2nd International Conference on Advances in Computer Technology,Information Science and Communications(CTISC 2020).2020:14-21. [11]LI W Y,FENG C L,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. [12]JALALZAI M M,BUSCH C.Window Based BFT Blockchain Consensus[C]//11th IEEE International Congress on Confe-rences on Internet of Things,14th IEEE International Confe-rence on Green Computing and Communications,11th IEEE International Conference on Cyber,Physical and Social Computing,4th IEEE International Conference on Smart Data,1st IEEE International Conference on Blockchain and 18th IEEE International Conference on Computer and Information Techno-logy,iThings/GreenCom/CPSCom/SmartData/Blockchain(CIT 2018).2018:971-979. [13]WANG F L,JI Y P,LIU M S,et al.An Optimization Strategy for PBFT Consensus Mechanism Based on Consortium Blockchain[C]//3rd ACM International Symposium on Blockchain and Secure Critical Infrastructure(BSCI 2021).2021:71-76. [14]DU N,LIANG Z,HUANG Y,et al.Performance optimisation Method of PBFT Consensus for Supply Chain Integration SVM[C]//2020 7th International Conference on Dependable Systems and Their Applications(DSA).2020:371-377. [15]LI Y,WANG Z,FAN J,et al.An Extensible Consensus Algorithm Based on PBFT[C]//2019 International Conference on Cyber-Enabled Distributed Computing and Knowledge Discovery(CyberC).2019:17-23. [16]FANG Y,DENG J Q,CONG L H,et al.An Improved Scheme for PBFT Blockchain Consensus Algorithm Based on Raing Signature [J].Computer Engineering,2019,45(11):32-36. [17]XU X L,ZHU D W,YANG X X,et al.Concurrent Practical Byzantine Fault Tolerance for Integration of Blockchain and Supply Chain [J].ACM Transactions on Internet Technology,2021,21(1):1-17. [18]HAO X,YU L,ZHI Q L,et al.Dynamic Practical ByzantineFault Tolerance[C]//2018 IEEE Conference on Communications and Network Security(CNS).2018:1-8. [19]FOX A,BREWER E.A Harvest,yield,and scalable tolerantsystems[C]//Proceedings of the Seventh Workshop on Hot Topics in Operating Systems.1999:174-178. |
[1] | 蔡晓娟, 谭文安. 一种改进的融合相似度和信任度的协同过滤算法 Improved Collaborative Filtering Algorithm Combining Similarity and Trust 计算机科学, 2022, 49(6A): 238-241. https://doi.org/10.11896/jsjkx.210400088 |
[2] | 袁昊男, 王瑞锦, 郑博文, 吴邦彦. 基于Fabric的电子病历跨链可信共享系统设计与实现 Design and Implementation of Cross-chain Trusted EMR Sharing System Based on Fabric 计算机科学, 2022, 49(6A): 490-495. https://doi.org/10.11896/jsjkx.210500063 |
[3] | 陈彦冰, 钟超然, 周超然, 薛凌妍, 黄海平. 基于医疗联盟链的跨域认证方案设计 Design of Cross-domain Authentication Scheme Based on Medical Consortium Chain 计算机科学, 2022, 49(6A): 537-543. https://doi.org/10.11896/jsjkx.220200139 |
[4] | 李博, 向海昀, 张宇翔, 廖浩德. 面向食品溯源场景的PBFT优化算法应用研究 Application Research of PBFT Optimization Algorithm for Food Traceability Scenarios 计算机科学, 2022, 49(6A): 723-728. https://doi.org/10.11896/jsjkx.210800018 |
[5] | 冯了了, 丁滟, 刘坤林, 马科林, 常俊胜. 区块链BFT共识算法研究进展 Research Advance on BFT Consensus Algorithms 计算机科学, 2022, 49(4): 329-339. https://doi.org/10.11896/jsjkx.210700011 |
[6] | 李素, 宋宝燕, 李冬, 王俊陆. 面向金融活动的复合区块链关联事件溯源方法 Composite Blockchain Associated Event Tracing Method for Financial Activities 计算机科学, 2022, 49(3): 346-353. https://doi.org/10.11896/jsjkx.210700068 |
[7] | 杨昕宇, 彭长根, 杨辉, 丁红发. 基于演化博弈的理性拜占庭容错共识算法 Rational PBFT Consensus Algorithm with Evolutionary Game 计算机科学, 2022, 49(3): 360-370. https://doi.org/10.11896/jsjkx.210900110 |
[8] | 王日宏, 周航, 徐泉清, 张立锋. 用于联盟链的非拜占庭容错共识算法 Non-byzantine Fault Tolerance Consensus Algorithm for Consortium Blockchain 计算机科学, 2021, 48(9): 317-323. https://doi.org/10.11896/jsjkx.200600051 |
[9] | 郭上铜, 王瑞锦, 张凤荔. 区块链技术原理与应用综述 Summary of Principle and Application of Blockchain 计算机科学, 2021, 48(2): 271-281. https://doi.org/10.11896/jsjkx.200800021 |
[10] | 季钰翔, 黄建华, 王喆, 郑红, 唐瑞琮. 基于信任度匹配的改进PBFT共识算法 Improved PBFT Consensus Algorithm Based on Trust Matching 计算机科学, 2021, 48(2): 303-310. https://doi.org/10.11896/jsjkx.200500112 |
[11] | 王辉, 陈博, 刘玉祥. 基于区块链的人事档案管理系统研究 Research on Personnel File Management System Based on Blockchain 计算机科学, 2021, 48(11A): 713-718. https://doi.org/10.11896/jsjkx.210300051 |
[12] | 毛瀚宇, 聂铁铮, 申德荣, 于戈, 徐石成, 何光宇. 区块链即服务平台关键技术及发展综述 Survey on Key Techniques and Development of Blockchain as a Service Platform 计算机科学, 2021, 48(11): 4-11. https://doi.org/10.11896/jsjkx.210500159 |
[13] | 周艺华, 方嘉博, 贾玉欣, 贾立圆, 侍伟敏. 基于PBFT的联盟链共识算法 Consortium Blockchain Consensus Algorithm Based on PBFT 计算机科学, 2021, 48(11): 133-141. https://doi.org/10.11896/jsjkx.201200148 |
[14] | 邵兴辉, 黄建华, 王梦楠, 武海霞, 麦勇. 基于信任的双层可拓展共识协议 Trust-based Dual-layer Scalable Consensus Protocol 计算机科学, 2021, 48(11): 142-150. https://doi.org/10.11896/jsjkx.210100126 |
[15] | 陆歌皓, 谢莉红, 李析禹. 区块链共识算法对比研究 Comparative Research of Blockchain Consensus Algorithm 计算机科学, 2020, 47(6A): 332-339. https://doi.org/10.11896/JsJkx.191100189 |
|