当前位置:主页 > 列表页 > 正文

Foresight Ventures: 全面解析Rollup的现状和未来

2022-06-14 19:31 | 出处: odaily

原文作者: msfew Foresight Ventures

这篇文章着眼于以太坊的 Layer2 Rollup 宇宙 (仅包括 Secured rollup), 会从简单易懂的核心概念与机制设计出发, 探讨目前 Rollup 的好与坏, 畅想它们未来在去中心化, 进一步扩容, 可组合性, 以及隐私等附加功能上的潜在路线与方案各自的优劣.

一个 Secured Rollup 就是像 ArbitrumOptimism 这样模式, 结算, 共识, 数据可用性均依赖以太坊等 L1, 自己仅负责执行的 Rollup.

如果 Rollup 中结算, 共识, 数据可用性使用了除 L1 以外的方案, 那么它就不是一个纯粹的 Secured Rollup, 也就不是狭义的 Rollup.

0. Rollup 的本质与原理

a) Rollup 的本质

给区块链扩容有两种方式: 一种是优化区块链本身, 另一种是以更好的方式使用区块链.

Rollup 就是第二种, 它真正的本质很简单, 是更快更便宜且 “可信” 地使用区块链, 来扩容区块链 (基本特指以太坊).

Rollup 是: 链上的智能合约 链下的聚合器.

就这么简单. 而这两个特性结合起来就定义了 Rollup 也丰满了它的概念.

以太坊的原理是, 每个节点都存储且执行用户提交给它的每笔交易, 所以这么一个去中心化网络非常昂贵.

后文是以 Aribitrum 和 Optimism 为代表的 Optimistic Rollup, 与以 zkSync 和 StarkNet 为代表的 zk Rollup 两大 Rollup 的机制原理, 可供读者简单理解.

b) Optimistic Rollup 的原理

Optimistic Rollup 顾名思义是乐观的, 采用的类似是无罪推定, 大家会默认相信每个执行是正确的, 通过每个批次状态可被通过欺诈证明挑战而保证安全性.

用户在 Arbitrum 提交交易, Arbitrum 的 sequencer 对交易进行执行, 分批次将状态根与交易数据完整提交到以太坊主网上的智能合约中.

Optimistic Rollup 执行产生错误了怎么办?

c) zk Rollup 的原理

zk Rollup 顾名思义是用了 zk 零知识证明技术 (实际上是 Validity Proof), 采用的类似是有罪推定, 大家会默认质疑每个执行都是错误的, 通过每个批次所包含的证明保证安全性.

用户在 zkSync 提交交易, zkSync 的 sequencer 对交易进行执行和存储, 分批次将状态证明和新状态完整提交到以太坊主网上的智能合约中.

zk 如何证明自己的执行不是错误的?

它们如何压缩数据, 从而减少 gas fee?

它们俩为什么都要完整状态?

d) 两种 Rollup 的区别

如果实在还是理解不了, 可以查看下面的图解.

Optimistic Rollup 的设计更像是 Arweave, 通过经济学和博弈来设计机制, 性能好但其实无法保证 100% 的正确.

zk Rollup 的设计则更像是 Filecoin, 通过密码学和数学来设计机制, 可以保证 100% 的正确但永远会有额外的计算和时间开销.

它们的区别就是一个用了挑战期来保证发生错误可以被纠正, 一个用了密码学来保证错误不可能发生.

我们在后文会通过两者的终局表现来详细对比它们.

1. Rollup 很优秀

首先我们来盘点一下 Rollup 网络整体的优秀之处:

除此之外, 如果对子网与 Rollup 的对比感兴趣的话, 可以参考我们之前的研究, 以及 Toghrui 的观点.

更细化地来说, 各大 Optimistic Rollup 和 zk Rollup 分别给出了如下的表现:

除了以以太坊为主网的 Rollup 以外, 还有这些:

Rollup 方案不同的设计有非常多的独到之处, 真正地服务了无数的用户, 带来了更好的 Crypto 与区块链体验.

2. Rollup 有待提高

上面一章的表扬后, 我们会在本节指出 Rollup 一些需要解决的问题:

a) 中心化

Rollup 网络丝滑的用户体验是通过对安全性的妥协而得到的, 网络很多组成部分是中心化的, 虽然有以下三点可以对这个问题进行 “狡辩”:

  1. zk Rollup 中 zk 证明从数学上无法伪造.

  2. 用户可以通过 L1 的 DA 来重建所有状态.

  3. 信任模型本身就是中心化的智能合约.

但是 Rollup 的中心化仍然会导致 censorship 与安全性极低等问题. 目前它的中心化主要体现在:

在我的设想中, 作为一个网络或者协议, 最终必须是去中心化且开源的, 否则就违背了 Crypto 和 Web3 的精神.

b) 真实性能

Rollup 目前所展现出来的超高性能是 “假的”, 真实的 Finality 并没有那么优秀, 且性能依然有提高空间. 这是一把双刃剑.

当用户在 L2 提交交易后, 马上会得到交易成功或者失败的反馈, 但是其实这个即时的用户体验仅是在 L2 上的 Finality.

