计算机科学 ›› 2022, Vol. 49 ›› Issue (11A): 211000125-7.doi: 10.11896/jsjkx.211000125

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

支持分片内多轮PBFT验证算法的状态同步方案

高冬雪, 李志淮, 段培培, 陈玉华   

  1. 大连海事大学信息科学技术学院 辽宁 大连 116026
  • 出版日期:2022-11-10 发布日期:2022-11-21
  • 通讯作者: 李志淮(1720299464@qq.com)
  • 作者简介:(1720299464@qq.com)

State Synchronization Scheme Supporting Multiple Rounds of PBFT VerificationAlgorithm in Sharding

GAO Dong-xue, LI Zhi-huai, DUAN Pei-pei, CHEN Yu-hua   

  1. School of Information Science and Technology,Dalian Maritime University,Dalian,Liaoning 116026,China
  • Online:2022-11-10 Published:2022-11-21
  • About author:GAO Dong-xue,born in 1997,postgraduate.Her main research interests include blockchain technology and so on.
    LI Zhi-huai,born in 1964,professor.His main research interests include blockchain technology and network information security.

摘要: 分片是区块链扩容的链上解决方案之一,其中的状态分片可以在不降低安全性的前提下解决公链可扩展性问题。在状态分片中,每个分片只存储部分状态,若采用实用拜占庭容错(Practical Byzantine Fault Tolerance protocol,PBFT)共识算法,即使总体拜占庭节点比例不超过1/3,随机分配到单个分片内的拜占庭节点的比例也存在一定概率超过1/3,导致分片共识失效。因此分片内节点需要定期在不同分片间重新分配,并采用时隙较小的多轮PBFT验证算法可以有效解决这个问题。但是无状态节点难以有效工作,新加入的节点需要同步分片的状态。为此,提出了适应于多轮PBFT验证共识算法的基于候补节点序列的状态同步方案,完成状态同步的节点先进入候补节点序列,为每一轮PBFT共识验证提供不同的共识验证节点。同时,在状态同步过程中,节点根据其历史行为记录获得相应的积分,后续可根据节点积分对算法进行优化。实验结果表明,所提方案在解决状态同步问题的同时,提高了节点共识验证效率,提升了系统的吞吐量。

关键词: 区块链, 状态分片, 状态同步, 多轮验证, PBFT

Abstract: Sharding is one of the on-chain solutions for blockchain scalability.State sharding can solve the scalability problem of the public chain without reducing security.Each state sharding only maintains a part of the state.There is a certain probability that the proportion of Byzantine nodes will exceed one third in a single sharding,even if the probability of Byzantine nodes is no more than one third in all nodes with PBFT consensus algorithm,resulting in the failure of verifying the consensus.Therefore,the nodes in the sharding need to be reconfigured periodically,and multi-round PBFT consensus verification algorithm with small time slots can effectively solve this problem.However,stateless nodes cannot work effectively,and new nodes need to synchronize the state of the sharding.The state synchronization scheme based on candidate nodes queue for multi-round PBFT consensus verification algorithm is proposed to solve this problem.Nodes that are in synchronized state first enter the queue of candidate nodes,and different candidate nodes are provided for each round of PBFT consensus verification.At the same time,a node gets a corresponding credits based on its historical behavior record during status synchronization to help optimizing the subsequent algorithm.Finally,experiment shows that the proposed scheme not only solves the problem of state synchronization,but also improves the efficiency of consensus verification and the throughput of the system.

Key words: Blockchain, State sharding, State synchronization, Multiple rounds verification, PBFT

中图分类号: 

  • TP311
