短期内,Optimistic rollups 很可能在通用的 EVM 计算中胜出,而 ZK rollups 则可能在简单的支付、交易和其他特定应用场景中胜出,主要原因还是 Zk rollup 虽然比 Optimistic rollup 更快、更高效,但并没有为现有的智能合约提供一个简单的方式来迁移到
Layer2 是被设计为解决以太坊扩展性问题的关键方案之一,通过在以太坊主链之上构建额外的网络层,允许处理更多交易的同时保持主链的安全性和去中心化特性。
Rollup 是一种通过在链下处理交易然后将交易数据“打包”进入主链的 Layer2 扩容方案,其安全性由 Layer1 保证,是目前最主流的 Layer2 扩容方案,相比于其他的链下交易方案,例如状态通道、侧链、Plasma 等,Rollup有三个特点:
侧链是最早的 Layer2 方案之一,顾名思义,侧链是与主链(Layer1)挂钩(peg)的独立区块链,有自己的共识模型和区块参数。当我们将一个区块链挂钩到另一个区块链时,这意味着我们可以在两个区块链之间移动资产。当想要更快交易时,可以将资产从主链转移到侧链并在侧链上进行交易,完成后,再将资产转移回主链。
Plasma 是 2017 年由闪电网络的提出者之一的 Joseph Poon 和以太坊创始人 Vitalik Buterin 提出的一个 Layer2 扩展解决方案,是侧链的演变方案。
Plasma链是在以太坊外构建的独立区块链,也称为子链,就像一棵树的树枝,以太坊是主干,也称为根链。每个子链可以在以太坊上部署自定义的智能合约,可用于处理不同的业务。Plasma 链之上可以再构建一层子链,从而形成树状的Plasma网络。Plasma 的工作原理是将大的计算任务拆分成小任务,并将它们分配给各个子链进行处理,处理后的结果结果逐层汇总并提交至上层,从而实现了对大量复杂计算的快速和低成本处理。
Plasma 需要提交 Plasma 链上发生的交易的 Merkle 根,当用户试图将他们的资产从 Plasma 链移回根链时,用户可以提交将资产发送给 Plasma 的最新交易的 Merkle 分支。这开始了一个挑战期,任何人都可以尝试证明用户的 Merkle 分支是欺诈性的。如果 Merkle 分支存在欺诈,则可以提交欺诈证明。由于根区块链仅跟踪 Merkle 根,因此与那些发生在主链上的交易相比,它必须处理的数据要少得多,提升了根链的扩展性。
Plasma 是一种无监管的以太坊侧链技术,无监管是指即使 Plasma 链受到恶意攻击或者验证者串谋起来作恶,Plasma 链上的资产也可以安全退回根链。这也是 Plasma 与需要依靠自己的安全模型来保护用户的资产的侧链最大的不同。Plasma 的代表方案是 Polygon 1.0(Matic)。
Plasma 有三个致命的缺点:
正因为 Plasma 存在的缺点,从2019年开始 Plasma 陷入了发展瓶颈,此时在 ConsenSys 担任 Layer2 可扩展性研究员的 John Adler 提出了 Optimistic Rollup 方案,由于仍然采用欺诈证明,主要解决了 Plasma 的数据可用性问题。
另一边,Vitalik Buterin 2018 年就提出了利用 zk-SNARKs 实现扩展,开创性引入了零知识证明技术证明区块状态变化的有效性,这也是 ZK Rollup 的雏形。
zk-SNARKs 绕不开的一个点就是中心化的 Trust Setup,也称之为CRS(the Common Reference String)。2019年由 Aztec 研究团队提出 Plonk 算法则解决了 zk-SNARKs 通用性问题,即可信设置与应用无关,仅需要一次可信设置可以满足所有应用,而且 Trust Setup 可以任意更新,只要有一个可信参与者,即可保证可信设置的安全性,可以说 Plonk 算法的提出大大加速了 ZK Rollup 的发展。
纵览 Rollup 赛道,当下的竞争非常激烈,目前已经上线主网的 Layer2 Rollup 中,仍然是 Optimistic rollups 占据大部分 TVL,主要原因是 Optimistic rollups 是最先落地的完全 Rollup 方案,但是随着 ZK Rollup 技术的成熟,越来越多的人开始关注并参与到 ZK Rollup 生态中。
Optimistic Rollups 依赖于一种“乐观”假设,即大部分交易都是有效的,并允许在发现欺诈行为时进行挑战和回滚。Rollup 的 Layer1 合约不直接对 Layer2 提交的新状态进行验证,而是为每个被提交的新状态准备一个挑战期。由于 Rollup 会将所有的交易信息提交到主链并公开,因此任何人都可以对该状态更新进行验证(特别是当该状态更新涉及到自己的钱包时)。如果新状态是错误的,那么验证者可以针对该错误状态产生一份欺诈证明,并在挑战期内提交,从而使该错误的状态更新被无效化。
Optimistic Rollups 代表方案是 Arbitrum 和 Optimism。
Arbitrum 2021年9月正式启动主网,是目前TVL 最高的 Layer2 协议。
目前,在 Arbitrum 生态系统中主要有 3 条网络,包括 Arbitrum One、Arbitrum Nova、Arbitrum Orbit。
Optimism 2021年8月上线主网,目前拥有 Layer2 第二大 TVL,上仅次于 Arbitrum。
Optimism 实现了 EVM 等效性,以太坊上的 Solidity 智能合约可以在 Optimism 的 Layer2 上运行,且不需要构建额外的功能,开发者可以无缝转接到 Optimism 上开发应用。
OP Stack 是 Optimism 推出的开源模块化工具包,涵盖数据可用性层、执行层、结算层、治理层等。开发者可以根据自己的需求场景利用 OP Stack 工具包组装一个定制的 Layer2 网络。正因如此,OP Stack 为 Optimism 引入了超级链的概念,超级链是指构建在 OP Stack 上的一组 Layer2 区块链(也称 OP 链)统称。目前,基于 OP Stack 构建的 Layer 网络已有数十条,包含 Base,opBNB,Magi 等重量级项目。
ZK Rollups 则使用零知识证明技术来确保链外处理的交易是有效且正确的,提供更高的安全性和效率。Rollup 的 Layer2 平台在状态变更后,要为状态变更的正确性提供一份零知识证明,并随着状态变更一同提交到主链上。主链上的合约会对该证明进行验证以确定状态更新的正确性。相比于Optimistic Rollup方案,ZK rollup 不需要设置漫长的挑战期来最终确定 Layer2 交易,同时也不需要依赖错误的状态更新会在挑战期内被发现的假设。
代表方案是 zkSync, StarkNet,Polygon zkEVM 和 Scroll。
ZK Rollups 是第一个主网上线的 zkEVM 项目,以零知识证明为基础,允许交易在不透露基础数据的情况下被验证。zkSync的主要特点之一是使用 "乐观" 转账,允许用户发送和接收交易,而无需等待它们在以太坊区块链上被确认。这大大减少了交易时间,并允许更高的交易吞吐量。除了使用零知识证明和乐观的转移,zkSync还利用其他一些技术来提高可扩展性和安全性。这些技术包括签名聚合,允许将多个签名压缩成一个签名,以及多链支持,这有助于zkSync与其他区块链网络交互。
StarkNet 使用了 zkSTARK 的扩容解决方案,这是一个零知识证明系统,允许用户证明计算的正确性而不透露底层数据。这使得网络上的隐私性和安全性更高,并且能够在不需要信任第三方的情况下进行复杂的计算。StarkNet还利用了分片技术,这种技术允许将区块链分割成多个较小的链,或称 "分片",可以并行处理。这允许更大的吞吐量和更快的交易时间,因为每个"分片"可以独立于其他"分片"进行处理。
Polygon 2.0 推出其 ZK Rollups 技术,称为 Polygon zkEVM。这项技术通过使用零知识证明来解决以太坊区块链的可扩展性问题,从而使以太坊网络上的交易更快、更便宜,并且这种实现是在字节码级别而不是语言级别上兼容的。
Scroll 是一个与EVM兼容的 ZK Rollups,可以支持与以太坊相同的编程语言和智能合约,允许开发人员轻松地将他们现有的应用程序迁移到Rollup网络,而不需要对他们的代码进行任何修改。
笔者来自蚂蚁链,也是一名以太坊上的开发者(最近也在学习 Solana 开发),平时喜欢看书和写作,所以也运营了一个 Web3 的公众号(公众号名:小猪Web3),主要聚焦 Web3 前沿技术和发展历程,所以在这里还是小小打一个广告,希望能在登链认识更多志同道合的朋友交流学习。
这一篇也是我公众号的一篇发表,是在坎昆升级前写的,探讨了 Optimistic Rollups 和 ZK Rollups,短期内,Optimistic rollups 很可能在通用的 EVM 计算中胜出,而 ZK rollups 则可能在简单的支付、交易和其他特定应用场景中胜出,主要原因还是 Zk rollup 虽然比 Optimistic rollup 更快、更高效,但并没有为现有的智能合约提供一个简单的方式来迁移到 Layer2。但随着 ZK-SNARK 技术的改进,ZK rollups 将在所有场景中胜出,成为以太坊扩容方案的最终答案。
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!