在数据没有被提交到 L1 或 Prover 还在证明或仲裁窗口期的期间, 这些数据并未取得 L1 Finality. 所以 Rollup 的用户体验那么优秀, 其实是因为用户通过 Rollup 借用了一些时间, 让用户先拿到一个 soft confirmation.

由于以上的设计, 导致如下问题:

c) 经济机制

我们以 Optimism 的代币为例, 管中窥豹地来研究 Layer2 Rollup 的商业和经济机制, 代币模型, 与 MEV.

开放网络的商业模式, 改善代币机制, 处理 MEV 会是 Rollup 网络在发币与去中心化的必经之路上的三座大山.

3. Optimistic Rollup 与 zk Rollup 的终局性能对比

我不太想和其他文章一样去对比 Optimistic 和 zk Rollup 两个阵营的 TPS 等纸面性能 (如果好奇的话可以详细阅读文末更多参考资料), 而是会从它们的本质和特性, 以及长期终局表现来对比:

对这张图的详细解读和值得关注的点如下:

  1. EVM 等同性实现难度: 其实无论是从 EVM 兼容, 节点配置要求, 还是优化来说, zk Rollup 整体的实现难度都是比 Optimistic Rollup 要高的. 这其实也是额外证明开销的一种存在方式… 额外证明开销不仅让网络的性能永远有一个多出来的包袱, 同时对 EVM 兼容的技术实现上来说也是一个巨大阻碍.

  2. 可以更方便地做隐私等需求: 既然已经使用 zk 了, 那么在做一个真正隐私的 zk-zk Rollup 的开发难度会比 zk-Op Rollup 简单很多. 当然也有 ZKOPRU 这样的 zk-Op Rollup 项目已经上线.

  3. 优化方向: 对于 Optimistic Rollup 来说, 并行化的 tx 处理是很直接且很有效的一种优化, 而 zk Rollup 用同样的方案的话 (StarkNet 下个版本的 sequencer 可以并行了), 长远来看还是会输给 Optimistic Rollup (又是额外的证明开销的缘故), 因此 zk Rollup 会采取 Fractal L3 scaling 的替代方案, 也就是在 Rollup 上面继续搭 Rollup. 递归的超能力不仅可以让 L2 验证 L3 的证明是正确的, 同时也能让 L1 验证 L2 对 L3 的验证的正确与否.

  4. 具体优化方向: 均是从路线图与预想的设计方案中得来, 目前并无实践. 个人认为需要很长的时间才能完成这些升级. 其中一些升级是有副作用的, 比如引入一种新机制就需要额外的信任假设.

虽然这张图得出了 Optimistic Rollup 的性能会在长远角度高于 zk Rollup 的结论, 但是由数学所保证的信任是更强的.我认为 Rollup 性能的终局是 Optimistic, 但是真正总体的终局会是 zk.

设计上很完美, 工程实现的难度依旧巨大, 上面的对比其实依然和 TPS 的对比一样, 比较纸上谈兵. 我们还是要从实际出发, 去从一个 Rollup 网络的安全性, 去中心化, 和实际的表现与生态来观察.

4. Rollup 的未来

对比了 Optimistic Rollup 与 zk Rollup, 我们其实也全面了解了它们未来对性能的优化方案. 那么在其他角度, Rollup 未来的发展会是怎么样呢?

a) 去中心化

在去中心化角度, 我们聚焦了 sequencer 和合约升级的问题,未来, 一个 Rollup 必须是去中心化的, 那么就需要如下的去中心化设计:

这里补充一个小的资料, 通过对 Arbiturm 和 Optimism 文档的对比, 可以体会出它们对去中心化略有不同的态度.

b) 可组合性

Rollup 的可组合性就是不同 Rollup 上的智能合约直接互相读写的能力.

对于以太坊上的 Rollup 来说, 其实以太坊作为 settlement layer 是 Rollup 们的共享桥梁. 未来 Rollup 间的可组合性很可能大多是通过 L2 ⇒ L1 ⇒ L2 这样来形成一个调用 (比如 StarkNet 设计的 dAMM).

而真正的可组合性却由于 Rollup 间机制不同, 无法互相验证的问题而难以被实现, 需要更多探索.

c) 功能

对于功能上的拓展, zk Rollup 更加有潜力.L3 的概念让 App-specific Rollup 特别有吸引力, Immutable X 也已经宣布自己会在 StarkNet 上额外进行协议部署, 让其能作为一个 L3 存在.

L3 的吸引力在于:

我预想中 L3 最有趣的功能会是:

但 L3 的挑战是 DA 到底如何处理. 我们可能会采用以下几种不同的模式:

5. 总结

以上就是我们对 Rollup 所需要的理解.

除此之外, Rollup 创造了无数的新话题: L3, 模块化区块链, 数据可用性方案, 账户抽象所带来的 UX 提升, 新的技术栈, 新的编程语言, 新的开发者, 新的审计机构…

Rollup 的一切都那么崭新, 那么光鲜, 但又那么稚嫩…

如何去像 Rollup 这样, 更好地 “使用” 区块链, 是一个值得探索的问题.

您可能感兴趣的文章:

相关文章