一种用于选举共识节点的抽签方法技术

技术编号:23897860 阅读:57 留言:0更新日期:2020-04-22 09:23
本发明专利技术涉及一种用于选举共识节点的抽签方法,包括:分别使用各个节点自身的私钥对种子参数进行签名,并根据随机算法对签名结果进行处理,得到第一参数;分别对各个节点的PoW、PoS和PoC进行融合处理,得到第二参数;根据各个节点相应的第一参数和第二参数,得到各个节点自身的凭证;根据各个节点自身的凭证与入围概率的比较结果,得到共识节点,本发明专利技术在选取共识参与节点的抽签算法中引入一种广义的工作量证明方法,针对多种攻击方式对抽签机制做了强化和补充,从而排除抽签算法受网络攻击和市场波动时的安全性和稳定性隐患。

A method of drawing lots for voting consensus nodes

【技术实现步骤摘要】
一种用于选举共识节点的抽签方法
本专利技术涉及区块链
,具体涉及一种用于选举共识节点的抽签方法。
技术介绍
现有的多种区块链共识算法存在各自的缺陷,例如,拜占庭将军算法(Byzantine)高度依赖2/3的共识参与者是诚实的。如果1/3以上的共识节点被恶意控制,网络就可能受到拒绝服务攻击,超过2/3的入围节点被控制就可能达成恶意共识。以Algorand为代表的(不限于Algorand)一类通过抽签选举共识节点的算法中,如果节点抽签过程受到攻击,只要2/3的入选节点是恶意的,同样能达成恶意共识。举例说明,有100万诚实节点的情况下,制造200万个恶意节点虽然可以攻击网络,但成本太高。但如果控制了节点抽签过程,不到700个恶意节点就可能攻击成功(如果入选比例为1/1000的话)。原生Algorand一类算法的安全可以建立在PoS的基础上。但是,如果完全依赖PoS,Algorand一类算法的抽签机制的安全意义并不大。因为节点的诚实性需要通过权益(Stake)证明,而抽签已经不是安全的重要环节。如果局部依赖PoS,原生Algorand抽签本文档来自技高网...

【技术保护点】
1.一种用于选举共识节点的抽签方法,其特征在于,包括:/n步骤1、分别使用各个节点自身的私钥对上一轮共识节点选举的种子参数进行签名,并根据预设的哈希算法对签名结果进行处理,得到第一参数;/n步骤2、分别对所述各个节点的算力证明PoW、持币证明PoS和贡献证明PoC进行融合处理,得到第二参数,其中,所述PoW、PoS和PoC分别是节点的算力难度、代币和贡献值的函数;/n步骤3、根据所述各个节点相应的所述第一参数和所述第二参数,得到所述各个节点自身的凭证;/n步骤4、根据所述各个节点自身的凭证与预设的入围概率的比较结果,得到共识节点。/n

【技术特征摘要】
20181012 CN 20181119103291.一种用于选举共识节点的抽签方法,其特征在于,包括:
步骤1、分别使用各个节点自身的私钥对上一轮共识节点选举的种子参数进行签名,并根据预设的哈希算法对签名结果进行处理,得到第一参数;
步骤2、分别对所述各个节点的算力证明PoW、持币证明PoS和贡献证明PoC进行融合处理,得到第二参数,其中,所述PoW、PoS和PoC分别是节点的算力难度、代币和贡献值的函数;
步骤3、根据所述各个节点相应的所述第一参数和所述第二参数,得到所述各个节点自身的凭证;
步骤4、根据所述各个节点自身的凭证与预设的入围概率的比较结果,得到共识节点。


2.根据权利要求1所述的方法,其特征在于,所述步骤4,具体包括:
将凭证小于所述入围概率的节点作为共识节点。


3.根据权利要求1所述的方法,其特征在于,所述凭证的计算公式如下:
.H[SIGi(r,1,Qr-1)]/ωi(ωw,ωs,ωc)
其中,.H[SIGi(r,1,Qr-1)]为第i个节点的第一参数,其中,H[]为哈希算法,SIGi()为第i个节点的私钥签名,r为当前选举的轮数,Qr-1为第r-1轮选举的种子参数,r为正整数;ωi(ωw,ωs,ωc)为第i个节点的第二参数,其中,ωi()是融合函数,ωw、ωs和ωc分别是第i个节点的PoW、PoS和PoC。


4.根据权利要求3所述的方法,其特征在于,ωs的函数表达式如下:



其中,Ks是PoS的调整系数,s是节点的代币,s0是最小代币,ωs0是最小PoS系数。


5.根据权利要求3所述的方法,其特征在于,ωc的函数表达式如下:



其中,Kc是PoC的调整系数,c是节点的贡献值,c0是最低贡献值,ωc0是最小PoC...

【专利技术属性】
技术研发人员:艾本仁林祥兴姜长龙杜聚龙
申请(专利权)人:北京邦天信息技术有限公司
类型:发明
国别省市:北京;11

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

1