区块链共识方法和装置转让专利

申请号 : CN202011542986.7

文献号 : CN112738178B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 陈闻宇李晨

申请人 : 北京米弘科技有限公司

摘要 :

本申请公开了一种区块链共识方法和装置,通过响应于接收到待达成共识的网络探测结果信息的第一属性信息,确定区块链中处理所述网络探测结果信息的共识处理区域;基于所述共识处理区域内的共识策略,确定至少一个满足所述共识策略的共识节点;响应于所述待达成共识的网络探测结果信息的第二属性信息包括指示全网共享信息,将所述共识节点对所述待达成共识的网络探测结果信息的共识处理结果发送至非共识处理区域内。进而解决相关技术中共识技术无法解决区块链网络在可扩展性、性能和共识安全性上存在的权衡问题,不能直接应用于广域网络监测应用中的技术问题。

权利要求 :

1.一种区块链共识方法,包括:

根据区块链的业务特性对区块链进行区域划分,每个区域通过一个区域验证者作为区域通信节点,区块链节点在加入区块链时,根据定义的区域确定节点的区域属性;

响应于接收到待达成共识的网络探测结果信息的第一属性信息,确定区块链中处理所述网络探测结果信息的共识处理区域;

基于所述共识处理区域内的共识策略,确定至少一个满足所述共识策略的共识节点;

响应于所述待达成共识的网络探测结果信息的第二属性信息包括指示全网共享信息,将所述共识节点对所述待达成共识的网络探测结果信息的共识处理结果发送至非共识处理区域内的区域通信节点。

2.根据权利要求1所述的区块链共识方法,其特征在于,响应于接收到待达成共识的网络探测结果信息的第一属性信息,确定区块链中处理所述网络探测结果信息的共识处理区域包括:响应于接收到待达成共识的网络探测结果信息,对所述待达成共识的网络探测结果信息进行解析,得到待达成共识的网络探测结果信息的业务特性信息;

基于所述待达成共识的网络探测结果信息的业务特性信息,确定区块链中处理所述网络探测结果信息的共识处理区域。

3.根据权利要求1所述的区块链共识方法,其特征在于,所述基于所述共识处理区域内的共识策略,确定至少一个满足所述共识策略的共识节点包括:基于所述共识处理区域内的共识策略,确定支持共识策略中包含的共识算法的多个共识节点;

从所述多个共识节点中选定完成共识处理所需共识节点数量的共识节点。

4.根据权利要求1所述的区块链共识方法,其特征在于,所述基于所述共识处理区域内的共识策略,确定至少一个满足所述共识策略的共识节点包括:基于所述共识处理区域内的共识策略,确定共识处理区域内提供共识服务的至少一个共识节点;

将确定的所述至少一个共识节点信息广播至非共识处理区域内的节点;

接收非共识处理区域内的节点对所述至少一个共识节点的投票结果指示确定同意提供共识服务;

从所述至少一个共识节点中选定完成共识处理所需共识节点数量的共识节点。

5.根据权利要求1所述的区块链共识方法,其特征在于,所述响应于所述待达成共识的网络探测结果信息的第二属性信息包括指示全网共享信息,将所述共识节点对所述待达成共识的网络探测结果信息的共识处理结果发送至非共识处理区域内包括:响应于所述待达成共识的网络探测结果信息的第二属性信息包括指示全网共享信息,将所述共识节点对所述待达成共识的网络探测结果信息的共识处理结果发送至未参与共识的区块链区域内;

存储所述共识处理结果至区块链中。

6.一种区块链共识装置,

根据区块链的业务特性对区块链进行区域划分,每个区域通过一个区域验证者作为区域通信节点,区块链节点在加入区块链时,根据定义的区域确定节点的区域属性,包括:第一确定单元,被配置成响应于接收到待达成共识的网络探测结果信息的第一属性信息,确定区块链中处理所述网络探测结果信息的共识处理区域;

第二确定单元,被配置成基于所述共识处理区域内的共识策略,确定至少一个满足所述共识策略的共识节点;

广播单元,被配置成响应于所述待达成共识的网络探测结果信息的第二属性信息包括指示全网共享信息,将所述共识节点对所述待达成共识的网络探测结果信息的共识处理结果发送至非共识处理区域内的区域通信节点。

