计算机科学 ›› 2018, Vol. 45 ›› Issue (2): 20-24.doi: 10.11896/j.issn.1002-137X.2018.02.004

所属专题: 区块链技术

• 区块链技术 • 上一篇    下一篇

基于Gossip协议的拜占庭共识算法

张仕将,柴晶,陈泽华,贺海武   

  1. 太原理工大学信息工程学院 太原030024,太原理工大学信息工程学院 太原030024,太原理工大学信息工程学院 太原030024,中国科学院计算机网络信息中心 北京100190
  • 出版日期:2018-02-15 发布日期:2018-11-13
  • 基金资助:
    本文受中科院计算机网络信息中心百人计划项目(1101002001),国家自然科学基金(61402319,61403273),山西省自然科学基金项目(2014021022-4)资助

Byzantine Consensus Algorithm Based on Gossip Protocol

ZHANG Shi-jiang, CHAI Jing, CHEN Ze-hua and HE Hai-wu   

  • Online:2018-02-15 Published:2018-11-13

摘要: 区块链是一种对等网络的分布式账本系统,具备去中心化、不可篡改、安全可信等特点,因此受到了广泛关注。在区块链系统中,典型的拜占庭错误包括操作错误、网络延迟、系统崩溃、恶意攻击等。现有共识算法不仅对区块链中拜占庭节点的容错能力低,而且对区块链系统的可扩展性差。针对这一问题,文中提出了基于Gossip协议的拜占庭共识算法,使系统可以容忍小于一半的节点为拜占庭节点,能够达到XFT共识算法的容错能力。同时,因为采用了统一的数据结构,所以系统具有更好的可扩展性,并且有利于正确节点识别区块链系统中的恶意节点。在该算法中,提案节点随着区块链长度的变化而转移,系统中所有节点都处于对等的地位,从而避免了单点故障问题,进而使得系统具有更好的动态负载均衡的性能。

关键词: 区块链,拜占庭错误,共识算法,Gossip协议,可扩展性

Abstract: Blockchain is a kind of distributed ledger system with peer-to-peer network,which has drawn widespread attention because of its characteristics such as decentralization,non-tempering,security and credibility.In a blockchain system,some nodes have the Byzantine errors such as operational errors,network latency,system crashes,malicious attacks,and so on.The existing consensus algorithms are less tolerant to the Byzantine nodes in the blockchain,and the scalability of the blockchain system is poor.In order to solve these problems,this paper proposed a Byzantine consensus algorithm based on Gossip protocol,which allows the system to tolerate less than half of the nodes as the Byzantine node and achieve the fault-tolerant performance of XFT consensus algorithm.This paper proved that the algorithm can reach consensus in a distributed system with Byzantine defects from the agreement,correctness and termination.At the same time,the system adopts the uniform data structure,and thus has better scalability and facilitates the right node to identify the Byzantine nodes in the blockchain system.In this algorithm,the proposed node is shifted with the change of the length of blockchain,so that all nodes in the system are in the same position,thus avoiding the single point of failure problem,and making the system have better dynamic load balancing performance.

Key words: Blockchain,Byzantine error,Consensus algorithm,Gossip protocol,Scalability

[1] YUAN Y,WANG F Y.Blockchain:The State of the Art and Future Trends [J].Acta Automatica Sinica,2016,42(4):481-494.(in Chinese) 袁勇,王飞跃.区块链技术发展现状与展望[J].自动化学报,2016,42(4):481-494.
[2] NAKAMOTO S.Bitcoin:A peer-to-peer electronic cash system .https://www.cs.bgu.ac.il/~crp161/wiki.files/Bitcoin-Paper.pdf.
[3] LAMPORT L,SHOSTAK R,PEASE M.The Byzantine Gene-rals Problem [J].Acm Transactions on Programming Langua-ges & Systems,2016,4(3):382-401.
[4] 邹均.区块链技术指南[M].北京:机械工业出版社,2016:109-128.
[5] MICALI S.ALGORAND:The Efficient and Democratic Ledger .http://pdfs.semanticscholar.org/0dc0/55052cda7179cd74d43e07479565121ef733.pdf.
[6] Larimer D.Transactions as proof-of-stake .[2017-07-05].https://bravenewcoin.com/assets/Uploads/TransactionsAsProofOfStake10.pdf.
[7] CASTRO M.Practical byzantine fault tolerance and proactiverecovery [J].Acm Transactions on Computer Systems,1999,20(4):398-461.
[8] ONGARO D,OUSTERHOUT J.In search of an understandable consensus algorithm [C]∥Usenix Conference on Usenix Technical Conference.USENIX Association,2014:305-320.
[9] LEI C J,LIN Y P,LI J G,et al.Research on Byzantine Fault Tolerance Under Volunteer Cloud Environment [J].Computer Engineering,2016,42(5):1-7.(in Chinese) 雷长剑,林亚平,李晋国,等.志愿云环境下的拜占庭容错研究[J].计算机工程,2016,2(5):1-7.
[10] LI J.Distributed Gossip algorithms for Quantized Consensus[D].Harbin:Harbin Institute of Technology,2013.(in Chinese) 李婧.基于量化共识的分布式Gossip算法研究[D].哈尔滨:哈尔滨工业大学,2013.
[11] ANDR A,DEMERS A,HOPCROFTT J E.Correctness of a gossip based membership protocol [C]∥Twenty-Fourth ACM Symposium on Principles of Distributed Computing.ACM,2005:292-301.
[12] GUREVICH M,KEIDAR I.Correctness of gossip-based membership under message loss [C]∥ACM Symposium on Principles of Distributed Computing.ACM,2009:151-160.
[13] GANSESH A J,KERMARREC A M,MASSOULI,et al.Peer-to-Peer Membership Management for Gossip-Based Protocols [J].IEEE Transactions on Computers,2003,52(2):139-149.
[14] 黄步添,王云霄,王从礼,等.一种应用于区块链的拜占庭容错共识方法:中国,CN106445711A [P].2017-02-22.
[15] 张铮文.一种用于区块链的拜占庭容错算法.[2017-07-03].http://www.onchain.com/paper/66c6773b.pdf.
[16] KERMARREC A M,MASSOULIE L,GANESH A J.Probabilistic reliable dissemination in large-scale systems [J].IEEE Transactions on Parallel & Distributed Systems,2003,14(3):248-258.

No related articles found!
Viewed
Full text


Abstract

Cited

  Shared   
  Discussed   
No Suggested Reading articles found!