一种区块链中共识节点动态增加方法及装置制造方法及图纸

技术编号:24103635 阅读:17 留言:0更新日期:2020-05-09 14:30
本申请涉及一种区块链中共识节点动态增加方法及装置,其中方法包括:接收新的参与方发起的在共识网络中注册为新共识节点的注册请求;其中,所述注册请求用于向所述共识网络发起注册;根据所述注册请求,生成写有新共识网络的拓扑信息的网络更新区块;其中,所述新共识网络中包括共识网络中的共识节点及新共识节点;将所述共识网络中的区块信息以及所述网络更新区块同步至所述参与方及共识节点,得到所述新共识网络。本申请解决了新加入共识网络的节点通过状态机复制进行账本区块的数据同步,状态机复制会导致本地重放交易的计算量非常大,性能较低的问题;无需进行重放交易,进而可以有效降低同步时的各个共识节点的计算量、提高同步的效率。

A dynamic adding method and device of consensus nodes in blockchain

【技术实现步骤摘要】
一种区块链中共识节点动态增加方法及装置
本申请涉及区块链
,尤其涉及一种区块链中共识节点动态增加方法及装置。
技术介绍
大部分的BFTSMR(状态机复制系统)都假设共识网络拓扑是静态的,不会随着时间而增长或者收缩。即便少数区块链系统实现了共识网络拓扑中共识节点的动态配置,但由于采用了状态机复制的技术,在大业务量的情况下其极低的性能也使得用于工程实践变得困难。另外,有的区块链系统虽然声称实现了共识节点的动态配置,但都是在停机或者业务暂停的基础上进行的。随着区块链技术的发展,以及区块链商业化应用的趋势,势必需要一种实用的共识节点动态添加方案。针对相关技术中存在的诸多技术问题,目前尚未提供有效的解决方案。
技术实现思路
为了解决上述技术问题或者至少部分地解决上述技术问题,本申请提供了一种区块链中共识节点动态增加方法及装置。第一方面,本申请提供了一种区块链中共识节点动态增加方法,包括:接收新的参与方发起的在共识网络中注册为新共识节点的注册请求;其中,所述注册请求用于向所述共识网络发起注册;根据所述注册请求,生成写有新共识网络的拓扑信息的网络更新区块;其中,所述新共识网络中包括共识网络中的共识节点及新共识节点;将所述共识网络中的区块信息以及所述网络更新区块同步至所述参与方及共识节点,得到所述新共识网络。可选的,如前述的方法,所述根据所述注册请求,生成写有新共识网络的拓扑信息的网络更新区块,包括:所述共识网络中的共识节点对所述注册请求进行拜占庭容错共识;所述注册请求中的内容包括所述参与方的信息,所述参与方的信息包括:所述参与方的网络地址、端口号;在共识达成后,根据所述注册请求生成网络更新区块。可选的,如前述的方法,在将所述共识网络中的区块信息以及所述网络更新区块同步至所述参与方及共识节点之前,还包括:接收所述参与方发起的区块信息获取请求;根据所述区块信息获取请求,向所述参与方反馈各个共识节点的当下的区块信息;用于使所述参与方从各个所述共识节点中选取区块信息完备的共识节点进行区块信息同步。可选的,如前述的方法,所述将所述共识网络中的区块信息以及所述网络更新区块同步至所述参与方,包括:接收所述参与方向数据源节点发起的区块同步请求;其中,所述数据源节点为所述区块信息完备的共识节点;根据所述区块同步请求将所述数据源节点中的已有区块信息同步至所述参与方。可选的,如前述的方法,所述根据所述区块同步请求将所述数据源节点中的已有区块信息同步至所述参与方,包括:确定所述数据源节点中的各个已有区块信息对应的键值对数据集;将所述键值对数据集从数据源节点对应的源数据库中拉取出后,存储至所述参与方的数据库中。可选的,如前述的方法,将所述共识网络中的区块信息以及所述网络更新区块同步至所述共识节点,包括:接收所述参与方发送的更新配置信息;根据所述更新配置信息通知所述共识网络中的所述共识节点进行区块更新,使每个所述共识节点更新得到所述网络更新区块。可选的,如前述的方法,还包括:在同步时段内所述共识网络中达成新共识,并生成新区块信息时,对所述新共识节点进行所述新区块信息同步;所述同步时段为:将所述共识网络中的区块信息以及所述网络更新区块同步至所述参与方的时段。可选的,如前述的方法,所述对所述新共识节点进行所述新区块信息同步,包括:在所述新共识节点通过与共识节点进行比较,确定其他共识节点中包括所述新区块之后,通过状态机复制的方式对所述新区块对应的交易进行重放,使所述新共识节点中生成所述新区块。第二方面,本申请提供了一种区块链中共识节点动态增加装置,其特征在于,包括:接收模块,用于接收新的参与方发起的在共识网络中注册为新共识节点的注册请求;其中,所述注册请求用于向所述共识网络发起注册;注册模块,用于根据所述注册请求,生成写有新共识网络的拓扑信息的网络更新区块;其中,所述新共识网络中包括共识网络中的共识节点及新共识节点;同步模块,用于将所述共识网络中的区块信息以及所述网络更新区块同步至所述参与方及共识节点,得到所述新共识网络。第三方面,本申请提供了一种电子设备,包括:处理器、通信接口、存储器和通信总线,其中,所述处理器、通信接口和存储器通过通信总线完成相互间的通信;所述存储器,用于存放计算机程序;所述处理器,用于执行所述计算机程序时,实现如前述任一项所述的处理方法。第四方面,本申请提供了一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行如前述任一项所述的处理方法。本申请实施例提供了一种区块链中共识节点动态增加方法及装置,其中方法包括:接收新的参与方发起的在共识网络中注册为新共识节点的注册请求;其中,所述注册请求用于向所述共识网络发起注册;根据所述注册请求,生成写有新共识网络的拓扑信息的网络更新区块;其中,所述新共识网络中包括共识网络中的共识节点及新共识节点;将所述共识网络中的区块信息以及所述网络更新区块同步至所述参与方及共识节点,得到所述新共识网络。本申请实施例提供的上述技术方案相对相关技术而言,解决了新加入共识网络的节点通过状态机复制进行账本区块的数据同步,状态机复制会导致本地重放交易的计算量非常大,性能较低的问题;无需进行重放交易,进而在共识网络中添加共识节点的时候,可以有效降低进行区块信息同步时的各个共识节点的计算量、提高同步的效率。附图说明此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本专利技术的实施例,并与说明书一起用于解释本专利技术的原理。为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本申请实施例提供的一种区块链中共识节点动态增加方法的方法流程示意图;图2为本申请另一实施例提供的一种区块链中共识节点动态增加方法的方法流程示意图;图3为本申请另一实施例提供的一种区块链中共识节点动态增加方法的方法流程示意图;图4为本申请另一实施例提供的一种区块链中共识节点动态增加方法的方法流程示意图;图5为本申请另一实施例提供的一种区块链中共识节点动态增加方法的方法流程示意图;图6为本申请另一实施例提供的一种区块链中共识节点动态增加方法的方法流程示意图;图7为本申请另一实施例提供的一种区块链中共识节点动态增加方法的方法流程示意图;图8为本申请一种应用例的处理方法流程图;图9为本申请实施例提供的一种区块链中共识节点动态增加装置的框图;图10为本申请实施例提供的一种电子设备的结构示意图。具体实施方式为使本申请实施例的目的、技术方案和优点更加清楚本文档来自技高网...

