利索能及
我要发布
收藏
专利号: 2018104367198
申请人: 南京邮电大学
专利类型:发明专利
专利状态:已下证
更新日期:2026-05-14
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种基于动态授权和网络环境感知的区块链自适应共识方法,其特征是,包括如下几个步骤:步骤1)分簇:根据地理位置对区块链网络节点进行分簇,同一簇内选出一个授权代表,具体步骤为:

11)区块链共识模块扫描并得到所有可参与共识认证过程的节点数量;

12)共识模块根据地理位置对可参与共识验证节点初步分簇,先将不同国家、地区的节点分开;

13)共识模块根据所需验证的业务的类型、规模、重要程度参数决定所需共识节点的数量;

14)再依据所需共识节点数量和可参与共识验证节点数量的比例得到需要分的簇数,并进一步细化分簇;当分簇完成后,每一簇将会随机选出一个节点作为授权代表代表本簇内所有节点来参与验证本次交易步骤2)共识:每一簇内选出的授权代表组成验证本次交易的全部共识节点,共识节点间采用使用拜占庭容错算法来对本次交易是否成立达成共识;

步骤3)环境自适应感知:根据网络规模、拓扑、资源或业务类型的变化调整或重新分簇;

步骤4)动态更新授权:一笔交易完成验证后,在下一笔交易中,不论分簇有无变化,都需要更新授权代表;在下一笔交易的分簇完成后,授权代表的选择将优先考虑本簇内最近几笔交易都未被选中为授权代表的节点。

2.根据权利要求1所述的一种基于动态授权和网络环境感知的区块链自适应共识方法,其特征是,所述步骤2)的具体内容为:假定故障节点数不到总节点数的三分之一,即若有f个故障节点,则总节点数至少为3f+1;节点分为主节点和从节点,主节点负责将客户端的请求排序,从节点按照主节点提供的顺序执行请求;

每个节点在同样的配置信息下工作,该配置信息称为视图;主节点变化,视图也随之变化;所有节点必须从同一状态开始且它们在给定状态给定参数的条件下,同一操作总是产生相同结果。

3.根据权利要求2所述的一种基于动态授权和网络环境感知的区块链自适应共识方法,其特征是,所述步骤2)的具体步骤为:

21)客户端向主节点发送调用服务操作的请求;

22)主节点收到请求后,启动一个三阶段的一致性协议向各从节点广播该请求;

23)节点收到请求后会根据自身状况执行请求,并将执行后的结果回复给客户端,若节点是正常节点没有故障,则正确执行请求;

24)客户端等待来自不同节点的回复,若有f+1条相同回复,则该回复为运算结果。

4.根据权利要求3所述的一种基于动态授权和网络环境感知的区块链自适应共识方法,其特征是,所述三阶段的一致性协议为PBFT算法的一致性协议,包括预准备pre-prepare,准备prepare和提交commit三个阶段;

在pre-prepare阶段,主节点给当前从客户端收到的请求分配一个序列号n,并将一个带有n和客户端请求消息m的pre-prepare消息广播至各从节点;若从节点i接收了主节点广播的消息,进入prepare阶段;接收消息需要满足一定的条件,即pre-prepare消息和m消息的签名都是正确的,该节点所在视图还未接收过pre-prepare消息,且pre-prepare消息的序号n在h到H之间;h和H是主节点可分配的最小和最大的序号;

从节点进入prepare阶段后会向包括主节点的其他节点广播prepare消息;各节点判断prepare消息是否为真,判定条件是:视图编号与当前节点视图编号一致、签名正确、序列号在h到H之间;若为真,则接收prepare消息并将该消息追加到本地记录中,然后再向所有节点广播一条commit消息,进入commit阶段;

Commit阶段中,节点会判断收到的commit消息是否为真,判定条件是:视图编号与当前节点视图编号一致、签名正确、序列号在h到H之间;若为真,则接收commit消息并执行消息m请求的操作,然后将commit消息写入本地记录,并发送回复给客户端。

5.根据权利要求1所述的一种基于动态授权和网络环境感知的区块链自适应共识方法,其特征是,所述步骤3)的具体内容为:当完成上一笔交易的验证,下一笔交易开始时,如果可参与共识验证的节点数量或者计算资源没有变化,则继续执行步骤2)完成分簇;

当网络规模或计算资源发生变化时,共识模块会在最终分簇之前感知到这些变化并相应地调整分簇的数量。