CHI:Chia VDF 算法原理剖析

随着爆火产品Chia的出现,挖矿行业又有了更新颖亲民的玩法,即低门槛的硬盘挖矿方式,这种挖矿方式让越来越多的普通人能够参与到挖矿中来,一起感受区块链行业的热潮。

根据Chia的白皮书介绍,Chia采用的共识机制是空间证明(POS, Proof Of Space)和时间证明(POT, Proof Of Time)。POS主要用来证明用户的确有未使用空间可以用来存储,而POT则用来保证整个系统的安全性,其主要算法是VDF 可验证延迟函数(Verifiable Delay Function),VDF得出的运算结果必须经历一定的时间,并且可以由网络中的任何节点快速认证,增加POS获得出块权的概率。

Verifiable:即经过一定次数的计算后,prover可以快速生成一个小的proof来证明计算有效性,verifier不用重复执行计算就可以得知计算的正确性;

梅赛德斯-奔驰NFT Maschine荷兰拍起拍价为3ETH:金色财经报道,梅赛德斯-奔驰公布NFT Maschine发售细节,将于6月7日进行荷兰拍,起拍价为3ETH,价格将在90分钟内线性下降,从3ETH的起拍价格到0.2ETH的底价截止,或直到售罄。

此前报道,梅赛德斯-奔驰发布NFT Maschine。[2023/6/5 21:15:34]

Delay:即prover只有执行正确次数的计算后,才能得到正确的结果,不会出现没达到指定次数前,就得到正确结果的情况;

Function:即结果是确定性的,输入x,就会得到y。

AOFEX云算力平台第二期Chia Network云算力即将发售:据官方消息,AOFEX云算力平台第二期Chia Network云算力即将发售,于 2021 年 4 月 28 日 14:00(GMT+8)开启售卖,使用AQ即可参与。AOFEX云算力平台现已正式上线,AOFEX Global致力于挖矿即服务的信条,使用最新技术提供多算法、多币种的云挖矿服务,为客户提供不同规模的加密数字货币挖矿能力的一站式解决方案。

AOFEX数字货币金融衍生品交易所,旨在为用户提供优质服务和资产安全保障。[2021/4/28 21:06:20]

Figure 1 POT

VDF的计算

基于Chia的设计模式,如果某个节点的VDF计算速度高于其他节点,有可能会发起某种安全攻击。因此,为了避免这一威胁,Chia希望节点中运行的VDF算法是最高效的,所以基本没有什么优化空间。为此,Chia还举办了两次VDF效率竞赛,以高额的奖励来吸引业内精英参与到本次活动中来,广泛汲取大家的智慧,来获取效率最高的VDF。

Peter Schiff:比特币突破1万美元的关键阻力得益于黄金上涨和灰度的广告投放:此前消息,Gemini联合创始人Tyler?Winklevoss发推称,还记得比特币跌至远低于1万美元的时候吗?现在比特币轻松就回到了1万美元上方。我们比以往任何时候都更需要比特币。他还表示,比特币在下一次突破前正在整合。

黄金支持者、比特币反对人士Peter Schiff回复称,比特币也可以很容易地在下一次崩溃前进行整合。大幅波动后的整合通常会继续此前的走势。1万美元支持水平测试的越多,它就变得越弱。市场很少给投资者那么多机会抄底。我对黄金的看法是正确的,但对比特币的看法是错误的。后者确实成功地度过了阻力,并反弹至1.2万美元,这在很大程度上要归功于黄金的上涨和Grayscale(灰度)的大规模电视广告投放。比特币跌回1万美元后,很快又回到了熊市。[2020/9/6]

如上图所示,Chia里用到的VDF算法其实很简单,就是对一个数x进行连续的T次平方计算,x是一个未知阶的群组(a group of unknown order)的元素。为什么是未知阶的群组,其中缘由也很简单:

Peter Schiff:如果只囤不卖 比特币拿在手里有何用:7月15日,黄金支持者、比特币反对人士Peter Schiff发推文称,大多数比特币持有者声称,他们会随船沉没。即使比特币永远不会升值,或者价格保持不变并持续多年、甚至数年下跌,他们也永远不会失去信心。但希望并不是一个好策略。如果你只囤币,而从来不卖比特币,你的比特币有什么用?[2020/7/15]

如果群组的阶为d,那么根据群组的性质:x2^T = x(2^T) % d

就会存在未达到指定次数T,就得到正确结果,这与Chia的设计不一致;因此,群组的阶是无法被知道的;生成未知阶的群组的方式有两种:

基于RSA的群;

虚二次域类群;

当选择基于RSA的方式时,群的阶N=pq,其中p、q都是很大的素数且不可公开,因此,计算这种群的阶的难度就和分解大数N一样困难。所以被认为是安全的,但是,这种方式需要可信设置,即p、q由可信第三方生成,或许也可以用MPC的方式,但是总之,它需要可信设置;

而基于虚二次域的类群可以消除可信设置,因为一个满足|d|=3 mod 4关系的负大素数生成的类群,计算其阶是困难的(为什么困难,将在另外一篇文章里详细阐述,涉及数学概念较多,将尽量写的简明易懂些),由于这个大素数可以公开,因此这种方式可以很容易的生成无须可信设置的未知阶的群。

了解了背后的数学概念,下面让我们再看一下,基于虚二次域类群的元素的平方应该如何计算,如下图所示(算法参考NUDUPL论文):

Figure 2 if a < L

Figure 3 if a > L

NUDUPL算法为目前为止,计算虚二次域平方的最有效的方法,这也是在两次VDF算法竞赛中,参赛者们选用最多的方法。图2、图3展示了算法的两个主要分支,其中m = (a,b,c)、M = (A,B,C)都是群中元素的表示形式。

VDF的证明

由图1可知,prover除了需要做T次计算外,还需要生成一个证明,来证明计算的正确性,关于VDF的正确性论证,这篇论文中给出了两个经典的方法,Chia采用的是Wesolowski的论证方法,此方法的过程如下图所示:

算法本身简单,且好理解。和论文中的Pietrzak算法相比,该算法生成证明更小,验证proof更快。

结 语

经过一段时间的研究和测试,Chia目前采用的VDF算法确实相当高效,从算法上,已经寻找不出可以大幅优化的点。“软的不行就来硬的”,这也是为什么我们仍然坚持把Chia的VDF算法研究的很深入的一个原因,目前已经着手硬件优化设计。从理论上讲,具有更高效率的VDF计算,可以获得更高的挖矿效率,这也是我们的目标。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

地球链

[0:0ms0-1:65ms