[发明专利]一种基于PBFT的联盟链分片方法及相应的联盟链在审
申请号: | 201811561856.0 | 申请日: | 2018-12-20 |
公开(公告)号: | CN109510876A | 公开(公告)日: | 2019-03-22 |
发明(设计)人: | 尚书丞 | 申请(专利权)人: | 弗洛格(武汉)信息科技有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08;H04L9/32 |
代理公司: | 武汉泰山北斗专利代理事务所(特殊普通合伙) 42250 | 代理人: | 程千慧 |
地址: | 430223 湖北省武汉市东湖高新技术*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 片区 上链 算法 哈希值存储 哈希运算 节点接收 信息存储 信息请求 预设算法 链系统 区块 预设 主链 运算 并发 存储 广播 | ||
本发明提供一种基于PBFT的联盟链分片方法及相应的联盟链,所述方法包括:根据联盟链中节点总数以及预设的最小节点共识数量,计算联盟链被划分的片区数;根据片区数,将联盟链中的所有节点进行片区的划分;当节点接收到上链信息请求时,按照预设算法确定存储上链信息的片区;按照PBFT算法将上链信息存储到确定的片区的区块中,并将产生的新区块广播到所有节点中;对新区块进行哈希运算,将运算后的哈希值存储到联盟链的主链中。通过本发明,基于PBFT算法对联盟链进行分片,提高了联盟链系统的并发量。
技术领域
本发明涉及区块链的分片技术,更具体地,涉及一种基于PBFT的联盟链分片方法及相应的联盟链。
背景技术
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain)是比特币的一个重要概念,它本质上是一个去中介化的数据库,同时作为比特币的底层技术,是一串使用密码学方法相关联产生的数据块,区块链具有去中心化、安全性高等特点,因此,在很多应用场合都使用区块链。
传统的区块链中只存在一条主链,当交易并发量较高时,传统的区块链会出现压力瓶颈,导致并发量低的问题。
发明内容
本发明提供一种克服上述问题或者至少部分地解决上述问题的基于PBFT的联盟链分片方法及相应的联盟链,解决了联盟链并发量低的问题。
根据本发明的一个方面,提供了一种基于PBFT的联盟链分片方法,包括:
S1,根据联盟链中节点总数以及预设的最小节点共识数量,计算联盟链中所有节点被划分的片区数;
S2,根据所述片区数,按照预设规则将联盟链中的所有节点进行片区的划分;
S3,当联盟链中的节点接收到上链信息请求时,按照预设算法确定存储上链信息的片区;
S4,按照PBFT算法将所述上链信息存储到确定的片区的区块中,并将产生的新区块广播到联盟链的所有节点中;
S5,对所述新区块进行哈希运算,将运算后的哈希值存储到联盟链的主链中。
本发明的有益效果为:基于PBFT算法对联盟链进行分片,将联盟链划分为主链和多个片区链,当联盟链的交易量较高时,提高了联盟链系统的并发量。
在上述技术方案的基础上,本发明还可以做如下改进。
进一步的,所述步骤S1之前还包括:
当有新节点申请接入联盟链时,联盟链管理节点对申请加入的该新节点进行审核,待审核通过后,对该新节点进行编号,并将联盟链中更新后的所有节点名单广播至联盟链的所有节点。
进一步的,所述步骤S1具体包括:
当联盟链中的节点接收到联盟链管理节点广播的所有节点名单后,根据所述所有节点名单中的节点总数m和预设的最小节点共识数量n,计算联盟链中所有节点被划分的片区数x=[m/n],其中,m,n均为正整数;
相应的,所述步骤S2具体包括:
根据计算的片区数,将联盟链中所有节点等分为x个片区,每一个片区包括n个节点。
进一步的,所述根据计算的片区数,将联盟链中所有节点等分为x个片区具体包括:
划分后的第一片区包括编号为1~n的节点,第二片区包括编号为(n+1)~2n的节点,依次类推,第x个片区包括编号为(x-1)n+1~m的节点。
进一步的,所述步骤S3具体包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于弗洛格(武汉)信息科技有限公司,未经弗洛格(武汉)信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811561856.0/2.html,转载请声明来源钻瓜专利网。