okx

Filecoin聚合SNARK证明降低成本

时间:2023-07-30|浏览:153

欧易

欧易(OKX)

用戶喜愛的交易所

币安

币安(Binance)

已有账号登陆后会弹出下载

SNARK是简洁的非交互式知识证明。简单来说,它允许一个人以简洁的方式向验证者证明他们使用正确的输入正确地执行了计算。SNARK打开了许多以前不可行的用例,例如匿名交易、快速轻客户端/紧凑型区块链和可证明的分散存储,对区块链世界产生了巨大影响。

最突出的SNARK系统是由JensGroth于2016年提出的,他展示了如何通过有效验证器为任何算术电路获得简洁的知识证明。然而,这个证明系统需要一个结构化的引用字符串。

为了生成SRS,我们需要运行一个可信的设置,由多个用户运行的复杂设置程序,以生成验证程序和验证器需要的密钥。Groth16系统已在多个框架和编程语言中实现,是目前使用最多的SNARK系统。事实上,Filecoin网络每天验证超过200万个Groth16SNARK!

由于SNARK的快速和大规模采用,使用SNARK的系统面临着可扩展性挑战。因为网络中的所有节点必须单独处理每个证明以达成一致,这限制了一个网络每天可以验证的证明数量。

目前已开发出多种解决方案来解决SNARK的这一挑战。其中最新和有效的方法是基于证明携带数据的概念,它是完全递归的证明系统。一个证明可以验证另一个证明,并且递归的级别是无限的。这种方法已经在Mina协议和Halo2中采用。不幸的是,这种方法需要一个完整的新的证明系统,与目前的Groth16证明系统不兼容。因此,我们希望能够扩展目前已经在生产中使用的现有证明系统。

幸运的是,2019年Bünz、Maller、Mishra、Tyagi和Vesely展示了一个相当优雅的解决方案,可以将Groth16证明聚合在一起,生成一个对数大小的证明,并且不需要对证明系统本身进行任何更改!换句话说,可以在不发生重大更改的情况下聚合现有的证明,为当前系统带来可扩展性!

在发现这篇论文之后,我们开始研究它是否可以应用于Filecoin,并对它可能带来的潜在可扩展性感到非常兴奋。

Filecoin矿工需要证明他们已经正确编码了32GiB存储扇区,即他们保留了32GiB的存储空间。为了做到这一点,矿工需要运行一个特殊的编码功能(复制证明),连续工作步骤。在每一步中,矿工使用来自前一层和当前层的节点来编码由2个节点组成的层,每个节点为32GiB。在每一步之后,它生成一个包含所有这些节点的Merkle树。最后,验证者必须创建一个证明,通过给每个层中的随机节点提供Merkle路径,证明他们正确执行了所有这些计算。

问题是,一个图层中有很多节点。出于实用的考虑,我们的可信设置只能增加到2²⁷个,因此我们不得不将复制证明SNARK分为10个较小的SNARK。幸运的是,我们可以使用批量验证来验证SNARK。目前,我们可以通过聚合10个SNARK来显著降低一个证明的成本。

« 上一条| 下一条 »
区块链交流群
数藏交流群
区块链币圈-全球区块链数字货币行情、比特币虚拟货币资讯,狗狗币以太坊环保币柚子币莱特币瑞波币等加密数字货币价格非交易行情查询,金色财经巴比特范非小号快讯平台。
趣开心资讯 Qukaixin.cn ©2020-2024版权所有 桂ICP备19010284号-1