一种轻量化的分布式账本构建方法、设备及介质与流程

文档序号:34907491发布日期:2023-07-27 19:31阅读:39来源:国知局
一种轻量化的分布式账本构建方法、设备及介质与流程

本发明涉及分布式账本构建领域,更为具体的,涉及一种轻量化的分布式账本构建方法、设备及介质。


背景技术:

1、拜占庭将军问题是分布式领域最严格、最复杂的容错模型,当前分布式账本技术中也广泛应用实用拜占庭容错算法pbft或基于其改进的高鲁棒拜占庭容错算法rbft,并将共识与排序流程分离开以解决多节点背书不一致等问题。但在日常工作中使用的分布式系统面对的问题不会那么复杂,更多的是计算机故障挂掉了,或者网络通信问题而没法传递信息,这种情况不考虑计算机之间互相发送恶意信息,极大简化了系统对容错的要求,最主要的是达到一致性。共识与排序流程分离会增大系统的架构复杂度、增加部署及维护成本,且由于其计算量耗费巨大,账本写入效率也不高,不利于分布式账本推广与应用。


技术实现思路

1、本发明的目的在于克服现有技术的不足,提供一种轻量化的分布式账本构建方法、设备及介质,结合了当前各个应用场景,实现了一种相对轻便和高效的分布式账本构建方式等。

2、本发明的目的是通过以下方案实现的:

3、一种轻量化的分布式账本构建方法,包括步骤:通过将共识与排序融合构建共识网络;再以可配置背书节点数量的共识算法及系统链实现对整个账本的多通道支持,以及可配置背书节点数量的共识算法及系统链实现共识交易流程。

4、进一步地,所述通过将共识与排序融合构建共识网络,包括子步骤:将需要建立的共识网络信息,写入创世块并在各个节点peer维护;所述共识网络信息包含参与的组织org名称及共识节点consenter名称。

5、进一步地,所述通过将共识与排序融合构建共识网络,包括子步骤:将共识网络的节点身份进行分类,具体包括主节点leader节点、从节点follower节点和学习者节点leaner节点三类;其中,leader节点为raft共识算法中的主节点,负责对交易进行打包、分发和共识;follower节点为raft共识算法中的从节点,负责对主节点分发的区块进行共识,通过raft共识算法进行区块的同步;leaner节点为组织中不参与raft共识的节点,通过协议优先从本组织的consenter节点进行区块的同步。

6、进一步地,所述通过将共识与排序融合构建共识网络,包括子步骤:在共识网络启动前将创世块放入peer节点指定的目录,并通过创世块中的配置信息启动已建立的链通道,组建raft共识集群。

7、进一步地,所述可配置背书节点数量的共识算法包括raft共识算法;利用raft共识算法及系统链实现对整个账本的多通道支持,具体包括子步骤:

8、创建多通道,所有创建新通道的配置交易均在各个通道的创世块中进行配置,配置共识算法raft共识,并根据链应用场景,自定义其容错背书节点数量,数量可配置1~n,n为共识网络的节点最大值;在创建通道的配置交易共识完成后,则完成一个通道的创建,且各个peer节点之间可自由组网,无需固定需要加入的peer节点。

9、进一步地,所述可配置背书节点数量的共识算法包括raft共识算法;以raft共识算法及系统链实现共识交易流程,具体包括子步骤:

10、运行共识流程,由主节点打包的区块在peer集群共识完成后不再发往排序节点orderer集群,而是由peer集群中的raft主节点直接在本地提交并且广播增补发送append消息给所有从节点;

11、从节点收到append消息后直接提交本地已完成共识的区块,而游离在共识集群之外的leaner节点则通过优先与本组织内的consenter节点建立的连接完成区块的同步工作;当本组织的consenter节点不可用时,则随机选取其他组织的consenter节点进行同步。

12、进一步地,所述协议包括delivery协议;并且游离在共识集群之外的leaner节点则通过优先与本组织内的consenter节点建立的delivery连接完成区块的同步工作。

13、进一步地,以可配置背书节点数量的共识算法及系统链实现共识交易流程,包括子步骤:

14、(1)客户端将记链请求提案proposal发送给共识集群中的某个consenter节点;

15、(2)consenter节点将proposal放入到交易池;

16、(3)consenter节点将交易广播给共识集群内的其他consenter节点;

17、(4)共识集群中的主节点的交易池通知打包模块有新的proposal到达;

18、(5)共识集群中的主节点的打包模块将交易池中proposals打包形成一个交易集合txsets;

19、(6)主节点将txsets通过预增补发送preappend消息广播给所有从节点,并获得超过设定数量的返回response,以确认设定数量的节点连接正常;

