[发明专利]一种基于信誉机制和DPBFT算法的区块链动态DPoS共识方法有效
申请号: | 201911235811.9 | 申请日: | 2019-12-05 |
公开(公告)号: | CN111131181B | 公开(公告)日: | 2022-02-08 |
发明(设计)人: | 熊安萍;谭超;祝清意 | 申请(专利权)人: | 重庆邮电大学 |
主分类号: | H04L9/40 | 分类号: | H04L9/40;H04L67/10 |
代理公司: | 北京同恒源知识产权代理有限公司 11275 | 代理人: | 杨柳岸 |
地址: | 400065 *** | 国省代码: | 重庆;50 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 信誉 机制 dpbft 算法 区块 动态 dpos 共识 方法 | ||
1.一种基于信誉机制和DPBFT算法的区块链动态DPoS共识方法,其特征在于,该方法具体包括以下步骤:
S1:区块链系统运行期间,每一天称为一个运行周期,在每个运行周期开始之前初始化区块链全网节点信誉记录和记录产块轮次t;具体包括以下步骤:
S11:节点信誉记录mir是节点i在作为代表节点生产区块过程中由于原因r而生产区块失败的历史出错次数,生产区块失败的原因分为两类:一类是产生严重后果的原因集合R1,这一部分记录会始终跟随节点参与所有运行周期的信誉权重计算;另一类是后果较轻的原因集合R2,这一部分记录会在每一运行周期初始时清零,即mir=0,r∈R2,只参与当前运行周期节点的信誉权重计算,不跟随节点到下一运行周期;
S12:清零产块轮次t,即t=0;
S2:全网节点使用抵押持有账户财产所得到的股份对其所支持的节点进行赞同投票,系统结合节点信誉记录统计各节点获得的信誉权重票数和支持节点数,得票数排名前TN的节点作为候选节点组成候选池Pool,从Pool中根据各候选节点的支持节点数选择排名前n的节点作为共识过程中的代表节点;具体包括以下步骤:
S21:在运行周期初始阶段,每个账户每个股份允许给每个有效节点投一票,这个过程被称作赞成投票,投票结束后,系统对各节点通过公式(1)计算获得权重得票数:
其中,N表示全网节点,代表第j个节点第t轮对i节点的投票数,IEi表示i节点根据信誉记录得到的累计错误权重,具体由公式(2)计算得出:
其中,R=R1∪R2表示证人节点i在生产区块失败时可能的原因,Mr表示节点所能容忍由于原因r生产区块失败的最大次数,Qr表示原因r相对于R的权重;
S22:系统统计所有节点的权重得票总数,选择总数排名前TN的节点作为候选节点组成候选池pool,且设置候选池中最少候选节点数量阈值为TNM;
S23:系统通过公式(3)计算各个候选池节点的支持节点数:
其中,Si表示i节点投票的总人数,vote(i,j)表示第j个节点是否投票,具体见公式(4):
其中,L表示统计过程中节点j对节点i有效投票数的阈值,超过L才能被计入Si中;
S24:选择支持节点数排名前n的节点作为代表节点,更新候选池pool的候选节点数量TN;
S3:代表节点通过洗牌算法后生成随机序列,然后按序列顺序生产区块,生产的区块通过动态PBFT算法确认其不可逆性以及对当前代表节点未按时出块或出块失败的情况做出相应的处理措施,直至一个序列的所有代表节点完成产块;
S4:待完成一轮产块,序列中的代表节点通过洗牌算法生成新的出块序列,继续步骤S3,直至下一个运行周期或候选节点数量少于阈值TNM,继续步骤S2。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于重庆邮电大学,未经重庆邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911235811.9/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种继电保护装置定值区远程切换控制方法
- 下一篇:一种调平机构