[1]NAKAMOTO S.Bitcoin:A Peer-to-Peer Electronic Cash Sy-stem [J].Journal for General Philosophy of Science,2008,39(1):53-67.
[2]BUTERIN V.Ethereum 2.0 Sharding-Faq [EB/OL].(2019-04-18).https://github.com/ethereum/wiki/wiki/Sharding-FAQ.
[3]SUN Z X,ZHANG X,XIANG F,et al.Survey of Storage Scalability on Blockchain [J].Journal of Software,2021,32(1):1-20.
[4]YU G,WANG X,YU K,et al.Survey:Sharding in Blockchains [J].IEEE Access,2020,8(99):14155-14181.
[5]DANG H,DINH A,LOGHIN D,et al.Towards Scaling Blockchain Systems via Sharding [C]//2019 International Conference on Management of Data.2018.
[6]LUU L,NARAYANAN V,ZHENG C,et al.A Secure Sharding Protocol for Open Blockchains [C]//Proceedings of the SIGSAC Conference on Computer and Communications Security.ACM,2016:17-30.
[7]WANG Q.Improving the Scalability of Blockchain throughDAG [C]//the 20th International Middleware Conference Doctoral Symposium.2019.
[8]Raiden Foundation.Raiden Network Whitepaper [EB/OL].[2018-05-11].http://raiden.network.
[9]POON J,BUTERIN V.Plasma:Scalable Autonomous SmartContracts [EB/OL].[2017-08-11].http://plasma.io/plasma.pdf.
[10]WANG G,SHI Z J,NIXON M,et al.SoK:Sharding on Block-chain [C]//the 1st ACM Conference.ACM,2019.
[11]CASTRO M,LISKOV B.Practical Byzantine Fault Tolerance[C]//Proceedings of the Third Symposium on Operating Systems Design and Implementation.USENIX Association.1999:173-186.
[12]WANG F S,LI Z H,TIAN N.Multile Round PBFT Verification Scheme to Improve the Scale and Effectiveness of Sharding [J/OL].Computer Engineering and Applications.http://kns.cnki.net/kcms/detail/11.2127.TP.20191207.0904.002.html.
[13]KOKORIS-KOGIAS E,JOVANOVIC P,GASSER L,et al.2018 IEEE Symposium on Security and Privacy(SP)-OmniLedger:A Secure,Scale-out,Decentralized Ledger via Sharding [C]//2018 IEEE Symposium on Security and Privacy(SP).IEEE Computer Society,2018:583-598.
[14]MAHDI Z,MAHNUSH M,MARIANA R.RapidChain:Scaling Blockchain via Full Sharding [C]//the 2018 ACM SIGSAC Conference.ACM,2018.
[15]The Harmony Team,Harmony Technical Whitepaper [R/OL].[2019-06].https://harmony.one/whitepaper.pdf.
[16]LEI X,LIN C,GAO Z,et al.Efficient Public Blockchain Client for Lightweight Users[J].Security and Safety,2017,4(13):153528.
[17]BUTERIN V.The Stateless Client Concept [EB/OL].[2017-10-01].https://ethresear.ch/t/the-stateless-client-concept/172.
[18]BONEH D,BUNZ B,FISCH B.Batching Techniques for Accumulators with Applications to IOPs and Stateless Blockchains [C]//Proc of the 39th Annual Int Cryptology Conf.Berlin:Springer,2019:561-586.
[19]MICALI S,RABIN M,VADHAN S.Verifiable Random Functions [C]//Symposium on Foundations of Computer Science.IEEE Computer Society,1999.
[20]AL-BASSAM M,SONNINO M,BUTERIN V.Fraud Proofs:Maximising Light Client Security and Scaling Blockchains with Dishonest Majorities[OL].http://arxiv.org/abs/1809.09044.
[21]CAO S,KADHE S,RAMCHANDRAN K.CoVer:Collaborative Light-Node-Only Verification and Data Availability for Blockchains[C]//2020 IEEE International Conference on Blockchain.2020:45-52.
[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] 傅丽玉, 陆歌皓, 吴义明, 罗娅玲.
区块链技术的研究及其发展综述
Overview of Research and Development of Blockchain Technology
计算机科学, 2022, 49(6A): 447-461. https://doi.org/10.11896/jsjkx.210600214
[3] 高健博, 张家硕, 李青山, 陈钟.
RegLang:一种面向监管的智能合约编程语言
RegLang:A Smart Contract Programming Language for Regulation
计算机科学, 2022, 49(6A): 462-468. https://doi.org/10.11896/jsjkx.210700016
[4] 毛典辉, 黄晖煜, 赵爽.
符合监管合规性的自动合成新闻检测方法研究
Study on Automatic Synthetic News Detection Method Complying with Regulatory Compliance
计算机科学, 2022, 49(6A): 523-530. https://doi.org/10.11896/jsjkx.210300083
[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] 周航, 姜河, 赵琰, 解相朋.
适用于各单元共识交易的电力区块链系统优化调度研究
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
[7] 王思明, 谭北海, 余荣.
面向6G可信可靠智能的区块链分片与激励机制
Blockchain Sharding and Incentive Mechanism for 6G Dependable Intelligence
计算机科学, 2022, 49(6): 32-38. https://doi.org/10.11896/jsjkx.220400004
[8] 孙浩, 毛瀚宇, 张岩峰, 于戈, 徐石成, 何光宇.
区块链跨链技术发展及应用
Development and Application of Blockchain Cross-chain Technology
计算机科学, 2022, 49(5): 287-295. https://doi.org/10.11896/jsjkx.210800132
[9] 阳真, 黄松, 郑长友.
基于区块链与改进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
[10] 任畅, 赵洪, 蒋华.
一种量子安全拜占庭容错共识机制
Quantum Secured-Byzantine Fault Tolerance Blockchain Consensus Mechanism
计算机科学, 2022, 49(5): 333-340. https://doi.org/10.11896/jsjkx.210400154
[11] 冯了了, 丁滟, 刘坤林, 马科林, 常俊胜.
区块链BFT共识算法研究进展
Research Advance on BFT Consensus Algorithms
计算机科学, 2022, 49(4): 329-339. https://doi.org/10.11896/jsjkx.210700011
[12] 王鑫, 周泽宝, 余芸, 陈禹旭, 任昊文, 蒋一波, 孙凌云.
一种面向电能量数据的联邦学习可靠性激励机制
Reliable Incentive Mechanism for Federated Learning of Electric Metering Data
计算机科学, 2022, 49(3): 31-38. https://doi.org/10.11896/jsjkx.210700195
[13] 张潆藜, 马佳利, 刘子昂, 刘新, 周睿.
以太坊Solidity智能合约漏洞检测方法综述
Overview of Vulnerability Detection Methods for Ethereum Solidity Smart Contracts
计算机科学, 2022, 49(3): 52-61. https://doi.org/10.11896/jsjkx.210700004
[14] 杨昕宇, 彭长根, 杨辉, 丁红发.
基于演化博弈的理性拜占庭容错共识算法
Rational PBFT Consensus Algorithm with Evolutionary Game
计算机科学, 2022, 49(3): 360-370. https://doi.org/10.11896/jsjkx.210900110
[15] 张伯钧, 李洁, 胡凯, 曾俊豪.
基于区块链的分布式加密投票系统
Distributed Encrypted Voting System Based on Blockchain
计算机科学, 2022, 49(11A): 211000212-6. https://doi.org/10.11896/jsjkx.211000212
Viewed
Full text


Abstract

Cited

  Shared   
  Discussed   
No Suggested Reading articles found!