可验证随机函数(VRF)原理和应用浅析

本文首发公众号 VenusBlockChain,关注公众号后可免费阅读!VenusBlockChain 致力于区块链技术研究,传播区块链技术和解决方案、区块链应用落地、区块链行业动态等。
可验证随机函数(VRF)原理和应用浅析_第1张图片

1.VRF是什么

可验证随机函数(Verifiable Random Function,VRF)是一种将输入映射为可验证的伪随机输出的加密方案。首先,VRF所得是一个随机数,其次由于包含生成者的私钥签名,验证者可以通过公钥确定随机数的合法性。VRF具有三大特性:可验证性、唯一性和随机性。

值得注意的是,在分布式网络中,VRF无法完成固定数量的抽签任务,原因是VRF的一个Input是节点私钥,这使得每个节点产生的随机值均不相同,全网只能验证结果是否合法,但无法设计统一的标准使得某个随机结果唯一性地符合某个条件。

2.引入VRF的优势

优势一:防攻击

在VRF出现之前,为了满足选举信息的可验证,通常采用公开的信息作为输入,通过公开的随机函数得出随机结果,以随机结果作为依据进行抽签。由于所有信息均为公开,故所有节点都可以在本地计算出抽签结果。但是,上述抽签方案有一个很大的问题:攻击者有一定的时间窗口能够预测出抽签结果,及时对被选举人实施攻击。

VRF很好地解决了这个问题:由于使用节点私钥作为Input,VRF的结果无法被预测。其它节点只有通过网络接收到随机结果后才能对其合法性进行验证,即攻击者在得知选举结果时,选举人已经做出行动了。

(1)VRF的输出值除了随机值外,还包含一个proof,提供了随机值验证的零知识证明,即不必知道某人私钥即可证明该随机值是由某人产生的。

(2)使用VRFs的方式,矿工只需要公布自己的R表明自己的出块权,当出完块的时候再公布P,那么攻击者就无法在

你可能感兴趣的:(区块链)