一种多链式联盟区块链共识方法、装置、电子设备及介质

专利查询11小时前  1


本申请涉及区块链,尤其涉及一种多链式联盟区块链共识方法、装置、电子设备及介质。


背景技术:

1、区块链作为一种分布式系统意味着无法同时兼顾安全性、可扩展性、去中心化,目前联盟链中的共识算法多采用拜占庭容错与崩溃容错两种机制,这两类共识机制都具有强一致性,在去中心化上做出了一定妥协, 通过选举主节点对区块内交易的总顺序达成一致,然后在所有节点上以相同顺序串行地执行交易。这种串行处理交易的方式从根本上限制了联盟区块链的可扩展性,导致无法并行的处理交易或区块,这意味着网络中很多资源都间歇性地处于闲置状态,限制了联盟链系统的可扩展性。此外,现有的大多数联盟链系统仅采用单链进行交易处理和存储。

2、随着网络交易量的上升,单链联盟区块链系统的运行速度会大大降低,且很难通过有效的扩容手段来增加区块链的交易吞吐量。因此,亟需设计一种高性能链结构与共识算法以提高系统整体扩展性。


技术实现思路

1、为解决或部分解决相关技术中存在的问题,本申请提供一种多链式联盟区块链共识方法、装置、电子设备及介质,能够通过将单链区块链修改成多链式结构,减少了区块生成的等待时间,同时还支持并发出块,提升交易提案的吞吐量,提高交易的效率;通过将日志结构改成二维结构,同时每个节点保存一个账本结构表,标明各子链区块的区块号,状态复制机按照账本结构表来确定二维日志的执行顺序,从而保证每个节点的最终状态一致。

2、本申请第一方面提供一种多链式联盟区块链结构,区块链结构包括创世块与若干链结构,每个组织包括若干链结构,每个链结构包括若干区块,不同组织联盟搭建成联盟区块链系统;

3、所述区块链的节点间互相复制日志,所述区块链的日志结构为二维结构。

4、本申请第二方面提供一种多链式联盟区块链结构的共识方法,区块链结构包括创世块与若干链结构,每个组织包括若干链结构,每个链结构包括若干区块,不同组织联盟搭建成联盟区块链系统,区块链的节点间互相复制日志,所述区块链的日志结构为二维结构,其中,所述区块链包括n个联盟节点与序号节点;所述方法包括:

5、获取客户端向区块链的目标联盟节点发送的交易请求,当节点交易池中交易达到预设阈值时,打包新区块;

6、通过所述序号节点申请所述新区块的序号,并确定其它联盟节点是否确认所述新区块的序号;

7、当检测到超过(n/2+1)个联盟节点确认时,将所述新区块添加到所述各个联盟节点维护的链结构中;

8、生成添加所述新区块的日志,向其它联盟节点发送日志附加请求,其它联盟节点基于所述日志附加请求复制所述日志到本地日志集合;

9、当检测到超过(n/2+1)个联盟节点复制所述日志时,所述各个联盟节点将所述日志追加到状态复制机。

10、优选的,所述确定其它联盟节点是否确认所述新区块的序号包括:

11、所述序号节点向其它联盟节点发送心跳消息;

12、其它联盟节点基于所述心跳消息确认所述新区块的序号。

13、优选的,所述将所述新区块添加到各个联盟节点维护的链结构中之前的步骤包括:

14、其它联盟节点针对所述新区块进行区块同步;

15、针对所述新区块进行验证,通过验证后将所述新区块添加到所述目标联盟节点维护的链结构中。

16、优选的,所述针对所述新区块进行验证包括:

17、所述目标联盟节点对所述新区块进行哈希值验证。

18、优选的,所述区块链日志的二维结构与所述区块链的结构对应。

19、优选的,所述联盟节点用于参与共识、存储账本、扩展子链。

20、本申请第三方面提供一种多链式联盟区块链结构的共识装置,区块链结构包括创世块与若干链结构,每个组织包括若干链结构,每个链结构包括若干区块,不同组织联盟搭建成联盟区块链系统,区块链的节点间互相复制日志,所述区块链的日志结构为二维结构,其中,所述区块链包括n个联盟节点与序号节点;所述装置包括:

21、获取模块,用于获取客户端向区块链的目标联盟节点发送的交易请求,当节点交易池中交易达到预设阈值时,将区块打包;

22、申请模块,用于通过所述序号节点申请所述区块的序号,并确定其它联盟节点是否确认所述区块的序号;

