基本介绍
Layer 2 被设计为解决以太坊可扩展性问题的关键解决方案之一,通过在以太坊主链之上构建额外的网络层,允许处理更多交易,同时保持主链的安全性和去中心化。
Rollup 是一个 Layer 2 扩容方案,将交易在链下处理,再将交易数据打包到主链上,其安全性由 Layer 1 保证,是目前最主流的 Layer 2 扩容方案。相较于其他链下交易方案,如状态通道、侧链、Plasma 等,Rollup 有三大特点:
-
Layer 2 是一个相对独立于 Layer 1 的平台,所有参与的用户也都是独立的 Layer 2 账户。用户可以在 Layer 2 平台上与其他 Layer 2 用户进行交易,但 Layer 1 账户与 Layer 2 账户之间的交互需要通过 Layer 2 运营者在 Layer 1 和 Layer 2 上部署的智能合约进行。最常见的交互就是 ETH 等代币的转移。
-
所有交易信息都需要完整记录在主链上,即Calldata或者Blob数据(EIP-4844),即使Layer 2状态丢失,任何人都可以从主链上存储的信息中恢复丢失的状态,解决了以往链下交易方案中数据可用性的问题。
-
交易的执行和状态的改变都在 Layer 2 平台,但是状态汇总会发布到 Layer 1 链上,因此可以通过一些数据有效性验证的方式验证 Layer 1 链的有效性,验证通过后 Layer 2 状态会锁定在 Layer 1 主链上;根据数据有效性验证方式的不同,Rollups 又可以细分为 Optimistic Rollups 和 ZK Rollups。
汇总历史记录
侧链是最早的 Layer 2 解决方案之一。顾名思义,侧链是一条与主链(Layer 1)挂钩的独立区块链,拥有自己的共识模型和区块参数。当我们将一条区块链与另一条区块链挂钩时,就意味着我们可以在两条区块链之间移动资产。当你想更快地进行交易时,可以将资产从主链转移到侧链,在侧链上交易。交易完成后,再将资产转回主链。
Plasma 是闪电网络提议者之一 Joseph Poon 和以太坊创始人 Vitalik Buterin 于 2017 年提出的 Layer 2 扩容方案,是侧链的演进。
Plasma 链是建立在以太坊之外的一条独立区块链,又称为子链,就好比树的树枝,以太坊是树干,又称为根链。每条子链都可以在以太坊上部署自定义的智能合约,用于处理不同的业务。在 Plasma 链之上还可以再构建一层子链,形成树状的 Plasma 网络。Plasma 的工作原理是将大型计算任务拆分成小任务,分配给各个子链进行处理,处理后的结果再逐层汇总,提交给上层,从而实现对大量复杂计算的快速低成本处理。
Plasma 要求提交在 Plasma 链上发生的交易的 Merkle 根。当用户尝试将其资产从 Plasma 链移回根链时,用户可以提交将资产发送到 Plasma 的最新交易的 Merkle 分支。这将启动一个挑战期,任何人都可以尝试证明用户的 Merkle 分支是欺诈性的。如果 Merkle 分支是欺诈性的,则可以提交欺诈证明。由于根区块链仅跟踪 Merkle 根,因此它必须处理的数据比主链上发生的交易少得多,从而提高了根链的可扩展性。
Plasma 是一种不受监管的以太坊侧链技术。不受监管意味着即使 Plasma 链受到恶意攻击,或者验证者串通作恶,Plasma 链上的资产也可以安全地回归到根链。这也是 Plasma 与需要依靠自身安全模型保护用户资产的侧链最大的区别。Plasma 的代表方案是 Polygon 1.0(Matic)。
但Plasma有三个致命的缺陷:
-
Plasma 链要求运营者将 Merkle 根承诺发布到根链。运营者可以进行数据可用性攻击,即拒绝将某些交易发布到链上。在这种情况下,缺乏构建欺诈证明的交易会阻止用户提取资产;
-
当用户试图从 Plasma 链中提取资产时,他们必须提交退出交易请求,然后等待一段时间,称为挑战期。在挑战期内的任何时间,任何用户都可以提供退出无效的证明来挑战另一个用户的退出;
-
用户必须监控和验证 Plasma 链上的所有交易,以检测恶意节点行为并及时退出。然而,交易验证成本高昂,这种监控要求给参与 Plasma 链增加了不少开销。
因为 Plasma 本身的缺陷,导致 Plasma 从 2019 年开始陷入发展瓶颈。此时 ConsenSys 的 Layer 2 可扩展性研究员 John Adler 提出了 Optimistic Rollup 解决方案。由于其依然采用了错误性证明,因此主要解决了 Plasma 的数据可用性问题。
另一方面,Vitalik Buterin 在 2018 年率先推出零知识证明技术,用于证明区块状态变化的有效性,这也是 ZK Rollup 的雏形。零知识证明最早由 S. Goldwasser、S. Micali 和 C. Rackoff 在 20 世纪 80 年代初提出,指证明者能够在不向验证者提供任何有用信息的情况下,让验证者相信某个断言是正确的。换言之,证明者向验证者进行证明,让验证者相信自己知道或拥有某个消息,但证明过程不能向验证者泄露任何有关被证明消息的信息。
zk-SNARK(零知识简洁非交互式知识论证)是一种应用广泛的通用零知识证明方案,它将任意计算过程转化为若干个门电路的形式,利用多项式的一系列数学性质,将门电路转化为多项式,从而生成非交互式证明,可应用于各种复杂的业务场景。
但是zk-SNARK无法避免的一点就是中心化的可信设置,也就是说在可信设置中,多方各自生成一个部分密钥来启动网络,然后销毁该密钥。如果创建可信设置的密钥的机密信息没有被销毁,那么这些机密信息就有可能被利用通过虚假验证来伪造交易。
2019 年 Aztec 研究团队提出的 Plonk 算法解决了 zk-SNARK 的普适性问题。即可信设置与应用无关,只需要一个可信设置就能满足所有应用。而且可信设置可以任意更新,只要有一个可信参与者,就能保证可信设置的安全性。可以说 Plonk 算法的引入大大加速了 ZK Rollup 的发展。
汇总轨道
纵观 Rollup 赛道,目前竞争十分激烈,在已上线主网的 Layer 2 Rollups 中,Optimistic Rollups 依然占据了大部分 TVL,主要原因是 Optimistic Rollups 是第一个实现的完整 Rollup 解决方案。不过随着 ZK Rollups 技术的成熟,越来越多的人开始关注并参与到 ZK Rollups 生态中。
乐观汇总
Optimistic Rollups 依赖于一个乐观的假设,即大多数交易都是有效的,并允许在发现欺诈时进行挑战和回滚。Rollup 的 Layer 1 合约并不直接验证 Layer 2 提交的新状态,而是为每个提交的新状态准备一个挑战期。由于 Rollup 将所有交易信息提交到主链并公开,因此任何人都可以验证状态更新(尤其是当状态更新涉及自己的钱包时)。如果新状态是错误的,验证者可以为错误的状态生成欺诈证明并在挑战期内提交,从而使错误的状态更新无效。
Optimistic Rollups的代表解决方案是Arbitrum和Optimism。
Arbitrum 于 2021 年 9 月正式上线主网,目前是 TVL 最高的第 2 层协议。
目前,Arbitrum 生态系统中有三个主要网络,包括 Arbitrum One、Arbitrum Nova 和 Arbitrum Orbit。
-
Arbitrum One 是目前 Arbitrum 生态的核心 Rollup 链,其所有交易数据都存储在主网以太坊上,我们平时提到的大部分 L2 和链上生态应用都运行在这个主网上。
-
Arbitrum Nova 是一个基于 AnyTrust 技术构建的新网络,专为游戏、社交应用程序和高吞吐量 DApp 用例而设计。网络交易数据存储在链下并由数据委员会 DAC 管理。
-
Arbitrum Orbit 是一个用于构建第 3 层网络的开源工具包,支持开发者部署和创建自己的链。开发者可以基于 Orbit 工具包构建自己的 Rollup 和 AnyTrust 链(第 3 层),并选择其中一条链 Arbitrum One 或 Arbitrum Nova 作为结算层实现扩展。
Optimism 于 2021 年 8 月上线主网,目前拥有 Layer 2 中第二大 TVL,仅次于 Arbitrum。
Optimism 实现与 EVM 等价,以太坊上的 Solidity 智能合约无需额外构建功能,即可在 Optimism 的 Layer 2 上运行,开发者可以无缝切换到 Optimism 开发应用。
OP Stack 是 Optimism 推出的开源模块化工具包,涵盖数据可用层、执行层、结算层、治理层等。开发者可以根据自己的需求,使用 OP Stack 工具包组装定制化的 Layer 2 网络。为此,OP Stack 向 Optimism 引入了超级链的概念。超级链是指构建在 OP Stack 上的一组 Layer 2 区块链(又称 OP 链)。目前,基于 OP Stack 构建的 Layer 网络已有数十条,其中包括 Base、opBNB、Magi、Worldcoin 等重量级项目。
ZK汇总
ZK Rollup 采用零知识证明技术,确保链下处理的交易有效且正确,提供更高的安全性和效率。在状态发生变化后,Rollup 的 Layer 2 平台必须提供状态变化正确性的零知识证明,并随状态变化一起提交到主链,主链上的合约会验证该证明,从而确定状态更新的正确性。相比于 Optimistic Rollup 方案,ZK Rollup 不需要设置较长的挑战期来敲定 Layer 2 交易,也不需要依赖于在挑战期内会发现不正确的状态更新的假设。
代表性解决方案有zkSync、StarkNet、Polygon zkEVM、Scroll等。
ZK Rollups 是第一个在主网上线的 zkEVM 项目,基于零知识证明,允许在不泄露底层数据的情况下验证交易。zkSync 的主要功能之一是使用乐观传输,这允许用户发送和接收交易而无需等待它们在以太坊区块链上得到确认。这大大减少了交易时间并允许更高的交易吞吐量。除了使用零知识证明和乐观传输外,zkSync 还利用了其他几种技术来提高可扩展性和安全性。这些技术包括签名聚合,允许将多个签名压缩为单个签名,以及多链支持,这有助于 zkSync 与其他区块链网络交互。
StarkNet 使用 zkSTARK 的扩展解决方案,这是一种零知识证明系统,允许用户在不泄露底层数据的情况下证明计算的正确性。这可以提高网络的隐私性和安全性,并能够在无需信任第三方的情况下执行复杂的计算。StarkNet 还利用了分片技术,该技术允许将区块链拆分为多个较小的链或分片,这些链或分片可以并行处理。这可以实现更高的吞吐量和更快的交易时间,因为每个分片都可以独立于其他分片进行处理。
Polygon 2.0 推出了其 ZK Rollups 技术,称为 Polygon zkEVM。该技术通过使用零知识证明解决了以太坊区块链的可扩展性问题,使得以太坊网络上的交易更快、更便宜,并且这种实现在字节码级别而不是语言级别兼容。
Scroll 是一个与 EVM 兼容的 ZK Rollup,支持与以太坊相同的编程语言和智能合约,让开发者可以轻松地将现有的应用程序迁移到 Rollup 网络,而无需对其代码进行任何修改。
总结
区块链由于自身的性能问题,无法满足当前的需求。乐观和基于零知识的扩容方案有望解决区块链的性能瓶颈,在不牺牲去中心化和安全性的情况下提高交易速度和吞吐量。Rollup 通过将计算转移到链下来提高区块链的吞吐量,即将大量交易打包成 Rollup 区块,并在链下为区块生成有效性证明。Layer 1 上的智能合约只需要验证该证明即可直接应用新状态,从而可以实现更低的 Gas 和更高的链上安全性。
短期来看,Optimistic Rollups 很可能在通用的 EVM 计算中胜出,而 ZK Rollups 则可能在简单的支付、交易和其他特定应用场景中胜出。主要原因是 Zk Rollups 虽然比 Optimistic Rollups 速度更快、效率更高,但它们并没有为现有的智能合约迁移到 Layer 2 提供简便的方法。
但得益于近年来区块链、隐私计算等新兴技术应用的发展,零知识证明技术成为构建信任的重要技术,中长期来看,随着ZK-SNARK技术的完善,ZK Rollups将会胜出所有场景,成为以太坊扩容计划的最终答案。
本文来源于网络:以太坊 Layer 2 Rollup Wars
相关:本周的特色互动项目:Succinct 和 Solv Protocol
原创 | Odaily星球日报 作者 | Asher 本月,“捞钱党”开始陆续收获果实,先是Taiko空投,随后io.net发布代币经济学,社区也在猜测zkSync本月会发币(点击查看:本月潜在热门空投合集)。坚持互动,总会有收获。今天,Odaily星球日报根据融资条件、项目热度等方面,整理出了本周值得参与的两个项目。 Succinct:核心ZK基础设施 参与理由 图片来源:官方推特 Succinct利用零知识证明技术,保证区块链应用的真实性和去信任化验证,从而提高系统的安全性和可靠性,其重点特性包括真实性保护、去信任化、可扩展性……