一种支持主节点动态切换的多层共识方法技术

技术编号:36873121 阅读:31 留言:0更新日期:2023-03-15 20:13
本发明专利技术公开了一种支持主节点动态切换的多层共识方法,涉及信息安全技术领域。本发明专利技术采用分区分层的架构,将PBFT算法扩展为多层以降低单层共识所需通信开销,在每个节点维护多张通信节点列表,记录全网节点信息。各分区采用PBFT视图切换机制进行分区主节点切换,分区节点采用门限签名对列表更新提案进行签名并广播向全网,保证全网节点列表信息的一致性。相较于传统的多层PBFT共识算法,能够显著提升网络的灵活性,使得主节点切换更加安全与高效。效。效。

【技术实现步骤摘要】
一种支持主节点动态切换的多层共识方法


[0001]本专利技术涉及信息安全
,具体涉及一种支持主节点动态切换的多层共识方法。

技术介绍

[0002]区块链是一种分布式共享账本,以其去中心化、不可篡改等特性,成为业界的研究热点。其中共识算法是区块链技术的重要组件,解决了节点之间的相互信任问题,在维护区块链的安全和效率方面起着至关重要的作用,使用正确的算法可显著提高区块链系统的性能。然而受限于FLP定理和CAP定理,大多数区块链系统无法同时提供高吞吐率和高可扩展性,区块链技术也未得到大规模应用。
[0003]在联盟链的应用场景下,对加入节点进行了准入限制,主要共识算法有PBFT和PBFT改进算法,具有低能耗和高性能等特点,可以提供1/3的容错能力。但是PBFT算法为达成数据的一致性采用了多阶段交互的方式,在一轮共识的过程中,整个网络需要O(n2)的通信复杂度(n为参与共识的节点数量),一次主节点切换需要O(n3)的通信复杂度,因此PBFT算法不适用于大规模节点间的共识。以PBFT共识机制为基础,又提出了多层的PBFT算法,通过分层结构来本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种支持主节点动态切换的多层共识方法,其特征在于,包括以下步骤:步骤1,将网络节点划分成上下两层结构,上层网络由一个分区组成,下层网络包含多个互不通信的分区;步骤2,全网每个节点维护多个列表,每个列表记录同一分区内的节点信息,各节点之间保持列表的一致性;步骤3,在上下两层网络的各个分区内,计算和分发该分区门限签名所需的密钥信息;步骤4,下层网络各分区节点采用视图切换机制,选举出分区主节点;其次,下层网络各分区主节点参与上层网络的主节点选举过程,通过视图切换机制选举出上层网络主节点,完成整个网络的初始化过程;步骤5,网络初始化完毕后,启动共识过程;具体方式为,将交易请求转发至上层网络的主节点,进行交易验证并打包成区块,并在上下两层网络之间执行两阶段的PBFT共识;上层节点依次进行PBFT共识的预准备和准备阶段,然后下层各分区节点进行PBFT共识的预准备、准备和确认阶段,最后上层节点完成PBFT共识的确认过程,结束两层共识;步骤6,在共识的过程中,若检测到主节点存在不正当行为,则触发主节点切换机制;各分区节点采用视图切换机制进行主节点选举,选举完成后向全网广播新的主节点信息以更新节点列表。2.根据权利要求1所述的一种支持主节点动态切换的多层共识方法,其特征在于,步骤1的具体过程如下:将网络节点划分为上下两层结构,上层网络组成一个分区,其中包含1个主节点和p个副本节点,副本节点中有m个为下层网络的主节点,其中p≥m,且p≥3;下层网络包含m个分区,每个分区包含1个主节点和q个副本节点,下层网络的主节点同时为上层网络的共识节点,其中q≥3。3.根据权利要求2所述的一种支持主节点动态切换的多层共识方法,其特征在于,步骤2的具体过程如下:根据全网分区数量,创建多张节点列表;每张列表标识同一分区的节点信息,节点标识信息包括分区编号、群公钥、节点编号、IP地址、节点公钥和节点状态信息。4.根据权利要求3所述的一种支持主节点动态切换的多层共识方法,其特征在于,步骤3的具体过程如下:设定上层网络节点总数为3f1+1,f1≥1,下层网络每个分区的节点数为3f2+1,f2≥1,然后在各层网络中进行初始化设置,初始化过程为:上层网络和下层分区网络分别构造(2f1+1,3f1+1)和(2f2+1,3f2+1)多重门限签名,在上层网络和下层网络的每个分区内,用分区内所有节点的公钥计算本分区群公钥,每个节点用自己的私钥计算成员密钥,并在各分区内分享群公钥和成员密钥,同时向全网广播该分区的群公钥,更新全网节点列表。5.根据权利要求4所述的一种支持主节点动态切换的多层共...

【专利技术属性】
技术研发人员:贾哲王俊芳冯伟坡焦利彬刘丽哲赵海强匡春旭赵阳阳高小涵张翼飞贺二路
申请(专利权)人:中国电子科技集团公司第五十四研究所
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1