7.根据权利要求6所述的区块链共识装置,其特征在于,所述第一确定单元进一步被配置成响应于接收到待达成共识的网络探测结果信息,对所述待达成共识的网络探测结果信息进行解析,得到待达成共识的网络探测结果信息的业务特性信息;

基于所述待达成共识的网络探测结果信息的业务特性信息,确定区块链中处理所述网络探测结果信息的共识处理区域。

8.根据权利要求6所述的区块链共识装置,其特征在于,所述第二确定单元进一步被配置成:基于所述共识处理区域内的共识策略,确定支持共识策略中包含的共识算法的多个共识节点;

从所述多个共识节点中选定完成共识处理所需共识节点数量的共识节点。

9.根据权利要求6所述的区块链共识装置,其特征在于,所述第二确定单元进一步被配置成:基于所述共识处理区域内的共识策略,确定共识处理区域内提供共识服务的至少一个共识节点;

将确定的所述至少一个共识节点信息广播至非共识处理区域内的节点;

响应于接收到非共识处理区域内的节点对所述至少一个共识节点的投票结果指示确定同意提供共识服务;

从所述至少一个共识节点中选定完成共识处理所需共识节点数量的共识节点。

10.根据权利要求6所述的区块链共识装置,其特征在于,所述广播单元进一步被配置成:响应于所述待达成共识的网络探测结果信息的第二属性信息包括指示全网共享信息,将所述共识节点对所述待达成共识的网络探测结果信息的共识处理结果发送至未参与共识的区块链区域内;

存储所述共识处理结果至区块链中。

说明书 :

区块链共识方法和装置

技术领域

[0001] 本申请涉及网络共识领域,具体而言,涉及一种区块链共识方法和装置。

背景技术

[0002] 区块链的共识技术解决了去中心化环境中节点间的互相信任问题。相关各主流共识技术在可扩展性、交易性能和安全上存在权衡考虑,PoW和PoS类共识基于出块激励机制。PoW可扩展性好,但是交易性能很低。PoS类共识无需复杂度高的挖矿计算,提高交易性能,但是在网络安全性上存在挑战。相比而言,BFT类共识确定2/3以上可信投票,增加了达成共识的安全性,但是在全网节点参与情况下达成共识的通信代价大,存在可扩展性问题。在共识中引入委员会的方法虽然降低了达成共识所需的节点数量,但委员会类共识一般适用于可信网络,并不适用于每个节点可自由加入和离开的广域网监测应用。
[0003] 针对相关技术中,共识技术无法解决区块链网络在可扩展性、性能和共识安全性上存在的权衡问题,不能直接应用于广域网络监测应用中。

发明内容