20、(7)主节点和从节点调用本地的背书模块对txsets进行背书;

21、(8)背书模块完成对txsets的背书,并将proposal和对应的背书结果写到区块block中;

22、(9)从节点将block的哈希blockhash返回给主节点;

23、(10)主节点比较本地的blockhash与从节点的blockhash是否一致,若一致的数量不低于配置的背书节点数量n,则向所有从节点发送append消息;

24、(11)主节点与从节点将block提交到本地账本;

25、(12)leaner节点从本组织的consenter节点通过delivery连接同步到block;

26、(13)leaner节点对block进行提交,完成交易共识流程。

27、一种轻量化的分布式账本构建设备,包括:

28、共识网络构建模块,用于通过将共识与排序融合构建共识网络;

29、多通道创建模块,用于以可配置背书节点数量的共识算法及系统链实现对整个账本的多通道支持;

30、共识流程运行模块,用于以及可配置背书节点数量的共识算法及系统链实现共识交易流程。

31、一种可读存储介质,在可读存储介质中存储有计算机程序,所述计算机程序被处理器加载并执行如上任一项所述的方法。

32、本发明的有益效果包括:

33、本发明将一般分布式账本中的共识流程融合,降低系统复杂度,提高账本写入效率,减少维护成本。

34、本发明提供了更简洁的多通道创建流程,且可实现不同节点间灵活自由的加入不同通道的功能。

35、本发明提供了可配置背书节点数量的raft共识算法,适应不同应用场合对容错能力的要求。



技术特征:

1.一种轻量化的分布式账本构建方法,其特征在于,包括步骤:通过将共识与排序融合构建共识网络;再以可配置背书节点数量的共识算法及系统链实现对整个账本的多通道支持,以及可配置背书节点数量的共识算法及系统链实现共识交易流程。

2.根据权利要求1所述的轻量化的分布式账本构建方法,其特征在于,所述通过将共识与排序融合构建共识网络,包括子步骤:将需要建立的共识网络信息,写入创世块并在各个节点peer维护;所述共识网络信息包含参与的组织org名称及共识节点consenter名称。

3.根据权利要求1所述的轻量化的分布式账本构建方法,其特征在于,所述通过将共识与排序融合构建共识网络,包括子步骤:将共识网络的节点身份进行分类,具体包括主节点leader节点、从节点follower节点和学习者节点leaner节点三类;其中,leader节点为raft共识算法中的主节点,负责对交易进行打包、分发和共识;follower节点为raft共识算法中的从节点,负责对主节点分发的区块进行共识,通过raft共识算法进行区块的同步;leaner节点为组织中不参与raft共识的节点,通过协议优先从本组织的consenter节点进行区块的同步。

4.根据权利要求1所述的轻量化的分布式账本构建方法,其特征在于,所述通过将共识与排序融合构建共识网络,包括子步骤:在共识网络启动前将创世块放入peer节点指定的目录,并通过创世块中的配置信息启动已建立的链通道,组建raft共识集群。

5.根据权利要求1所述的轻量化的分布式账本构建方法,其特征在于,所述可配置背书节点数量的共识算法包括raft共识算法;利用raft共识算法及系统链实现对整个账本的多通道支持,具体包括子步骤:

6.根据权利要求3所述的轻量化的分布式账本构建方法,其特征在于,所述可配置背书节点数量的共识算法包括raft共识算法;以raft共识算法及系统链实现共识交易流程,具体包括子步骤:

7.根据权利要求6所述的轻量化的分布式账本构建方法,其特征在于,所述协议包括delivery协议;并且游离在共识集群之外的leaner节点则通过优先与本组织内的consenter节点建立的delivery连接完成区块的同步工作。

8.根据权利要求3所述的轻量化的分布式账本构建方法,其特征在于,以可配置背书节点数量的共识算法及系统链实现共识交易流程,包括子步骤:

9.一种轻量化的分布式账本构建设备,其特征在于,包括:

10.一种可读存储介质,其特征在于,在可读存储介质中存储有计算机程序,所述计算机程序被处理器加载并执行如权利要求1~8任一项所述的方法。


技术总结
本发明公开了一种轻量化的分布式账本构建方法、设备及介质,属于分布式账本构建领域,包括步骤:通过将共识与排序融合构建共识网络;再以可配置背书节点数量的共识算法及系统链实现对整个账本的多通道支持,以及可配置背书节点数量的共识算法及系统链实现共识交易流程。本发明实现了一种相对轻便和高效的分布式账本构建方式。

技术研发人员:邱钰超,杨艳梅,赵晓锋,白健
受保护的技术使用者:中国电子科技集团公司第三十研究所
技术研发日:
技术公布日:2024/1/13
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1