23、添加模块,用于当检测到超过(n/2+1)个联盟节点确认时,将所述区块添加到所述各个联盟节点维护的链结构中;

24、日志模块,用于生成添加所述区块的日志,向其它联盟节点发送日志附加请求,其它联盟节点基于所述日志附加请求复制所述日志到本地日志集合;

25、复制模块,用于当检测到超过(n/2+1)个联盟节点复制所述日志时,各个联盟节点将所述日志追加到状态机。

26、本申请第四方面提供一种电子设备,包括:

27、处理器;以及

28、存储器,其上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器执行如上所述的方法。

29、本申请第五方面提供一种计算机可读存储介质,其上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行如上所述的方法。

30、本申请提供的技术方案可以包括以下有益效果:区块链结构包括创世块与若干链结构,每个组织包括若干链结构,每个链结构包括若干区块,不同组织联盟搭建成联盟区块链系统,区块链的节点间互相复制日志,区块链的日志结构为二维结构,其中,区块链包括n个联盟节点与序号节点;通过获取客户端向区块链的目标联盟节点发送的交易请求,当节点交易池中交易达到预设阈值时,打包新区块;通过序号节点申请新区块的序号,并确定其它联盟节点是否确认新区块的序号;当检测到超过(n/2+1)个联盟节点确认时,将新区块添加到各个联盟节点维护的链结构中;生成添加新区块的日志,向其它联盟节点发送日志附加请求,其它联盟节点基于日志附加请求复制日志到本地日志集合;当检测到超过(n/2+1)个联盟节点复制日志时,各个联盟节点将日志追加到状态复制机。实现了并行出块的效果,提高出块效率和交易吞吐量。通过多链的特性保证区块的并行产生且易于维护,且结构支持纵向扩容具备优秀的可扩展性,将日志结构改成二维的结构,同时每个节点保存一个账本结构表,标明各子链区块的区块号,状态复制机按照账本结构表来确定二维日志的执行顺序,从而保证每个节点的最终状态一致。

31、应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。



技术特征:

1.一种多链式联盟区块链结构的共识方法,其特征在于,区块链结构包括创世块与若干链结构,每个组织包括若干链结构,每个链结构包括若干区块,不同组织联盟搭建成联盟区块链系统,区块链的节点间互相复制日志,所述区块链的日志结构为二维结构,其中,所述区块链包括n个联盟节点与序号节点;所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述确定其它联盟节点是否确认所述新区块的序号包括:

3.根据权利要求1所述的方法,其特征在于,所述将所述新区块添加到各个联盟节点维护的链结构中之前的步骤包括:

4.根据权利要求3所述的方法,其特征在于,所述针对所述新区块进行验证包括:

5.根据权利要求1所述的方法,其特征在于,所述区块链日志的二维结构与所述区块链的结构对应。

6.根据权利要求1-5任一所述的方法,其特征在于,所述联盟节点用于参与共识、存储账本、扩展子链。

7.一种多链式联盟区块链结构的共识装置,其特征在于,区块链结构包括创世块与若干链结构,每个组织包括若干链结构,每个链结构包括若干区块,不同组织联盟搭建成联盟区块链系统,区块链的节点间互相复制日志,所述区块链的日志结构为二维结构,其中,所述区块链包括n个联盟节点与序号节点;所述装置包括:

8.一种电子设备,其特征在于,包括:

9.一种计算机可读存储介质,其特征在于,其上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行如权利要求1-6中任一项所述的方法。


技术总结
本申请涉及一种多链式联盟区块链共识方法、装置、电子设备及介质。包括:通过获取客户端向区块链的目标联盟节点发送的交易请求,当节点交易池中交易达到预设阈值时,打包新区块;通过序号节点申请新区块的序号,并确定其它联盟节点是否确认新区块的序号;当检测到超过(N/2+1)个联盟节点确认时,将新区块添加到各个联盟节点维护的链结构中;生成添加新区块的日志,向其它联盟节点发送日志附加请求,其它联盟节点基于日志附加请求复制日志到本地日志集合;当检测到超过(N/2+1)个联盟节点复制日志时,各个联盟节点将日志追加到状态复制机,实现并行出块的效果,提高出块效率和交易吞吐量。且结构支持纵向扩容具备优秀的可扩展性。

技术研发人员:陆绍飞,赵韧轲
受保护的技术使用者:湖南大学
技术研发日:
技术公布日:2024/12/5

最新回复(0)