【技术保护点】
1.一种区块链中共识节点动态增加方法,其特征在于,包括:/n接收新的参与方发起的在共识网络中注册为新共识节点的注册请求;其中,所述注册请求用于向所述共识网络发起注册;/n根据所述注册请求,生成写有新共识网络的拓扑信息的网络更新区块;其中,所述新共识网络中包括共识网络中的共识节点及新共识节点;/n将所述共识网络中的区块信息以及所述网络更新区块同步至所述参与方及共识节点,得到所述新共识网络。/n

【技术特征摘要】
1.一种区块链中共识节点动态增加方法,其特征在于,包括:
接收新的参与方发起的在共识网络中注册为新共识节点的注册请求;其中,所述注册请求用于向所述共识网络发起注册;
根据所述注册请求,生成写有新共识网络的拓扑信息的网络更新区块;其中,所述新共识网络中包括共识网络中的共识节点及新共识节点;
将所述共识网络中的区块信息以及所述网络更新区块同步至所述参与方及共识节点,得到所述新共识网络。


2.根据权利要求1所述的方法,其特征在于,所述根据所述注册请求,生成写有新共识网络的拓扑信息的网络更新区块,包括:
所述共识网络中的共识节点对所述注册请求进行拜占庭容错共识;所述注册请求中的内容包括所述参与方的信息,所述参与方的信息包括:所述参与方的网络地址、端口号;
在共识达成后,根据所述注册请求生成网络更新区块。


3.根据权利要求1所述的方法,其特征在于,在将所述共识网络中的区块信息以及所述网络更新区块同步至所述参与方及共识节点之前,还包括:
接收所述参与方发起的区块信息获取请求;
根据所述区块信息获取请求,向所述参与方反馈各个共识节点的当下的区块信息;用于使所述参与方从各个所述共识节点中选取区块信息完备的共识节点进行区块信息同步。


4.根据权利要求3所述的方法,其特征在于,所述将所述共识网络中的区块信息以及所述网络更新区块同步至所述参与方,包括:
接收所述参与方向数据源节点发起的区块同步请求;其中,所述数据源节点为所述区块信息完备的共识节点;
根据所述区块同步请求将所述数据源节点中的已有区块信息同步至所述参与方。


5.根据权利要求4所述的方法,其特征在于,所述根据所述区块同步请求将所述数据源节点中的已有区块信息同步至所述参与方,包括:
确定所述数据源节点中的各个已有区块信息对应的键值对数据集;
将所述键值对数据集从数据源节点对应的源数据库中拉取出后,存储至所述参与方的数据库中。

【专利技术属性】
技术研发人员:张爽
申请(专利权)人:北京海益同展信息科技有限公司
类型:发明
国别省市:北京;11

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

1