【技术实现步骤摘要】
一种基于VBFT共识机制的随机数生成方法
[0001]本专利技术属于区块链应用
,特别涉及一种基于VBFT共识机制的随机数生成方法。
技术介绍
[0002]区块链起源于比特币,2008年中本聪发表了《比特币:一种点对点的电子现金系统》一文,这标志着比特币和区块链的诞生。区块链最初是作为比特币的核心底层技术所提出,通过运用数据加密、时间戳、分布式共识等手段,实现去中心化、去信任的点对点交易,后来逐渐扩展到电子合同、物联网、保险、版权存证等领域。而共识机制作为区块链的底层技术,确保了保证分布式账本数据的正确性和一致性,是每个区块链网络节点都必须遵守的规则。一个区块链网络的性能、安全性和可扩展性很大程度上都取决于其共识机制的算法设计。可验证拜占庭容错(Verifiable Byzantine Fault
‑
Tolerant,VBFT)共识机制是新兴的一种混合型共识机制,其结合了VRF(可验证随机函数)、PoS(权益证明)、BFT(拜占庭容错)三者的优点,是一种去中心化程度高、可扩展性好且高效的共识机制,但其存在着很大的安全性问题。我们基于一般向访问结构的秘密共享、哈希运算等密码学技术提出一个改进的VBFT共识机制系统,来解决VBFT共识机制中的安全性问题,并在计算过程中用零知识证明保证计算的正确性及可验证性。
[0003]VBFT共识机制流程中共识节点角色的选择、出块的先后顺序以及由哪个节点完成最终的出块是由VRF产生的随机数的值决定的。而VBFT共识机制中所用到的VRF算法是有着巨大的安全 ...
【技术保护点】
【技术特征摘要】
1.一种基于VBFT共识机制的随机数生成方法,其特征在于,包括以下步骤:S1:每个联盟核心参与节点选择1个第一随机数和t
‑
1个第二随机数,并根据一个已公开的向量空间访问结构的公开函数计算分发的子份额,在分发的同时公开其子份额的密码学承诺;除联盟核心参与节点外,每个一般共识参与节点均选择1个第一随机数和t
‑
1个第二随机数,每个一般共识参与节点根据其选择的1个第一随机数和t
‑
1个第二随机数生成一个t
‑
1次多项式,第一随机数作为t
‑
1次多项式的常数项,把t
‑
1次多项式分成n个秘密子份额,将秘密子份额发送至其对应的一般共识参与节点;S2:验证参与节点提供的密码学承诺,验证未通过则删除参与节点的所有计算数据;所有参与节点验证后,通过验证的参与节点进入下一步骤;S3:参与节点将接收的所有秘密子份额进行同态相加;S4:参与节点使用私钥对同态相加的结果进行解密得到解密后的子份额之和,在对解密后的子份额之和进行解码得到解码后的子份额之和,得到用于验证自身解密的密码学承诺;S5:根据参与节点提供的密码学承诺对该参与节点的解密计算进行验证,验证不通过则删除该参与节点的所有计算数据;在所有参与节点验证完成后,通过验证的参与节点进入下一步骤;S6:联盟核心节点在满足特定的访问结构后,每个联盟核心参与节点根据其他联盟核心参与节点的子份额之和计算第一可验证随机数;一般共识参与节点发送自己解码后的子份额之和至其他一般共识参与节点,一般共识参与节点根据其他一般共识参与节点解码后的子份额之和计算第二可验证随机数;S7:将第一可验证随机数和第二可验证随机数相加得到随机种子,对随机种子进行一次哈希运算得到第三可验证随机数。2.根据权利要求1所述的基于VBFT共识机制的随机数生成方法,其特征在于,所述步骤S1中,t为协议门限值或向量空间维度,t的取值范围为t>1。3.根据权利要求1所述的基于VBFT共识机制的随机数生成方法,其特征在于,所述可验证随机数长度为256bits。4.根据权利要求1所述的基于VBFT共识机制的随机数生成方法,其特征在于,所述步骤S6中的所述联盟核心参与节点计算第一可验证随机数的方法包括以下步骤:S6A1:初始化Γ为n个联盟核心参与节点向量空间上的访问结构,为公开函数;S6A2:联盟核心参与节点P
i
任意选取一个S
i
∈GF(q)为子秘密,参与节点P
i
随机选取一个向量V
i
∈E,使V
i
·
(1,0,...,0)=S
i
,通过共识计算其他联盟核心参与节点P
j
的子份额,并秘密分享给P
j
,同时P
i
通过公式计算并公开承诺;S6A3:在授权子集B=P1,P2,...,P
l
,1<l<n中,B中的联盟核心参与节点在完成子份额验证之后,通过求解方程计算向量x=(c1,c2,...,c
l
),主秘密为公式的计算结果,B中的联盟核心参与节点联合其主份额得到主秘密S,即第一可验证随机数。
5.根据权利要求4所述的基于VBFT共识机制的随机数生成方法,其特征在于,所述步骤S6A2中,联盟核心参与节点收到来自其他联盟核心参与节点的子份额s
ij
时,联盟核心参与节点P
j
先计算如果成立,那么相信联盟核心参与P
i
是诚实的,否则要求联盟核心参与节点P
i
重新发送子份额或者将该联盟核心节点P
i
标记为不诚实参与节点,并删除相关数据。6.根据权利要求4所述的基于VBFT共识机制的随机数生成方法,其特征在于,在第σ轮系统外部有节点P
n+1
加入联盟核心时,联盟核心参与节点P
i<...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。