Please wait a minute...
Advanced Search
数据分析与知识发现  2021, Vol. 5 Issue (1): 56-65     https://doi.org/10.11925/infotech.2096-3467.2020.0981
     综述评介 本期目录 | 过刊浏览 | 高级检索 |
联盟链共识机制研究综述*
冷基栋1,吕学强1,2(),姜阳1,2,李果林1,2
1北京信息科技大学网络文化与数字传播北京市重点实验室 北京 100101
2阳光易购(北京)科技有限公司 北京 100036
Consensus Mechanisms of Consortium Blockchain: A Survey
Leng Jidong1,Lv Xueqiang1,2(),Jiang Yang1,2,Li Guolin1,2
1Beijing Key Laboratory of Internet Culture and Digital Dissemination Research, Beijing Information Science and Technology University, Beijing 100101, China
2Sunego (Beijing) Technology Limited Company, Beijing 100036, China
全文: PDF (694 KB)   HTML ( 12
输出: BibTeX | EndNote (RIS)      
摘要 

【目的】 分析拜占庭问题的应用,梳理联盟链共识机制的相关研究。【文献范围】 以Consensus Mechanisms和共识机制为检索词,分别检索WoS、ResearchGate、arXiv以及中国知网,人工筛选联盟链共识机制相关的文献,最终选取74篇相关文献。【方法】 梳理区块链共识机制及其分类方法,回顾拜占庭问题在分布式领域的应用,研究强共识的共识机制和授权共识机制。【结果】 总结拜占庭问题、布鲁尔定理、拜占庭系统和拜占庭容错机制的发展过程以及内在联系;提出联盟链共识机制的基本流程和评价标准;基于安全性和时延性将联盟链共识机制分为4类。【局限】 理论上可用于联盟链的共识机制较多,本文未全部展开介绍。【结论】 联盟链共识机制的研究推进了区块链的落地实践,从容错能力、通信时延、转换效率等维度改进共识机制是联盟链共识机制未来的研究方向。

服务
把本文推荐给朋友
加入引用管理器
E-mail Alert
RSS
作者相关文章
冷基栋
吕学强
姜阳
李果林
关键词 授权共识机制联盟链区块链拜占庭问题共识机制分类强共识    
Abstract

[Objective] This paper analyzes the application of Byzantine problem and reviews related research on the consensus mechanisms of consortium blockchain.[Coverage] We searched “consensus mechanisms” as keywords from the titles or topics of WoS, ResearchGate, arXiv and CNKI databases. A total of 74 papers were retrieved.[Methods] We reviewed the consensus mechanism and classification method of the blockchain. Then, we explored the applications of Byzantine problem, and discussed the strong and permissioned consensus mechanisms.[Results] We summarized the developments and ties of Byzantine problem, Brewer’s theorem, Byzantine system and Byzantine fault-tolerant mechanism. We also proposed the basic procedures and evaluation criteria for consensus mechanisms of consortium blockchain. Finally, we divided the consensus mechanism into four categories based on security and time delay.[Limitations] This paper did not cover all consensus mechanisms for consortium blockchain.[Conclusions] The research on consensus mechanism promotes the implementation of blockchain, which could be improved from fault tolerance, communication delay and conversion efficiency in the future studies.

Key wordsPermissioned Consensus Mechanism    Consortium Blockchain    Blockchain    Byzantine Problem    Classification of Consensus Mechanism    Strong Consensus
收稿日期: 2020-10-07      出版日期: 2021-02-05
ZTFLH:  TP309  
基金资助:*本文系国家自然科学基金项目的研究成果之一项目编号(61671070)
通讯作者: 吕学强     E-mail: lxq@bistu.edu.cno
引用本文:   
冷基栋,吕学强,姜阳,李果林. 联盟链共识机制研究综述*[J]. 数据分析与知识发现, 2021, 5(1): 56-65.
Leng Jidong,Lv Xueqiang,Jiang Yang,Li Guolin. Consensus Mechanisms of Consortium Blockchain: A Survey. Data Analysis and Knowledge Discovery, 2021, 5(1): 56-65.
链接本文:  
https://manu44.magtech.com.cn/Jwk_infotech_wk3/CN/10.11925/infotech.2096-3467.2020.0981      或      https://manu44.magtech.com.cn/Jwk_infotech_wk3/CN/Y2021/V5/I1/56
共识机制 核心算法 敌手上限
SBFT[18] BFT 1/3
DFINITY[22] BFT 1/2
Pa La[23] BFT 1/3
Peer Census[24] PoW110 + PBFT 1/4
ByzCoin[25] PoW + PBFT 1/4
Solida[26] PoW + BFT 1/3
Hybrid Consensus[27] PoW + BFT 1/3
Thunderella[28] PoW 1/4 or 1/2
Algorand[16] PoS + BFT 1/3
ELASTICO[29] PoW + PBFT 1/4
Omni Ledger[30] PoW + PBFT 1/4
Chainspace[31] PoW + BFT 1/4
RapidChain[32] PoW + BFT 1/4
Table 1  强共识的共识机制
共识机制 基础类 快速类 高容错类 高效类
SBFT[18] 1
PoET[44] 1
Yac[45] 1
RBFT[46] 1
DFINITY[20] 1
PaLa[23] 1
Paxos[47] 1
DPoS[12] 1
PBFT[48] 1
DBFT[49] 1
BFT-SMART[50] 1
RPCA[51] 1
Tendermint[17] 1
Raft[15] 1
Scalable BFT[52] 1
Q/U[53] 1
Quorum[54] 1
HQ[55] 1
CBASE[56] 1
Zyzzyva[57] 1
CTFG[58] 1
Ouroboros[59] 1
FCP[60] 1
SCP[52] 1
Table 2  联盟链共识机制分类
[1] 周平, 杜宇, 李斌 , 等. 中国区块链技术与应用发展白皮书[M]. 2018: 42-44.
[1] ( Zhou Ping, Du Yu, Li Bin , et al. White Paper on Blockchain Technology and Application Development in China[M]. 2018: 42-44.)
[2] 邱月烨 . 隐匿的腾讯金融, 21世纪商业评论, 2020(6):56-59.
[2] ( Qiu Yueye . Hidden Tencent Finance, 21st Century Business Review, 2020(6):56-59.)
[3] 华为区块链技术开发团队. 区块链技术及应用[M]. 北京: 清华大学出版社, 2019.
[3] ( Huawei Blockchain Technology Development Team. Block Chain Technology and Application[M]. Beijing: Tsinghua University Press, 2019.)
[4] 李晓光, 石丹 . 蚂蚁金服的区块链野望, 商学院, 2020(01):65-67.
[4] ( Li Xiaoguang, Shi Dan . Ant Financial’s Blockchain Outlook, Business Management Review, 2020(01):65-67.)
[5] 刘峰 . 区块链热与企业机遇, 企业管理, 2018(6):15-17.
[5] ( Liu Feng . Block Chain Heat and Enterprise Opportunities, Enterprise Management, 2018(6):15-17.)
[6] 陆琦 . 区块链落地还有几步?[N]. 中国科学报, 2018-06-19(4).
[6] ( Lu Qi . How Many Steps are There for the Blockchain to Land?[N]. China Science Daily, 2018-06-19(4).)
[7] 曾诗钦, 霍如, 黄韬 , 等. 区块链技术研究综述:原理、进展与应用[J]. 通信学报, 2020,41(1):134-151.
[7] ( Zeng Shiqin, Huo Ru, Huang Tao , et al. Survey of Blockchain: Principle, Progress and Application[J]. Journal on Communications, 2020,41(1):134-151.)
[8] 崔锦文 . 基于共识理论的中国网络主流意识形态建设研究[D]. 武汉: 华中科技大学, 2019.
[8] ( Cui Jinwen . Research on the Construction of Network Mainstream Ideology in China Based on Consensus Theory[D]. Wuhan: Huazhong University of Science and Technology, 2019)
[9] Gilbert S, Lynch N . Brewer’s Conjecture and the Feasibility of Consistent, Available, Partition-Tolerant Web Services[J]. ACM SIGACT News, 2002,33(2):51-59.
doi: 10.1145/564585.564601
[10] Li J R, Wolf T. A One-Way Proof-of-Work Protocol to Protect Controllers in Software-Defined Networks[C]// Proceedings of the 2016 Symposium on Architectures for Networking and Communications Systems. 2016: 123-124.
[11] Ganesh C, Orlandi C, Tschudi D. Proof-of-Stake Protocols for Privacy-Aware Blockchains[C]// Proceedings of the 38th Annual International Conference on the Theory and Applications of Cryptographic Techniques. 2019: 690-719.
[12] Larimer D. Delegated Proof of Stake [EB/OL]. ( 2014 -04-03). [2020-07-31]. https://how.bitshares.works/en/master/technology/dpos.html.
[13] Castro M, Liskov B . Practical Byzantine Fault Tolerance and Proactive Recovery[J]. ACM Transactions on Computer Systems, 2002,20(4):398-461.
doi: 10.1145/571637.571640
[14] Bentov I, Lee C, Mizrahi A , et al. Proof of Activity: Extending Bitcoin’s Proof of Work via Proof of Stake[OL]. https://eprint.iacr.org/2014/452.pdf.
[15] Ongaro D, Ousterhout J. In Search of an Understandable Consensus Algorithm[C]// Proceedings of the 2014 USENIX Annual Technical Conference. 2014: 305-320.
[16] Gilad Y, Hemo R, Micali S, et al. Algorand: Scaling Byzantine Agreements for Cryptocurrencies[C]// Proceedings of the 26th Symposium on Operating Systems Principles. ACM, 2017: 51-68.
[17] Kwon J . Tendermint: Consensus without mining [EB/OL]. [2020-08-12].https://tendermint.com/static/docs/tendermint.pdf.
[18] Androulaki E, Manevich Y, Muralidharan S, et al. Hyperledger Fabric: A Distributed Operating System for Permissioned Blockchains[C]// Proceedings of the 13th EuroSys Conference. 2018.
[19] 曹兆磊 . 一种适用于联盟链的共识机制[J]. 网络空间安全, 2019,10(1):96-101.
[19] ( Cao Zhaolei . A Consensus Mechanism for the Consortium Block Chain[J]. Cyberspace Security, 2019,10(1):96-101.)
[20] 金璐 . 规则与技术之间: 区块链技术应用风险研判与法律规制[J]. 法学杂志, 2020,41(7):84-93.
[20] ( Jin Lu . Between Rules and Technology: Risk Analysis and Legal Regulation of Block Chain Technology Application[J]. Law Science Magazine, 2020,41(7):84-93.)
[21] 吴茜媛, 刘敏, 郑庆华 , 等. 网络服务用户体验定量评价方法和实证分析[J]. 计算机应用, 2014,34(S2):154-158.
[21] ( Wu Xiyuan, Liu Min, Zheng Qinghua , et al. Quantitative Evaluation Method and Empirical Analysis of User Experience in Web Services[J]. Journal of Computer Applications, 2014,34(S2):154-158.)
[22] Hanke T, Movahedi M, Williams D , et al. DFINITY Technology Overview Series, Consensus System [OL]. arXiv Preprint, arXiv: 1805. 04548.
[23] Chan T H, Pass R, Shi E , et al. PaLa: A Simple Partially Synchronous Blockchain[OL]. https://eprint.iacr.org/2018/981.pdf.
[24] Decker C, Seidel J, Wattenhofer R, et al. Bitcoin Meets Strong Consistency[C]// Proceedings of the 17th International Conference of Distributed Computing and Networking. 2016.
[25] Kokoris-Kogias E, Jovanovic P, Gailly N , et al. Enhancing Bitcoin Security and Performance with Strong Consistency via Collective Signing[J]. Applied Mathematical Modelling, 2016,37(8):5723-5742.
doi: 10.1016/j.apm.2012.11.009
[26] Abraham I, Malkhi D, Nayak K, et al. Solida: A Blockchain Protocol Based on Reconfigurable Byzantine Consensus[C]// Proceedings of the 21st International Conference on Principles of Distributed Systems. 2017.
[27] Pass R, Shi E. Hybrid Consensus: Efficient Consensus in the Permissionless Model[C]// Proceedings of the 31st International Symposium on Distributed Computing. 2017.
[28] Pass R, Shi E. Thunderella: Blockchains with Optimistic Instant Confirmation[C]// Proceedings of 2018 Annual International Conference on the Theory and Applications of Cryptographic Techniques. Springer, Cham, 2018: 3-33.
[29] Luu L, Narayanan V, Zheng C D, et al. A Secure Sharding Protocol for Open Blockchains[C]// Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security. ACM, 2016: 17-30.
[30] Kokoris-Kogias E, Jovanovic P, Gasser L, et al. OmniLedger: A Secure, Scale-Out, Decentralized Ledger via Sharding[C]// Proceedings of 2018 IEEE Symposium on Security and Privacy (SP). IEEE, 2018: 583-598.
[31] Al-Bassam M, Sonnino A, Bano S, et al. Chainspace: A Sharded Smart Contracts Platform[C]// Proceedings of the Network and Distributed System Security Symposium. 2018.
[32] Zamani M, Movahedi M, Raykova M. RapidChain: Scaling Blockchain via Full Sharding[C]// Proceedings of the 2018 ACM SIGSAC Conference on Computer and Communications Security. ACM, 2018: 931-948.
[33] 袁勇, 倪晓春, 曾帅 , 等. 区块链共识算法的发展现状与展望[J]. 自动化学报, 2018,44(11):2011-2022.
[33] ( Yuan Yong, Ni Xiaochun, Zeng Shuai , et al. Blockchain Consensus Algorithms: The State of the Art and Future Trends[J]. Acta Automatica Sinica, 2018,44(11):2011-2022.)
[34] 郑敏, 王虹, 刘洪 , 等. 区块链共识算法研究综述[J]. 信息网络安全, 2019,19(7):8-24.
[34] ( Zheng Min, Wang Hong, Liu Hong , et al. Survey on Consensus Algorithms of Blockchain[J]. Netinfo Security, 2019,19(7):8-24.)
[35] 韩国栋, 麦志英, 赵玉香 . 数字货币共识算法综述与展望, 青海金融, 2020(1):9-12.
[35] ( Han Guodong, Mai Zhiying, Zhao Yuxiang . Review and Prospect of Digital Currency Consensus Algorithm, Qinghai Finance, 2020(1):9-12.)
[36] 刘懿中, 刘建伟, 张宗洋 , 等. 区块链共识机制研究综述[J]. 密码学报, 2019,6(4):395-432.
[36] ( Liu Yizhong, Liu Jianwei, Zhang Zongyang , et al. Overview on Blockchain Consensus Mechanisms[J]. Journal of Cryptologic Research, 2019,6(4):395-432.)
[37] 陆歌皓, 谢莉红, 李析禹 . 区块链共识算法对比研究[J]. 计算机科学, 2020,47(S1):332-339.
[37] ( Lu Gehao, Xie Lihong, Li Xiyu . Comparative Research of Blockchain Consensus Algorithm[J]. Computer Science, 2020,47(S1):332-339.)
[38] Cachin C, Vukolić M. Blockchain Consensus Protocols in the Wild[C]// Proceedings of the 31st Symposium on Distributed Computing. 2017: 1-16.
[39] Jourenko M, Kurazumi K, Larangeira M , et al. SoK: A Taxonomy for Layer-2 Scalability Related Protocols for Cryptocurrencies[OL]. https://eprint.iacr.org/2019/352.pdf.
[40] Sharmila K, Kamalakkannan S, Devi R , et al. A Comprehensive Study on Blockchain with Its Components, Taxonomy and Consensus[J]. International Journal of Management, Technology and Engineering, 2019,9(1):971-975.
[41] Ferdous M S , Chowdhury M J M, Hoque M A, et al. Blockchain Consensus Algorithms: A Survey[OL]. arXiv Preprint, arXiv: 2001. 07091.
[42] Juan G, Aggelos K. SoK: A Consensus Taxonomy in the Blockchain Era[C]// Proceedings of the Cryptographers’ Track at the RSA Conference 2020. 2020:284-318.
[43] 刘虹男, 魏凯 . 联盟链技术测试观察与分析[J]. 信息通信技术与政策, 2020,46(1):35-45.
[43] ( Liu Hongnan, Wei Kai . Consortiumblockchain Technology Test Observation and Analysis[J]. Information and Communications Technology and Policy, 2020,46(1):35-45.)
[44] Chen L, Xu L, Shah N, et al. On Security Analysis of Proof-of-Elapsed-Time (PoET)[C]// Proceedings of International Symposium on Stabilization, Safety, and Security of Distributed Systems. Springer, Cham, 2017: 282-297.
[45] 张健, 汪洋, 刘丹丹 . 分布式一致性算法Yac[J]. 计算机应用, 2017,37(9):2524-2530.
[45] ( Zhang Jian, Wang Yang, Liu Dandan . Yac: Yet Another Distributed Consensus Algorithm[J]. Journal of Computer Applications, 2017,37(9):2524-2530.)
[46] Clement A, Wong E, Alvisi L, et al. Making Byzantine Fault Tolerant Systems Tolerate Byzantine Faults[C]// Proceedings of the 6th USENIX Symposium on Networked Systems Design and Implementation. 2009: 153-168.
[47] Lamport L . The Part-Time Parliament[J]. ACM Transactions on Computer Systems, 1998,16(2):133-169.
[48] Dwork C, Naor M. Pricing via Processing or Combatting Junk Mail[C]// Proceedings of the 12th Annual International Cryptology Conference on Advances in Cryptology. 1992: 139-147.
[49] Sousa J, Bessani A. From Byzantine Consensus to BFT State Machine Replication: A Latency-Optimal Transformation[C]// Proceedings of the 9th European Dependable Computing Conference. 2012: 37-48.
[50] Bessani A, Sousa J, Alchieri E E P. State Machine Replication for the Masses with BFT-SMART[C]// Proceedings of the 44th Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN). 2014: 355-362.
[51] Armknecht F, Karame G O, Mandal A, et al. Ripple: Overview and Outlook[C]// Proceedings of 2015 International Conference on Trust and Trustworthy Computing. 2015: 163-180.
[52] CHAIN. Federated Consensus Protocol[EB/OL].[2020-08-30]. https://chain.com/docs/1.2/protocol/specifications/consensus .
[53] Abd-El-Malek M, Ganger G R, Goodson G R , et al. Fault-Scalable Byzantine Fault-Tolerant Services[J]. ACM SIGOPS Operating Systems Review, 2005,39(5):59-74.
[54] Buterin V . A Next-Generation Smart Contract and Decentralized Application Platform(White Paper)[EB/OL]. ( 2019-06-17). [2020-08-08]. https://github.com/ethereum/wiki/wiki/White-Paper .
[55] Cowling J A, Myers D S, Liskov B, et al. HQ Replication: A Hybrid Quorum Protocol for Byzantine Fault Tolerance[C]// Proceedings of the 7th Symposium on Operating Systems Design and Implementation. 2006: 177-190.
[56] Kotla R, Dahlin M. High Throughput Byzantine Fault Tolerance[C]// Proceedingso of International Conference on Dependable Systems & Networks. IEEE, 2004.
[57] Kotla R. Zyzzyva: Speculative Byzantine Fault Tolerance[C]// Proceedings of the 21st ACM SIGOPS Symposium on Operating Systems Principles. ACM, 2007: 45-58.
[58] Sompolinsky Y, Zohar A. Secure High-Rate Transaction Processing in Bitcoin[C]// Proceedings of International Conference on Financial Cryptography and Data Security. 2015: 507-527.
[59] Kiayias A, Russell A, David B, et al. Ouroboros: A Provably Secure Proof-of-Stake Blockchain Protocol[C]// Proceedings of Annual International Cryptology Conference. 2017: 357-388.
[60] 韩璇, 刘亚敏 . 区块链技术中的共识机制研究, 信息网络安全, 2017(9):147-152.
[60] ( Han Xuan, Liu Yamin . Research on the Consensus Mechanisms of Blockchain Technology, Netinfo Security, 2017(9):147-152.)
[61] Nelson M . The Byzantine Generals Problem[J]. Dr. Dobb’s Journal: the World of Software Development, 2008,33(4):30.
[62] 闵应骅 . 拜占庭将军问题, 中国传媒科技, 2006(3):35-37.
[62] ( Min Yinghua . Byzantine Generals Problem, Science & Technology for China's Mass Media, 2006(3):35-37.)
[63] 陈国良, 张玉杰 . 并行计算学科发展历程[J]. 计算机科学, 2020,47(8): 1-4, 337.( Chen Guoliang, Zhang Yujie. Development of Parallel Computing Subject, Computer Science, 2020,47(8):1-4, 337.)
[64] Diouf G M, Elbiaze H, Jaafar W . On Byzantine Fault Tolerance in Multi-Master Kubernetes Clusters[J]. Future Generation Computer Systems, 2020,109:407-419.
[65] 范捷, 易乐天, 舒继武 . 拜占庭系统技术研究综述[J]. 软件学报, 2013,24(6):1346-1360.
[65] ( Fan Jie, Yi Letian, Shu Jiwu . Research on the Technologies of Byzantine System[J]. Journal of Software, 2013,24(6):1346-1360.)
[66] Lamport L, Shostak R, Pease M . The Byzantine Generals Problem[J]. ACM Transactions on Programming Languages and Systems (TOPLAS), 1982,4(3):382-401.
doi: 10.1145/357172.357176
[67] 陈纯 . 联盟区块链关键技术与区块链的监管挑战[J]. 电力设备管理, 2019(11): 20-21, 28.
[67] ( Chen Chun,. Key Technology in Alliance Chain and Challenges in Monitoring Blockchain[J]. Electric Power Equipment Management, 2019(11):20-21, 28.)
[68] Li X W, Zhou L, Yuan L H. Decoupling Multi-Processors from Congestion Control in Byzantine Fault Tolerance[C]// Proceedings of 2015 International Industrial Informatics and Computer Engineering Conference. 2015: 1824-1827.
[69] Dwork C, Moses Y . Knowledge and Common Knowledge in a Byzantine Environment: Crash Failures[J]. Information and Computation, 1986,88(2):156-186.
doi: 10.1016/0890-5401(90)90014-9
[70] Abraham I, Chan T H H, Dolev D, et al. Communication Complexity of Byzantine Agreement, Revisited[C]// Proceedings of the 2019 ACM Symposium on Principles of Distributed Computing. 2019: 317-326.
[71] 房鼎益, 周兴社, 康继昌 . 分布式系统研究进展[J]. 微电子学与计算机, 2000,17(6):9-15.
[71] ( Fang Dingyi, Zhou Xingshe, Kang Jichang . Survey on Distributed Operating Systems and Distributed System Environment[J]. Microelectronics & Computer, 2000,17(6):9-15.)
[72] Bracha G . Asynchronous Byzantine Agreement Protocols[J]. Information and Computation, 1987,75(2):130-143.
doi: 10.1016/0890-5401(87)90054-X
[73] Veronese G S, Correia M, Bessani A N, et al. Spin One’s Wheels? Byzantine Fault Tolerance with a Spinning Primary[C]// Proceedings of the 28th IEEE International Symposium on Reliable Distributed Systems. IEEE, 2009: 135-144.
[74] Ferdous M S, Chowdhury F, Alassafi M O . In Search of Self-Sovereign Identity Leveraging Blockchain Technology[J]. IEEE Access, 2019,7. DOI: 10.1109/ACCESS.2019.2931173.
doi: 10.1109/ACCESS.2019.2935763 pmid: 32754420
[1] 董振恒,吕学强,任维平,姜阳,李果林. 高性能区块链关键技术研究综述[J]. 数据分析与知识发现, 2021, 5(6): 14-24.
Viewed
Full text


Abstract

Cited

  Shared   
  Discussed   
版权所有 © 2015 《数据分析与知识发现》编辑部
地址:北京市海淀区中关村北四环西路33号 邮编:100190
电话/传真:(010)82626611-6626,82624938
E-mail:jishu@mail.las.ac.cn