RANDAO
RANDAO是一种非常简单的随机性方法,因此非常常用。 一般的想法是,网络的参与者首先都是私下选择一个伪随机数,然后向该私密选择的数字提交承诺,都使用某种共识算法就某些承诺达成一致,然后全部透露其选择的数字,得出一个 对显示的数字达成共识,并对显示的数字进行XOR作为协议的输出。
它是不可预测的,并且与基础共识协议具有相同的活跃性,但存在偏差。 具体来说,一旦其他人开始透露其编号,恶意行为者便可以观察网络,并根据到目前为止所观察到的编号进行异或运算,选择是否透露其编号。 这允许单个恶意行为者对输出产生一点影响,而控制多个参与者的恶意行为者具有与其所控制的参与者数量一样多的影响。
Threshold Signatures
为了使RANDAO变得不偏不倚,一种方法是使输出不仅是XOR,而且要花费比分配的时间更多的时间来显示数字。如果最终输出的计算花费的时间比揭示阶段所需的时间长,那么恶意行为者将无法预测它们揭示或不揭示其数量的效果,因此不会影响结果。
虽然我们希望用于计算随机性的函数对生成随机数的参与者花费很长时间,但我们希望随机数的用户不必再次执行相同的昂贵函数。因此,他们需要以某种方式能够快速验证随机数是否正确生成,而无需重做昂贵的计算。
这种函数需要花费很长时间进行计算,可以快速验证计算结果,并且每个输入都有唯一的输出,因此称为可验证延迟函数(简称VDF),事实证明设计一个函数非常复杂。最近有很多突破,就是这一突破和使之成为可能的突破,以太坊目前计划将带有VDF的RANDAO用作其随机性信标。除了这种方法不可预测且无偏见这一事实之外&#x