OP Stack Rollups和zkEVM Rollups都存在各自的问题,OP Succinct将二者结合起来,在OP Stack Rollups中注入ZK,创建一个既具有交易快速终结性、开发难度又低的Rollup。同样的理念,还有morph。
OP Stack Rollups目前存在的问题?
Optimistic Rollups(如Arbitrum One、Base、OP Mainnet等)是构建在以太坊之上的Layer 2解决方案,通过将交易和状态根提交到以太坊来实现扩展。
Optimistic Rollups工作原理概述:
- 继承以太坊安全性:Optimistic Rollup使用以太坊共识机制作为L1基础,将交易和状态根定期提交到L1,确保数据可用性与完整性。
- 区块生产和提交:主要由排序器(sequencer)管理,私有内存池中生成L2块并压缩存储到L1以降低gas费用。
- 故障挑战机制:在7天挑战窗口期内接受质疑,使用故障证明验证争议的状态承诺,确保链状态的正确性。
- 跨层桥接:支持从以太坊到L2(存款)和L2到以太坊(提款)的双向通信,通过桥接来确保资产流动性。
OP Rollups流程简单,用户接受度高,目前TVL排名超过ZK Rollups。然而,OP Rollups也存在交易终结性的问题:
- 挑战期较长:通常7天,导致用户资产提取较慢,不具有交易快速终结性。
- 高成本的单轮交互:单轮欺诈证明需在L1执行整个交易,增加gas成本。
zkEVM Rollups目前存在的问题?
诸如Linea、Scroll、ZKsync Era、Starknet等ZK Rollups正快速成为以太坊扩容的理想方案,能够提供与以太坊相近的安全性。
ZK Rollups的核心原理在于将大量L2相关交易聚合成一个Rollup区块,并为该区块生成简洁的链下证明,之后仅需在L1验证此证明便可更新状态,无需重新执行交易。这种方式大幅降低gas费用,因为验证证明比重新执行所有计算便宜。而且,与其他L2解决方案相比,ZK Rollups凭借零知识证明技术实现了快速终结性,交易最终确定时间最短。此外,ZK Rollups通过数据压缩减少链上存储量,仅保留必要的验证数据,这进一步节省了成本。
然而,当前的ZK Rollups多局限于应用专用性,开发者难以创建通用、可组合的DApp并迁移现有应用。原因在于:
- 如果你想要在一个ZK Rollup中开发DApps,你需要使用一种特殊的语言(如 R1CS ) 来编写你所有的智能合约逻辑。不仅所需要的语言的语法复杂,而且这样做还需要在零知识证明方面具有极强的专业知识。
- 目前的ZK Rollups不支持可组合性。这意味着L2 中的ZK Rollups应用程序不能互相交互。这种特性极大地破坏了DeFi 应用的可组合性。
简而言之,ZK Rollups对开发者不友好,目前功能有限。
zkEVM的引入为EVM验证零知识证明开创了新可能,使现有以太坊应用轻松迁移。然而,zkEVM的构建极具挑战性:从高密集加密到复杂存储布局,zkEVM要求深厚的专业技术和大量维护,增加了开发难度与成本。具体地:
- EVM 对椭圆曲线的支持有限。目前,EVM 仅支持BN254 配对。由于不直接支持循环椭圆曲线,因此很难进行证明递归。在此设置下也很难使用其他专用协议。验证算法必须是EVM 友好的。
- EVM 字长为256 位。 EVM 基于256 位整数运行(就像大多数常规VM 基于32-64 位整数运行那样),而zk 证明” 天然“地基于素域运作。在电路内进行” 不匹配域运算“需要范围证明,这将为每个EVM 操作增加约100 个约束条件。这将使EVM 的电路大小增加两个数量级。
- EVM 有很多特殊操作码。 EVM 与传统VM 不同,它有很多像 CALL 这样的特殊操作码,并且它也有与执行环境和gas 相关的错误类型。这将给电路设计带来新的挑战。
- EVM 是一个基于堆栈的虚拟机。 SyncVM (zksync) 和Cario (starkware) 架构在基于寄存器的模型中定义了自己的IR/AIR。它们构建了一个专门的编译器来将智能合约代码编译成一个新的对zk 证明友好的IR。方法是兼容语言,而不是兼容原生EVM。不管是为基于堆栈的模型证明还是直接支持原生工具链,都将变得十分困难。
- 以太坊存储布局带来了巨大的开销。以太坊存储布局高度依赖于 Keccak 和一个巨大的 MPT ,两者都对zk 证明不友好,且都产生巨大的证明开销。例如,在电路中,Keccak 哈希比Poseidon 哈希大1000 倍。然而,如果将Keccak 替换为另一个哈希,则会对现有的以太坊基础架构造成一些兼容性问题。
- 基于机器的证明具有巨大的开销。即使你可以正确地处理上述所有问题,你仍然需要找到一个有效的方法将它们组合在一起以获得完整的EVM 电路。即使是像 add 这样简单的操作码也可能导致整个EVM 电路开销的产生。
zkEVM 的证明成本问题在最近几年取得了显著进展,关键技术改进包括:
- 多项式承诺的应用:灵活的多项式承诺机制支持通用设置,提升了后端优化的自由度。
- 查找表与自定义小工具:查找表优化提升了 EVM 电路效率,减少了不友好原语的计算开销。
- 递归证明的提升:新技术如 Halo 减少了递归证明的成本。
- 硬件加速:采用 GPU 和 ASIC/FPGA 加速器,提升了证明计算的效率。
OP Succinct联合OP Labs开创Rollup的未来
既然OP Stack Rollups和zkEVM Rollups都存在各自的问题,那么,将二者结合起来,是否可以创建一个既具有交易快速终结性、开发难度又低的Rollup呢?这正是OP Succinct在Rollup上的愿景。
OP Succinct与OP Labs的合作
OP Succinct 是在与 OP Labs 的紧密合作下构建的。从第一天起,OP Labs 团队就构建了模块化的 OP Stack,并有支持各种有效性机制(不仅仅是乐观故障证明)的路径。
作为其开源计划的一部分,他们最近开发了 Kona:一个 OP Stack Rollup 状态转换函数(STF) 的 Rust 实现。借助 Kona 和 SP1,能够编写一个简单的 SP1 程序(不到 500 行代码),生成 OP Stack 的 STF 的零知识证明(ZKP)。
OP Succinct提供的功能
通过将这个STF ZKP 融入 OP Stack 的模块化架构中,轻松将 OP Stack Rollup 转换为完全验证的 ZK Rollup,具有令人难以置信的功能:
- 轻松切换到 ZK:OP Succinct Rollup 只需部署一个智能合约并启动一个轻量级的 OP Succinct 提议服务,通过 API 调用生成证明。你的 OP Stack 链的其余部分保持完全相同,包括批处理器/排序器、op-node、索引器等
- 快速终结性:今天的 OP Succinct Rollup 在有足够大的集群时,证明延迟在几分钟内,这是对乐观 Rollup 的 7 天欺诈证明窗口的显著改进
- 低证明成本,未来将提高 5-10 倍:今天,每笔交易的平均证明成本在 0.5-1 美分之间,得益于 SP1 在 zkEVM Rollup 用例中的市场领先性能。作为参考,Base 和 Optimism 的 30 天平均交易费用分别为 2 美分和 5.4 美分 。预计到年底,通过对 SP1 和 Kona 的进一步优化,证明成本将下降 5-10 倍
- EVM 等效(类型 1):OP Succinct Rollup 是 EVM 等效的,包括完全的字节码兼容性,并使用与以太坊相同的基于 keccak 的默克尔帕特里夏树(MPT)状态根。所有与 OP Stack Rollup 兼容的工具和智能合约都适用于 OP Succinct Rollup
- 可定制和可维护:定制或升级 OP Succinct Rollup 非常简单:开发者可以通过编写 Rust 代码并修改现有的 STF 来添加新的预编译和修改 Rollup 逻辑。OP Succinct 允许团队拥有 ZK Rollup 而不影响开发者体验
- 安全:OP Succinct Rollup 重用了大部分经过实战考验的 OP Stack 组件,并在创建 OP STF 的 ZKP 时引入了非常少的代码行。通过复用开源依赖项,如 Kona、Revm 等,这些依赖项在许多上下文中使用,OP Succinct Rollup 使安全性变得简单
如何将OP Stack Rollup升级为zkEVM Rollup?
OP Succinct使用SP1在1个小时内,可以将一个OP Stack Rollup转换为type-1 zkEVM Rollup。SP1 是速度最快、功能最齐全的完整零知识虚拟机 (zkVM),可以证明任意 Rust(或任何 LLVM 编译语言)程序的执行。SP1 使任何开发人员都可以使用 ZK ,因为它可以轻松地用普通 Rust 代码编写 ZKP 程序。
SP1提供完全有效性证明
在Base、OP Mainnet和OP Sepolia三个OP Stack Rollup是上运行OP Succinct(包括链上生成和验证证明),以下结果展示了使用 SP1 提供完全有效性证明的可行性。
具体的升级过程
OP Stack 的模块化设计使得将 OP Stack rollup 转换为 OP Succinct rollup 变得简单。转换只需要两个步骤:
- 部署 ZK L2OutputOracle.sol 合约:部署一个负责验证 STF 证明并跟踪最新验证状态根的智能合约。
- 启动 OP Succinct 提议服务:运行一个命令,启动一个轻量级提议服务,该服务跟随你的链的最新状态(使用你的 L1 + L2 的 RPC)并以配置的节奏从 Succinct Prover Network 请求证明。
这里有找到更详细的说明。
ZK+OP Rollup的另一种形式
Morph 通过其创新解决方案或称为“响应有效性证明”(RVP)的新状态验证方法提供了两者的融合。
RVP 将基于 zk 的有效性证明与乐观汇总无缝融合。当挑战者发现排序器提交的数据不准确时,可以在L1上向排序器发起挑战请求。然后,排序器有责任在预定时间(挑战期)内生成必要的 ZK 证明,并将其提交给 L1 合约验证。验证成功则挑战无效,验证失败则挑战者成立。
有关morph的更多内容在这里查看。
reference:https://learnblockchain.cn/article/9355