[0004] 本申请的主要目的在于提供一种区块链共识方法和装置,以解决区块链网络在可扩展性、性能和共识安全性上存在的权衡问题,不能直接应用于广域网络监测应用中。
[0005] 为了实现上述目的,第一方面,本申请提供了一种区块链共识方法。
[0006] 根据本申请的区块链共识方法包括:响应于接收到待达成共识的网络探测结果信息的第二属性信息,确定区块链中处理所述网络探测结果信息的共识处理区域;基于所述共识处理区域内的共识策略,确定至少一个满足所述共识策略的共识节点;响应于所述待达成共识的网络探测结果信息的第二属性信息包括指示全网共享信息,将所述共识节点对所述待达成共识的网络探测结果信息的共识处理结果发送至非共识处理区域内。
[0007] 在一些实施例中,响应于接收到待达成共识的网络探测结果信息的第一属性信息,确定区块链中处理所述网络探测结果信息的共识处理区域包括:响应于接收到待达成共识的网络探测结果信息,对所述待达成共识的网络探测结果信息进行解析,得到待达成共识的网络探测结果信息的业务特性信息;基于所述待达成共识的网络探测结果信息的业务特性信息,确定区块链中处理所述网络探测结果信息的共识处理区域。
[0008] 在一些实施例中,基于所述共识处理区域内的共识策略,确定至少一个满足所述共识策略的共识节点包括:基于所述共识处理区域内的共识策略,确定支持共识策略中包含的共识算法的共识节点;从多个共识节点中选定完成共识处理所需共识节点数量的共识节点。
[0009] 在一些实施例中,基于共识处理区域内的共识策略,确定至少一个满足所述共识策略的共识节点包括:基于共识处理区域内的共识策略,确定共识处理区域内提供共识服务的至少一个共识节点;将确定的至少一个共识节点信息广播至非共识处理区域内的节点;响应于接收到非共识处理区域内的节点对所述至少一个共识节点的投票结果指示确定同意提供共识服务,将至少一个共识节点确定为共识处理区域内的共识节点。
[0010] 在一些实施例中,响应于所述待达成共识的网络探测结果信息的第二属性信息包括指示全网共享信息,将所述共识节点对所述待达成共识的网络探测结果信息的共识处理结果发送至非共识处理区域内包括:响应于所述待达成共识的网络探测结果信息的第二属性信息包括指示全网共享信息,将所述共识节点对所述待达成共识的网络探测结果信息的共识处理结果发送至未参与共识的区块链区域内;存储所述共识处理结果至区块链中。
[0011] 第二方面,本申请还提供了一种区块链共识装置包括:第一确定单元,被配置成响应于接收到待达成共识的网络探测结果信息的第一属性信息,确定区块链中处理所述网络探测结果信息的共识处理区域;第二确定单元,被配置成基于所述共识处理区域内的共识策略,确定至少一个满足所述共识策略的共识节点;广播单元,被配置成响应于所述待达成共识的网络探测结果信息的第二属性信息包括指示全网共享信息,将所述共识节点对所述待达成共识的网络探测结果信息的共识处理结果发送至非共识处理区域内。
[0012] 在一些实施例中,第一确定单元进一步被配置成响应于接收到待达成共识的网络探测结果信息,对所述待达成共识的网络探测结果信息进行解析,得到待达成共识的网络探测结果信息的业务特性信息;基于所述待达成共识的网络探测结果信息的业务特性信息,确定区块链中处理所述网络探测结果信息的共识处理区域。
[0013] 在一些实施例中,第二确定单元进一步被配置成:基于所述共识处理区域内的共识策略,确定支持共识策略中包含的共识算法的共识节点;从多个共识节点中选定完成共识处理所需共识节点数量的共识节点。
[0014] 在一些实施例中,第二确定单元进一步被配置成;基于共识处理区域内的共识策略,确定共识处理区域内提供共识服务的至少一个共识节点;将确定的所述至少一个共识节点信息广播至非共识处理区域内的节点;响应于接收到非共识处理区域内的节点对至少一个共识节点的投票结果指示确定同意提供共识服务,将至少一个共识节点确定为共识处理区域内的共识节点。在一些实施例中,广播单元进一步被配置成:响应于所述待达成共识的网络探测结果信息的第二属性信息包括指示全网共享信息,将所述共识节点对所述待达成共识的网络探测结果信息的共识处理结果发送至未参与共识的区块链区域内;存储所述共识处理结果至区块链中。
[0015] 在本申请实施例中,提供一种区块链共识方法和装置,通过响应于接收到待达成共识的网络探测结果信息的第一属性信息,确定区块链中处理所述网络探测结果信息的共识处理区域;基于所述共识处理区域内的共识策略,确定至少一个满足所述共识策略的共识节点;响应于所述待达成共识的网络探测结果信息的第二属性信息包括指示全网共享信息,将所述共识节点对所述待达成共识的网络探测结果信息的共识处理结果发送至非共识处理区域内。进而解决相关技术中共识技术无法解决区块链网络在可扩展性、性能和共识安全性上存在的权衡问题,不能直接应用于广域网络监测应用中的技术问题。

附图说明

[0016] 构成本申请的一部分的附图用来提供对本申请的进一步理解,使得本申请的其它特征、目的和优点变得更明显。本申请的示意性实施例附图及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
[0017] 图1是根据本申请实施例提供的一种区块链共识方法的流程图;
[0018] 图2是根据本申请实施例提供的一种区块链共识装置的结构图。

具体实施方式

