一种基于贡献值的高可靠性区块链共识方法及系统技术方案

技术编号:28682796 阅读:42 留言:0更新日期:2021-06-02 03:01
本发明专利技术公开了一种基于贡献值的高可靠性区块链共识方法及系统,包括:收集区块链系统中节点的信息,为各节点分配贡献值并进行降序排序;采用“均值迁移”的动态分组方法对降序列表进行动态分组;计算分组后各组的组间难度和每组内节点的组内难度,确定各节点的PoW计算难度值;各节点根据各自的难度值开始PoW计算,将率先完成计算的节点作为本轮生成新区块的出块节点;基于出块节点外的其他节点,验证区块链系统选取的出块节点是否符合创建新区块的要求。本发明专利技术可解决现有共识机制中节点贡献值相差不大但节点获得出块权利的概率相差很大的问题,加强节点出块概率与节点贡献值的拟合程度,以及提高系统的出块效率和备灾效果。

【技术实现步骤摘要】
一种基于贡献值的高可靠性区块链共识方法及系统
本专利技术涉及区块链
,具体涉及一种基于贡献值的高可靠性区块链共识方法及系统。
技术介绍
在基于贡献值的共识机制(PoC)中,系统将贡献值大小作为选取出块节点的唯一依据,这使系统存在强确定性问题。当受到网络环境的影响,贡献值最大的节点可能出现非正常下线等突发情况,系统无法正常完成出块,其它节点只能处于一种等待的状态,导致系统长时间挂起。因此,需要一种全新的方案,在确保贡献值最大的节点出块可能性最大的前提下,保障系统在遇到任何突发情况时,节点都可以出块,不会让系统长时间挂起。基于贡献值和难度值的共识机制(PoCW)的提出可有效的解决了基于贡献值的共识机制(PoC)中存在的上述问题。引入工作量证明(PoW),区块链系统根据节点的贡献值大小为节点分配用于PoW计算的难度值,率先完成PoW计算的节点获得出块的权利,这使得排名靠后的节点存在了出块的可能性。当贡献值最大的节点率先完成了PoW计算,在该节点出块的过程中出现了非正常下线的情况,此时将由下一个优先结束PoW计算的节点获得出块权利,保证了本文档来自技高网...

【技术保护点】
1.一种基于贡献值的高可靠性区块链共识方法,其特征在于,包括:/n步骤1、收集区块链系统中节点的信息,为各节点分配贡献值并进行降序排序,得到一个降序列表C

【技术特征摘要】
1.一种基于贡献值的高可靠性区块链共识方法,其特征在于,包括:
步骤1、收集区块链系统中节点的信息,为各节点分配贡献值并进行降序排序,得到一个降序列表CList;
步骤2、采用“均值迁移”的动态分组方法对所述降序列表CList进行动态分组;
步骤3、计算分组后各组的组间难度和每组内节点的组内难度,确定各节点的PoW计算难度值H;
步骤4、各节点根据各自的难度值H开始PoW计算,将率先完成计算的节点作为本轮生成新区块的出块节点;
步骤5、基于所述出块节点外的其他节点,验证区块链系统选取的所述出块节点是否符合创建新区块的要求。


2.如权利要求1所述的共识方法,其特征在于,在所述步骤1中,
所述贡献值是节点加入区块链网络系统后,节点进行符合系统规范的活动后被系统赋予的一种参数,对于每一个初次加入到区块链网络中的节点,贡献值将被初始化为0。


3.如权利要求1所述的共识方法,其特征在于,在所述步骤1中,所述降序排序包括:
在一个既定的出块周期T后,统计系统内所有节点的贡献值大小,并进行降序排序得到一个降序列表CList。


4.如权利要求1所述的共识方法,其特征在于,在所述步骤2中,所述“均值迁移”的动态分组方法,包括:
步骤21、计算贡献值列表CList中相邻节点贡献值之差的平均值其中,贡献值列表CList={C1,C2,…,Cn},n为区块链系统内节点的个数;
步骤22、初始化节点所在集合Gj=Φ(j=1,2,..,n),并且初始化节点序号i=1,节点组号j=1及G1={C1},CList列表中节点C1的组号j=1;
步骤23、确定各节点所在组Gj:判断Ci-Ci+1之差是否大于若大于,则节点Ci和节点Ci+1属于不同组,j=j+1,记为Gj=Gj∪{Ci+1},此时的Gj为一个新的组;若不大于,则节点Ci和节点Ci+1属于同一组,j=j,记为Gj=Gj∪{Ci+1},此时的Gj是为节点Ci所在的组;
步骤24、判断当前节点Ci是否是CList中的最后一个值,若是,则结束步骤2;若不是,则i的值加一位,继续执行步骤23;最终将分组集合记为G={G1,G2,…,Gm-1}(0<m≤n),m为系统经过动态分组后的组数。


5.如权利要求4所述的共识方法,其特征在于,所述步骤3,包括:
步骤31、为每一个组...

【专利技术属性】
技术研发人员:何泾沙杜伟东朱娜斐甘宇宋洪宇薛瑞昕叶子昂
申请(专利权)人:北京工业大学
类型:发明
国别省市:北京;11

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

1