Cointime

扫码下载App
iOS & Android

介绍zkTree:一个具有ZKP成员证明的zk递归树

原文链接:Introducing zkTree: a zk recursion tree with ZKP membership proofs

本文作者:Polymer Labs  编译:CoinTime Candice

零知识证明是保护用户隐私的强大工具,首先在区块链中广泛使用,以验证私人交易的有效性(如Zcash)。零知识证明的一个同样重要和新兴的应用是压缩计算,在链上运行一个简短的验证可以证明一个长的计算已经在链外正确执行。这种验证可以用比在链上运行原始计算更少的时间和gas完成,从而实现zkEVM、zkRollup和zkBridge。

然而,零知识证明者在历史上一直非常缓慢的。通常情况下,证明者的时间复杂度至少与算术电路的大小成线性关系。在现实世界中,CPU上速度快的算法并不总是容易表示为zk运算电路。例如,广泛使用的EdDSA数字签名方案在curve25519上需要超过200万门的zk电路和12秒的证明时间。此外,链上验证的成本也很高,尤其是在以太坊上,最便宜的zk验证者的成本约为23万gas,而STARK验证则高达500万gas。这些挑战破坏了许多创新应用程序(如zkBridge和zkIBC)的可行性。

为了解决这些设计挑战,我们引入了zkTree结构,并对zkTree递归证明管道进行了原型设计,以提高证明时间并降低验证成本。通过将证明生成分布在不同的机器上,并通过zkTree递归合成证明,我们可以确保验证者拥有几乎无限制的计算能力和快速的证明速度,这可以大幅提高未来zk技术的功能。此外,通过与zk成员证明共享相同的链上验证者,不同的系统/公司可以分享恒定的链上验证成本,增加各种应用的经济可行性。

zkTree是一个树形数据结构,其中每个节点是一个zk证明(ZKP),每个母节点递归地证明其子节点的zk证明。当一个zk证明π递归证明了两个zk证明π0和π1,并且π在链上得到验证,那么所有的子证明π0和π1也在链上得到验证。

zkTree中有三种类型的证明。

  1. 用户证明是要包含在zkTree中的一个zk证明。用户证明可以从具有不同zk类型/配置的电路中产生。
  2. 叶子证明就像一个包装器,将不同类型的用户证明递归为统一的zkTree叶子证明类型。
  3. 节点证明用于递归地证明多个叶子/节点证明,并且所有节点证明都由相同的zkTree节点电路产生。除了验证子证明,zkTree节点/叶子电路还计算公共输入的哈希值和子电路的哈希值。

zkTree示例如下图所示。在根节点中计算的电路哈希和输入哈希是所有用户电路和用户证明的merkle根。为了验证用户证明是否包含在根证明中,我们只需要验证其输入哈希值和用户电路哈希值的merkle路径。在下面的例子中,为了验证用户证明4是否包含在根证明节点3中,需要提供电路哈希值c4、c7、c9和输入哈希值h4、h3、h5。c_l和c_n是叶子电路和节点电路的电路哈希值,代表公共参数,可以用来验证zkTree构建器电路是否安全。

我们使用PLONK和FRI的组合Plonky2实现了zkTree,并在Groth16中递归地证明了它的根证明。我们还建立了管道,利用zkTree来验证Tendermint共识的默认签名方案,在以太坊虚拟机(EVM)中的一个证明中验证了32个ed25519签名。与ed25519 circom库相比,在EVM中相同的gas成本为23万的情况下,总证明时间从384秒减少到77秒。

zkTree实现了zk证明的快速和低成本的递归组合。成千上万个ZKP可以在大约一分钟内用merkle成员证明在链上递归组合和验证,一个Groth16证明的gas成本为12万。zkTree是灵活的,它的成本和速度可以根据不同的用例场景进行重新平衡。通过使用FPGA和ASIC等特定硬件,Plonky2和Groth16证明者可以进一步加速,从而可以进一步优化zkTree构建的总时间。叶子电路也可以作为Groth16/Plonk验证者来实现,扩大了zkTree的潜力,使之在未来具有更多的用途。

我们已经开放了zkTree的大部分代码。请参考以下代码库:

  • https://github.com/polymerdao/plonky2-circom
  • https://github.com/polymerdao/plonky2
  • https://github.com/polymerdao/plonky2-ed25519
  • https://github.com/polymerdao/plonky2-sha512

关于Polymer:

Polymer是第一个基于IBC的模块化网络协议。Polymer链将通过基于轻型客户端状态验证的无信任架构,实现所有集成链的ZK-IBC连接。Polymer相信多链的未来主要由一个开源、社区开发和维护的行业标准IBC x Polymer连接。

*本文由CoinTime整理编译,转载请注明来源。

评论

所有评论

推荐阅读

  • 美SEC:流动性质押活动不被视为证券

    据市场消息,美国证券交易委员会(SEC)发布关于流动性质押活动的声明,称流动性押活动不被视为证券。

  • Coinbase将上线Succinct(PROVE)

    Coinbase交易所宣布将支持以太坊网络上的Succinct(PROVE)代币。该代币将以"实验性"标签推出,PROVE-USD交易对将在满足流动性条件后分阶段开放交易。

  • 京东币链:正在进行香港稳定币牌照申请的准备工作

    市场传闻称,京东等或退出香港稳定币业务。对此,京东币链表示,已关注到市场上的不实报道和谣言,京东币链特此回应,正在进行香港稳定币牌照申请的准备工作。(每经)

  • 美CFTC考虑允许期货交易所开展现货加密货币交易

    美国商品期货交易委员会(CFTC)表示,正在考虑允许在已注册的期货交易所开展现货加密货币交易,并寻求利益相关方的意见,以落实总统特朗普提出的加密货币发展目标。CFTC 代理主席 Caroline Pham 于周一发表声明称,该机构希望利益相关方协助其就如何在 CFTC 注册的期货交易所(也称为指定合约市场,DCM)上挂牌现货加密资产提供监管明确性。

  • 企业加密资产储备突破千亿美元大关

    随着企业大军涌入加密货币市场,银河研究最新报告显示:当前数字资产储备公司的比特币持仓达930亿美元,占流通总量近4%;以太坊持仓41亿美元,占比1%;资产负债表新增SOL、XRP、BNB等10种新兴加密货币;其中Strategy公司以718亿美元比特币持仓(含280亿美元浮盈)稳居榜首。

  • 巴西将举行听证会探讨建立战略性比特币储备

    巴西计划于2025年8月20日召开公开听证会,讨论建立战略性比特币储备事宜。

  • ETH跌破3600美元

    行情显示,ETH跌破3600美元,现报3597.36美元,24小时跌幅达到1.43%,行情波动较大,请做好风险控制。

  • 区块链扩展的下一个前沿:深入探索ZK Rollups

    · 虽然零知识证明(ZKPs)有望打造一个更加私密和可扩展的区块链生态系统,但许多关于零知识(ZK)的方面被误解或与普遍认知中的实施方式不同。 · ZKPs 主要有两个方面:「零知识」和「简洁性」。虽然这种说法没有错,但大多数 ZK rollups 只利用了简洁性属性,交易数据和账户信息并没有完全保持零知识或私密。 · 对于各种类型的 DApps,ZK rollups 可能不是最佳的开发堆栈选择。例如,生成 ZKPs 可能成为快速终结的瓶颈,从而降低 Web3 游戏的性能,而基于状态差异发布的数据可用性保证方法可能会损害 DeFi 借贷协议的服务。

  • 专注于零知识证明的区块链Gevulot完成600万美元种子轮融资,Variant领投

    专注于零知识证明的区块链Gevulot完成600万美元种子轮融资,Variant领投,RockawayX、Volt Capital 和 Stake Facilities 以及 Polygon Labs 首席执行官 Marc Boiron 和 Manta Network 创始人 Shumo Chu 等个人支持者参与。 Gevulot 没有透露其估值。 Gevulot 计划将资金分配给其L1区块链的推出,该区块链使开发人员能够利用ZK 证明并将计算任务委托给先进的硬件运营商网络。

  • 中科大首次实现以器件无关量子随机数产生器,消除非交互式零知识证明安全隐患

    中国科学技术大学潘建伟院士等研究者首次实现一套以器件无关量子随机数产生器作为熵源,以后量子密码作为身份认证的随机数信标公共服务,将其应用到零知识证明领域中,消除了非交互式零知识证明中实现真随机数的困难所带来的安全隐患,提高了非交互式零知识证明的安全性。非交互式零知识证明广泛应用于数字签名、区块链和身份认证等领域,由于真随机数生成器难以实现,通常会使用确定性的伪随机数算法来替代。 据了解,此次研究工作首次将量子非局域性、量子安全算法和零知识证明3个不同的领域结合起来,大幅提升了零知识证明的安全性,其中构建的面向公众的随机数服务在密码学、彩票业和社会公益等领域有着重要的应用潜力。