[0019] 为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
[0020] 需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0021] 并且,上述部分术语除了可以用于表示方位或位置关系以外,还可能用于表示其他含义,例如术语“上”在某些情况下也可能用于表示某种依附关系或连接关系。对于本领域普通技术人员而言,可以根据具体情况理解这些术语在本申请中的具体含义。
[0022] 另外,术语“多个”的含义应为两个以及两个以上。
[0023] 需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
[0024] 图1示出了区块链共识方法的一种实施例,包括:
[0025] 步骤101,响应于接收到待达成共识的网络探测结果信息的第二属性信息,确定区块链中处理所述网络探测结果信息的共识处理区域。
[0026] 在本实施例一些可选的实现方式中,响应于接收到待达成共识的网络探测结果信息的第一属性信息,确定区块链中处理网络探测结果信息的共识处理区域包括:响应于接收到待达成共识的网络探测结果信息,对待达成共识的网络探测结果信息进行解析,得到待达成共识的网络探测结果信息的业务特性信息;基于待达成共识的网络探测结果信息的业务特性信息,确定区块链中处理网络探测结果信息的共识处理区域。业务特性信息可以包括如网站响应速度、带宽、丢包率等网络和页面技术参数等。
[0027] 在本实施例中,待达成共识的网络探测结果信息,可以是预先确定数据的业务类型,然后执行网络探测任务,生成待达成共识的业务数据。在执行主体执行步骤101之前,可预先对区块链区域化,即可预先根据区块链的业务特性对区块链进行区域划分,每个区域通过选举或指定一个区域验证者作为区域通信节点,区块链节点在加入区块链时,需要根据定义的区域确定节点的区域属性。通过对全网络节点按网络区域分区,解决网络扩展对共识性能的显著影响。区域可以是网络物理区域、业务特定区域和具有相同特性的节点区域,使得区域内探测任务执行结果独立于其它划分区域。全局网络共识按区域划分为区域内共识,无需考虑区域外数据。每个区域指定或选举产生一个验证者节点,该节点为全节点,将区域通信简化为验证者间的通信。在通信方面,每个区域是相互独立的。除验证者外,区域间的通信无需同步机制,这样无须状态锁定,简化了全网通信。区域内广播独立,不传播到其它区域。每个区域可采用独立的账本,独立的出块候选/竞争机制。在区域规模不发生显著变化的情况下,每个节点占用资源不会随全网的扩展而提升。
[0028] 执行主体或其他处理设备均可对待达成共识的网络探测结果信息进行解析,得到待达成共识的网络探测结果信息的第一属性信息,例如,可以是表明可被预先划分的区块链区域进行处理的区域化特性信息,而后根据该第一属性信息确定共识处理区域。
[0029] 步骤102,基于共识处理区域内的共识策略,确定至少一个满足所述共识策略的共识节点。
[0030] 共识处理区域内的共识策略可以是现有的共识策略,也可以是未来新开发的共识策略,对此不作限定。为了保证区域化共识结果的合法性,区块链节点可将选择的共识区域广播给区域中其他区块链节点。
[0031] 作为本实施例一种可选的实现方式,基于共识处理区域内的共识策略,确定至少一个满足所述共识策略的共识节点包括:基于共识处理区域内的共识策略,确定支持共识策略中包含的共识算法的多个共识节点;从所述多个共识节点中选定完成共识处理所需共识节点数量的共识节点。
[0032] 在本实施例中,可根据区域内共识节点所支持的共识算法,确定支持所述共识策略中包含的共识算法的共识节点,并直接从确定的共识节点中选择满足所需数量的共识节点。
[0033] 作为本实施例一种可选的实现方式,基于所述共识处理区域内的共识策略,确定至少一个满足所述共识策略的共识节点包括:基于共识处理区域内的共识策略,确定共识处理区域内提供共识服务的至少一个共识节点;将确定的至少一个共识节点信息广播至非共识处理区域内的节点;接收非共识处理区域内的节点对所述至少一个共识节点的投票结果指示确定同意提供共识服务;从至少一个共识节点中选定完成共识处理所需共识节点数量的共识节点。
[0034] 在本实施例中,可首先根据区域共识算法,从区域中选择提供共识服务的至少一个共识节点,而后将选择的共识节点广播给其他区域内区块链节点,使区域内其他区块链节点对是否同意由选择的共识节点提供共识服务进行投票。在接收到所述其他区块链节点发送的共识通过消息时,将业务数据(待达成共识的网络探测信息)发送给选择的共识节点,共识节点对业务数据进行共识处理得到共识处理结果。
[0035] 针对业务数据从共识网络中选择部分区域化共识节点达成共识,避免由于参与共识节点的数量过多导致共识处理时间过长的问题。可保证降低达成共识的时间,又能够保证共识处理结果的正确性,有效提升了区块链网络的交易性能,进而提高基于区块链的网络监测业务数据的处理效率。
[0036] 步骤103,响应于待达成共识的网络探测结果信息的第二属性信息包括指示全网共享信息,将共识节点对待达成共识的网络探测结果信息的共识处理结果发送至非共识处理区域内。
[0037] 在本实施例中,判断是否包含的可用于判断是否进行全网共享的属性信息可以从待达成共识的网络探测结果信息的属性信息中进行判断,也可以从基于步骤102中得到的共识处理结果中得到是否需要共享的指示信息。
[0038] 作为本实施例一种可选的实现方式,响应于待达成共识的网络探测结果信息的第二属性信息包括指示全网共享信息,将共识节点对待达成共识的网络探测结果信息的共识处理结果发送至未参与共识的区块链区域内;存储所述共识处理结果至区块链中。
[0039] 若共识结果需要全网共享,将所述业务数据的共识结果发送给全网中未参与共识的区域通信节点,并将对应业务数据的共识结果存储至区块链中。
[0040] 区域间的通信无需同步机制,降低了区块链全网通信代价。
[0041] 本实施例通过响应于接收到待达成共识的网络探测结果信息的第一属性信息,确定区块链中处理所述网络探测结果信息的共识处理区域;基于共识处理区域内的共识策略,确定至少一个满足所述共识策略的共识节点;响应于待达成共识的网络探测结果信息的第二属性信息包括指示全网共享信息,将共识节点对待达成共识的网络探测结果信息的共识处理结果发送至非共识处理区域内,实现了区域化共识,即可以根据网络探测任务包含的属性信息,确定提供共识服务的共识区域,对该业务数据进行共识处理,避免了由于参与共识节点的数量过多导致共识处理时间过长的问题,有效提升了区块链网络的业务数据处理效率。
[0042] 参考图2,图2示出了,区块链共识装置的一种实施例,装置包括:
[0043] 第一确定单元201,可被配置成响应于接收到待达成共识的网络探测结果信息的第一属性信息,确定区块链中处理所述网络探测结果信息的共识处理区域。
[0044] 作为本实施例一种可选的实现方式,第一确定单元进一步被配置成响应于接收到待达成共识的网络探测结果信息,对所述待达成共识的网络探测结果信息进行解析,得到待达成共识的网络探测结果信息的业务特性信息。
[0045] 第二确定单元202,可以被配置成基于所述共识处理区域内的共识策略,确定至少一个满足共识策略的共识节点
[0046] 作为本实施例一种可选的实现方式中,第二确定单元进一步被配置成:基于所述共识处理区域内的共识策略,确定支持共识策略中包含的共识算法的多个共识节点;从所述多个共识节点中选定完成共识处理所需共识节点数量的共识节点。
[0047] 作为本实施例一种可选的实现方式,第二确定单元可进一步被配置成:基于共识处理区域内的共识策略,确定共识处理区域内提供共识服务的至少一个共识节点;将确定的至少一个共识节点信息广播至非共识处理区域内的节点;响应于接收到非共识处理区域内的节点对所述至少一个共识节点的投票结果指示确定同意提供共识服务;从至少一个共识节点中选定完成共识处理所需共识节点数量的共识节点。
[0048] 广播单元203,被配置成响应于待达成共识的网络探测结果信息的第二属性信息包括指示全网共享信息,将所述共识节点对所述待达成共识的网络探测结果信息的共识处理结果发送至非共识处理区域内。
[0049] 作为本实施例一种可选的实现方式,广播单元进一步被配置成:响应于待达成共识的网络探测结果信息的第二属性信息包括指示全网共享信息,将所述共识节点对所述待达成共识的网络探测结果信息的共识处理结果发送至未参与共识的区块链区域内;存储共识处理结果至区块链中。
[0050] 以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。