摘要:路印协议3.0依靠零知识证明技术实现链外计算,区块链上只公布数据和验证零知识证明。这样协议大幅降低了gas消耗,实现大几百倍的扩容。对于协议的每一种电路,我们都需要为之生成“证明钥”(Proving Key)和“验证钥”(Verification Key),进而用来在链外生成证明和在链上验证证明。

为什么要做可信设置?

路印协议3.0依靠零知识证明技术实现链外计算,区块链上只公布数据和验证零知识证明。这样协议大幅降低了gas消耗,实现大几百倍的扩容。对于协议的每一种电路,我们都需要为之生成“证明钥”(Proving Key)和“验证钥”(Verification Key),进而用来在链外生成证明和在链上验证证明。

问题在于生成证明钥和验证钥的过程中,有一种我们称之为有毒废料(toxic waste)的东西必须被丢弃掉,否则有毒废料就可以被用来生成假证明,这样协议就不安全了。

这就是举行可信设置多方计算仪式的原因。通过这个仪式,多人来参与可信设置。哪怕每阶段只有一个人按照约定,丢弃掉计算过程中的有毒废料,整个协议就是安全的。

两个阶段

可信设置的多方计算仪式包括两个阶段。第一阶段是“永续TAU(Τ)计算”(Perpetual Powers of Tau Ceremony)。这一阶段的计算结果可被多个使用零知识证明的项目共享。路印也参与了这个阶段的计算并丢弃掉了有毒废料。第二阶段是针对每个电路的具体逻辑来计算的,我们说的仪式其实指的是这个阶段的多方计算。如果想生成假的零知识证明,需要获取第一阶段和第二阶段所有参与者的有毒废料才行,但这非常困难。

loopring 1.png

原图来源于Wei Jie Koh’s 的博客

路印协议3.0的可信设置

路印的可信设置建立在第一阶段的第11轮计算结果之上。我们在此基础上还增加了一轮使用比特币的第602168个块的哈希值作为随机输入的计算。在这个块被挖出来之前,我们已经通过Twitter做了预先声明。

多方计算仪式的每个参与者需要下载大约100GB的数据文件,然后使用该文件作为输入,运算大约12到24小时左右的时间来生成下一个参与者需要使用的同样大小的文件,并将该文件做数字签名后上传到路印的FTP服务器。这样下一个参与者就可以下载使用,完成新一轮计算。

第二阶段也可以像第一阶段那样,无止境地运行下去。不过当我们相信已经有足够多的人参与后,就会使用最新一轮的计算结果,生成路印协议3.0的多组证明钥和验证钥。后续可以用新的证明钥和验证钥来替换旧的证明钥和验证钥,进一步提升协议的安全性。

如果您想参与路印的可信设置仪式,请联系我们。或者通过我们的开源代码库了解更多细节。如果您想了解路印多方计算仪式的最新进展,请访问:

https://loopring.org/#/ceremony

致谢

我们感谢Koh Wei Jie,Kobi Gurkan,和BarryWhiteHat,他们设计并运行着普惠以太坊dApp的永续TAU(Τ)计算。我们也感谢Kobi Gurkan,Matter Labs, 和Sean Bowe,他们实现了我们第二阶段计算所需的许多基础代码。最后我们还要感谢Zcash,这个团队实现了第一版零知识证明可信设置的多方计算仪式,而他们的成果是我们这次做可信设置的样板。

来源:Loopring

更新日期:
文章标签:
文章链接: 【Press Release】路印开启zkSNARK可信设置的多方计算仪式  [复制链接]
站方声明: 比推所有文章都只代表作者观点,不构成投资建议。投资有风险,后果自负。