产业气象站|何在不使用工作量证明的情况下实现公平且高效的提议( 二 )


在Taraxa的区块DAG架构里 , VRF为随机延迟提供了随机性 。 VRF的输出是:
区块DAG的级别(L):在提议者打包区块时 , 这里的“级别”就是锚定链的长度+1 。 所以 , 如果你是提议者 , 你计算了当前的锚定链L , 发现了你将要搭建幽灵指针(pointer)的边界上的终结块 , 那么你提议的区块级别就是L+1 。 需要注意的是 , 这里的定义与常说的“深度”是不同概念 。 最新Period区块的区块哈希(P):这是在区块DAG中最新完成的区块 , 能够通过一个并行PBFT流程(下一篇文章会详述)实现真正的最终确认 。 考虑到在边界上提议者尚未接收到最新确认的Period区块(P) , 所以协议会有一定的容忍 , 即最新Period区块的上一个区块哈希也是可接受的 。 区块提议者的秘密VRF密钥(SK) , 这个是搭建VRF函数所需要的 。 这与交易签名机制不同 , 是专门为每个节点生成用于搭建VRF的 。VRF函数的输出分两块:
v是一个伪随机值 , 用于确定延迟长度 。 p是一个证明 , 其他节点可以用其来验证VRF已诚实且正确地执行 。 可以把它当作一个签名 , 有了提议者的VRF公钥 , 任意其他节点都可以轻松确定计算的正确性 。最终 , 我们可以写成一个简单的方程式:
VRF(L,P,SK)→(v,p)
■延迟难度成型函数在VRF的输出(延迟难度或延迟长度)转换为延迟之前 , 我们会需要让其形成一定的分布 。 分布的特征大致如下:
需要有一个最小延迟 , 因为我们不能让区块立即生成 , 不然会没有时间进行适当的网络广播需要有一个最大延迟 , 因为我们不希望整个网络堵塞 , 也不希望长时间不生产块部分提议者速度要快 , 而剩下一部分要慢 , 这与合格提议者数量以及整个网络的直径(也就是一个区块到达大多数提议节点所需的时间)有关因此 , 最终的成型函数可能是这样的(输入项是VRF的输出项即x轴 , 输出项是成型后的延迟难度系数即y轴):
产业气象站|何在不使用工作量证明的情况下实现公平且高效的提议
文章图片
成型函数
设成型函数为S , 我们可以得出以下公式:
S(v)=d
这里d就是下一阶段的难度系数 。
■可验证延迟函数的延迟Token像个公交卡 , 能自身产生价值转移 , 联盟链没有原生的价值转移 。 国家打击的是传销盘 , 但其实还有很多的具有价值的代币 , 当行业发展和公众认知到一定程度的时候 , 优质的公链能避免一刀切的状况 。 等到这个时候 , 联盟链和公链的合作可能更多 。
产业气象站|何在不使用工作量证明的情况下实现公平且高效的提议
文章图片
独自辛苦独自忙 , 无人并肩共作战=(
正如本文开头讨论的那样 , PoW好是好 , 但并行处理是其“风评被害”的罪魁祸首 。 于是 , 可验证延迟函数(VDF)出现了 , 这个函数是专门为了模拟无法通过并行处理加速的延迟而设计的 。
如果一个函数符合以下两点简单的标准 , 那么就可以严格将其归为VDF:
必须是顺序的 , 这种情况下无人能够通过多个并行处理来加快VDF函数的计算 , 这一点与PoW不同 。 必须是可简单验证的 , 观察者能够简单地进行验证(也就是其用来验证的时间远比计算函数的时间短) , 确认VDF计算正确且出现的是适当的延迟 , 这一点与PoW相似 。Bonehetal. , Pietrzak和Wesolowski等人都提出了满足这些标准的VDF 。 特别是 , Pietrzak和Wesolowski都基于在未知顺序的组别里重复平方的原理 , 各自独立地提出了高度相似的方法 , 这些方法能够有效抵抗并行处理 。
【产业气象站|何在不使用工作量证明的情况下实现公平且高效的提议】让我们在更高层次测试一下这些函数吧 , 因为数学是非常复杂的 。


推荐阅读