将 SP1(一个通用的 zkVM) 与 OP Stack (一个经过实战考验的 Rollup 框架)相结合,创建一个快速、经济且高度可定制的 zkEVM Rollup
- 原文链接:https://blog.succinct.xyz/op-succinct/
- 译者:AI翻译官,校对:翻译小组
- 本文永久链接:learnblockchain.cn/article…
只需 1 小时即可使用 SP1 将任何 OP Stack 链升级为使用 ZKP
今天,我们很高兴展示如何将 SP1(一个通用的 zkVM) 与 OP Stack (一个经过实战考验的 Rollup 框架)相结合,创建一个快速、经济且高度可定制的 zkEVM Rollup。
历史上,zkEVM Rollup 一直难以构建,需要深厚的密码学专业知识,使得定制和维护变得复杂且耗时。过去一年中,零知识证明取得了巨大进展,像 SP1 这样的 zkVM 引领了这一潮流。SP1 使任何开发者都能无缝地使用标准 Rust 代码集成 ZKP,同时提供实际应用所需的快速性能。
在过去的几个月里,我们与 OP Labs 团队紧密合作,将流行的、经过实战考验的 Rollup 框架 OP Stack 与快速的 zkVM SP1 结合,创建了 OP Succinct:一种无缝的方式,可以在仅 1 小时内将任何现有的 OP Stack 链升级为使用 ZKP。 使用 OP Succinct,你将获得:
如果你想要一个由 SP1 驱动的类型 1 zkEVM Rollup(作为新的 Rollup 或现有 Rollup 的简单转换)。请联系我们
OP Succinct 是在与 OP Labs 的紧密合作下构建的。从第一天起,OP Labs 团队就构建了模块化的 OP Stack,并有支持各种有效性机制(不仅仅是乐观故障证明)的路径。
作为其开源计划的一部分,他们最近开发了 Kona:一个 OP Stack Rollup 状态转换函数(STF)的 Rust 实现。借助 Kona 和 SP1,我们能够编写一个简单的 SP1 程序(不到 500 行代码),生成 OP Stack 的 STF 的零知识证明(ZKP)。
通过将这个 ZKP 融入 OP Stack 的模块化架构中,轻松将 OP Stack Rollup 转换为完全验证的 ZK Rollup,具有令人难以置信的功能:
对于 OP Sepolia 和 Base,我们运行了我们的 OP Succinct 堆栈(包括链上生成和验证证明),以展示使用 SP1 提供完全有效性证明的可行性。查看这里更新的智能合约。
证明成本在每笔交易 0.5-1 美分之间(并将在年底前下降 5-10 倍)
我们计算了在三个 OP Stack 链上集成 OP Succinct 的证明成本。查看以下结果:
链 | 每笔交易的平均证明成本 | 每个区块的平均证明成本 | 每个区块的平均交易数 | 每个区块的平均 gas | 区块范围 |
Base | 0.61 美分 | 62 美分 | 103.4 | 23.9M | 19,299,000 到 19,299,500 |
OP Mainnet | 1.34 美分 | 21 美分 | 15.6 | 5.7M | 124,900,000 到 124,900,500 |
OP Sepolia | 1.11 美分 | 5.8 美分 | 5.2 | 1.9M | 16,800,000 到 16,800,500 |
注意:Base 上的每笔交易的平均证明成本较低,因为 Base 上的每笔交易的 gas 使用量是 OP Mainnet 和 OP Sepolia 的 60%。此外,每个区块有一个固定的证明开销,这个开销在 Base 上的较大交易集上摊销(Base 在这个区块范围内的 TPS 为 50,而 OP Mainnet 为 8)。OP Mainnet 和 OP Sepolia 的每笔交易的 gas 使用量相似,但 OP Mainnet 的每笔交易成本较高,因为频繁存在 BN 预编译,这些预编译相对于它们产生的 ZK 证明成本来说定价过低。
你可以使用我们的基准 CLI 工具来计算任何 OP Stack 链(使用以太坊作为 DA)的任意区块范围的这些数字。我们通过运行 SP1 STF 程序来计算证明成本,获取执行程序的 RISC-V 周期数,然后计算在普通 GPU 硬件上需要多少证明时间。从中,我们计算出每笔交易的摊销证明成本。你可以在这里查看完整的结果细分。
为了将成本情境化,Base 和 Optimism 的 30 天平均交易费用分别为 2 美分和 5.4 美分。通过使用 OP Succinct,用户只需每笔交易额外支付半美分即可获得 ZK 的所有好处(其他链上成本如发布 calldata/blob 和在以太坊上验证证明在常规 OP Stack rollup 和 OP Succinct rollup 之间保持不变)。目前,SP1 的快速性能使得完全 ZK 证明的 OP Stack rollup 的成本变得实际。但我们还估计,到年底这些成本将下降 5-10 倍——在下面的部分中阅读更多内容。
快速证明生成允许快速最终确定
OP Succinct rollup 具有快速最终确定性,目前每小时在链上提交一个区块范围的证明(与 OP 主网相同,尽管可由 rollup 操作员配置为更低)。考虑到具有足够大集群的证明生成延迟和更频繁的链上提交,OP Succinct rollup 可以轻松实现分钟级别的最终确定性。这允许用户在证明在链上结算后立即对该最终状态根进行提款,而不是像传统的 OP stack rollup 那样等待 7 天。
OP Succinct 提议服务架构:OP Succinct rollup 中的提议服务生成一系列区块的证明(而不是单个区块),以摊销与从 L1 派生状态相关的 计算开销。区块范围的证明是并行生成的,然后每小时聚合并作为单个 ZKP 提交到链上。
5-10 倍性能提升即将到来
性能指标仅呈现成本和延迟的时间点视图。然而,重要的是要意识到 SP1 的性能每个月都在迅速提高。自 2 月以来,使用 SP1 证明以太坊区块的成本已从平均每笔交易 1 美分下降到 0.1 美分。
通过 SP1 性能改进和 OP Stack 和 Kona 程序的协议和软件优化的结合,我们预计到年底 OP Succinct rollup 的性能将提升 5-10 倍。我们在性能路线图部分中讨论了对 SP1 的优化,包括下一代递归系统、优化我们的 2 阶段证明器和更好的 STARKs 算术化。
我们有许多优化 OP Stack 协议和 Kona 程序本身的想法,以使程序在 SP1 中更容易证明(即更少的 RISC-V 周期),包括:
OP Stack 的模块化设计使得将 OP Stack rollup 转换为 OP Succinct rollup 变得简单。转换只需要两个步骤:
你可以在这里找到更详细的说明,如果你打算在生产(或测试)中使用此功能,请联系我们 !
OP Stack 基础架构的缺乏变化是一个游戏规则改变者。我们能够重用几乎所有的堆栈组件,如排序器、批处理器、op-node、op-geth 等。因为这种集成利用了 OP Stack 的模块化,并且故意保持最小的表面积(以及非常少的代码行!),它可以整齐地集成到现有的部署中,包括那些与 rollup-as-a-service 团队合作的部署。
在 OP Succinct 之前,创建一个 ZK rollup 非常困难,更不用说一个 Type-1 zkEVM rollup(意味着完全 EVM 兼容)。目前大多数 zkEVM 通常不支持标准预编译(如 ecpairing),并在状态根计算中使用自定义数据结构以更兼容 ZK。但对于 rollup 团队来说,更糟糕的是,这些 zkEVM 需要专业的密码学知识,使其难以定制和维护。
OP Succinct 解决了所有这些问题。它结合了 OP Stack、开源 Rust 生态系统和 SP1,提供了一种 Type-1 zkEVM,集快速最终确定性、低成本和出色的开发者体验于一体。
以太坊扩展的终局是每个 rollup 都是 ZK rollup。在这个世界中,用户将不再需要等待 7 天才能从 rollup 中提取资金,他们将在生态系统之间实现无缝互操作性,资本效率和可验证性将显著提高。通过 OP Succinct rollup,我们拥有所有这些好处,并为 rollup 团队提供了一个允许定制和维护的流畅开发者体验。
通过 OP Succinct rollup,我们可以拥有一切。
考虑部署 OP Succinct rollup 或将现有 rollup 转换为 OP Succinct rollup?请通过这里联系我们。如果你符合以下任何一种情况,我们很乐意与你交流:
代码:我们的代码是完全开源的,采用 MIT 许可证:查看 OP Succinct 代码和 SP1 代码。
贡献到 SP1: 如果你有兴趣为 SP1 本身做出贡献,请查看 Github 仓库中的开放问题列表!
OP Succinct 利用了以太坊和 Optimism 生态系统中大量高质量的开源工作,最重要的是 OP Stack 和 Kona。如果没有 OP Labs 团队的出色工作,我们无法构建这一切,他们从第一天起就有远见地将代码设计为模块化和开源的。我们还要特别感谢 OP 团队中的 Clabby 和 Refcell,他们创建了 Kona,并在我们构建此集成时与我们密切合作。他们耐心地回答了我们所有的问题,并上游合并了我们的一些 PR。我们要特别感谢 Mark Tyneway、来自 Revm 的 Dragan 以及所有帮助我们进行此次合作的 Reth 团队成员。
最后,我们要感谢 Zach Obront,他在过去几个月里与我们密切合作,并与 Succinct 团队的其他成员一起领导了此次集成。
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!