Optimistic Layer 2 战争

过去几个月,ETH 价格飙升,以太坊网络的使用量显着增加。这一趋势的主要罪魁祸首是对 NFT 的重新兴趣和 DeFi 应用程序的整合,以及加密货币市场的显着增长。这给以太坊生态系统中的 DApp 开发人员带来了许多“不太愉快”的后果: 主要是网络无法适应使用量的增加,从而导致高昂的 gas 成本 (如果您希望您的交易在接下来的几个街区)。在撰写本文时,以太坊主网的平均汽油费约为 15 美元。

我们在以太坊生态系统中面临的这个新场景在 一夜之间将第 2 层改进从“很好”的功能转变为“最大的要求”,使 Dapps 能够在性能和成本方面可持续运行。 幸运的是,我们已经有几个一致的第 2 层平台和协议来帮助我们完成这个任务。构建第 2 层解决方案最有前途的基础结构之一是 乐观汇总。 许多项目都是建立在它们之上的,但是我们如何选择最能满足我们需求的基于乐观汇总的第 2 层解决方案?本出版物试图回答这个问题,对基于乐观汇总的三个有前途的第 2 层解决方案进行比较。让我们直接跳进去吧!

什么是rollup?他们为什么optimistic(乐观汇总)?

为了能够比较基于 rollup 的不同 Layer 2 解决方案,我们首先需要快速绕道以了解什么是乐观 rollup。 汇总是将侧链或链外交易捆绑(或“汇总”)到单个交易中,然后提交到 L1 的解决方案。 为了保护所有这些捆绑交易,并使它们可单独验证,从捆绑中生成加密证明。

汇总工作的一个要求是拥有某种与 以太坊兼容的独立区块链, 减少节点数量或具有高性能的附加功能,负责处理签名验证、合约执行等。这使得独立的区块链能够验证交易的有效性,这些交易随后被捆绑在以太坊主链中。 L2 rollup 侧链负责验证和合约执行,而 L1 专门存储不可变的交易数据。

在 Optimistic Rollups 中,参与者对侧链中正在执行的交易的有效性持“乐观态度”。聚合器不需要额外的计算来将侧链交易提交到主链中。 我们如何确定侧链交易实际上是有效的? 乐观汇总使用欺诈证明来确保所有交易都是合法的。 如果有人注意到来自聚合器的欺诈交易,则可以通过发送欺诈证明来运行交易计算并验证其有效性来挑战汇总。 这意味着不是像在其他汇总解决方案(如ZK- rollup)中那样对每笔交易执行验证 ,我们只有在怀疑交易是欺诈时才执行证明计算。与 ZK-rollup 相比,这显着降低了 gas 成本,并为在交易吞吐量上实现 x10-x100 改进打开了大门。在提交无效块并最终确定欺诈证明后,第 2 层中的链可以回滚并从前一个非欺诈块恢复。

图-1
图-1

介绍比较主要三个竞争者

在对汇总进行简要介绍之后,我们已经具备了处理第 2 层比较所需的所有基础。为了进行比较,我选择了第 2 层解决方案中的三个,在我看来,它们为 DApp 开发人员提供了一组更有趣的功能(即我个人会考虑部署我自己的应用程序的功能)。

它们都共享(或多或少)相同的构建块: 一个兼容以太坊的 VM,用于在 L2 中运行用户的 Solidity 合约;排序器/聚合器负责从 L2 处理来自 bundle 的事务,然后在 L1 提交;一组 L1 智能合约,用于编排交互并提交来自 L2 的数据;对等方使用不同的欺诈证明,以便能够驳斥聚合器提交的无效或伪造交易;以及使用股权来协调 L2 系统的激励和经济性。

尽管具有共同的构建块,但这三种解决方案在实现汇总协议的方式上却大不相同。 让我们详细看看它们中的每一个,以加快我们的比较速度。

Optimism

Optimism 利用以太坊生态系统中的所有现有工具,并对其进行修改以实施他们的乐观协议和第 2 层解决方案。

  • VM: 他们的 L2 VM 是 Optimism VM (OVM),它是对 Ethereum VM (EVM) 的修改,它用适合 L2 合约执行的新操作码替换了上下文相关的 EVM 操作码。VM 充当沙盒环境,保证确定性的智能合约执行和 L1 和 L2 之间的状态转换。
  • 客户端:  Optimism 还修改了广泛使用的以太坊客户端 Geth,因此它可以用作 L2 链的客户端。此客户端修改消息,以便其他 L2 客户端理解它们,并且它包括为构建汇总而对事务进行排序和批处理所需的所有过程。
  • Rollup 构造: 对于他们的 rollup 构造,Optimism 使用 Geth 客户端作为单个序列器。在 Optimism 中,交易数据被压缩,然后发送到 L2 上的 Sequencer Entrypoint 合约。定序器负责“汇总”这些“批量”交易并将数据发布到以太坊上,提供数据可用性,以便即使定序器消失,也可以启动新的定序器以从中断的地方继续。任何人都可以向 L1 发送新交易,并且这些交易被添加到 L1 合约中,该合约对每个 L2 交易充当“仅附加日志”。
  • 验证: 对于排序器发布的每个交易,验证者负责下载该交易并将其应用于其本地状态。如果一切都匹配,他们什么都不做,但如果有不匹配,验证者需要在链上提交所有有效的先前交易,并重新执行任何已发布的状态根以表明已发布的状态根实际上是错误的。如果欺诈验证成功,则从 L1 中修剪错误的状态和批次。
  • 经济模型: 每个 epoc 的批次排序器需要被称为债券管理器的智能合约标记为抵押。要成为抵押排序器,需要在合约中质押固定数量的 ETH。 每次检测到音序器的欺诈行为时,该赌注就会被削减。 定序器可以在存入 7 天后收回此股权,从这一刻起定序器的批次可以被视为最终批次,因为不再可能进行验证和削减。如果欺诈被成功证明,提议者保证金的百分比 (X%) 将被销毁,剩余的 (1-X)% 将按 比例分配给为欺诈证明提供数据的每个用户。 这种经济模型可以防止排序器变得流氓,但没有解决验证者向链尝试发送大量不同批次的大量欺诈证明(强制进行大量 L1 计算)的潜在情况。

Arbitrium:

  • VM 和客户端:  Arbitrium 实现了 Arbitrium 虚拟机。AVM 负责运行 L2 合约并保持其状态。VM 的状态被组织成一个 Merkle 树,并且执行是在这个 Merkle 树上生成的状态转换中完成的。Arbitrium 还实现了自己的自定义 L2 客户端。
  • Rollup 构建:  Arbitrium 使用单个链上合约来编排其Rollup协议。在协议中的任何一点,VM 都有一些完全确认和最终的状态,即它的哈希值存储在链上。 L2 中的新交易会触发此 Merkle 树的状态更新,该树存储链中的每个状态。为了验证存储的状态,协议的参与者可以将 Arbitrium 中称为有争议的断言(DA),以从一些状态哈希开始进行证明, VM 能够执行指定数量的计算步骤,从而产生指定的新哈希状态(及其相应的合约执行、付款和事件发射)。DA 可能最终有效(即计算成功)或无效。如果 DA 有效,系统将进入一个新状态,在树中具有新的状态哈希,以及在 DA 中指定的相应副作用(付款和日志)。如果 DA 无效,则拒绝分支并且状态不变。每个状态最多可以有一个 DA 跟随它。如果一个 DA 没有跟随状态,那么任何人都可以创建一个跟随它的 DA,创建一个新的分支点。结果将是一棵可能的未来树。所以我们可以看到,虽然 Optimism 使用多个 L1 智能合约在 L2 提交状态和执行,
图-2
图-2

经济模型:  Staking 在 Arbitrium 的汇总中起着关键作用。任何人都可以将赌注押在树的其中一个状态上。通过抵押一个状态(图中的方块),您可以断言该状态最终会被协议确认。 换句话说,您断言您在从当前状态到您所放置的方块的路径上的每个 DA 处都采用了正确的分支。如果你错了,你的赌注将被削减。您可以向右移动您的赌注,选择向上或向下分支,但您不能向左移动,因为这相当于取消您之前做出的赌注承诺;或同时投注两个平行分支。 在错误分支上赌注的参与者的赌注在赌注在被接受的分支上的参与者之间分配。 协议的构建确保最终所有独立的历史(分支)将汇集到一个 DA,最终解决争议。

图-3
图-3
  • **验证:**一旦 DA 的质押期限已过,并且剩余的所有及时(放置在质押期限之前)质押都在该 DA 的同一分支上,系统可以确认该 DA 的结果。 DA 要么被接受,要么被拒绝,当前状态移动到 DA 右侧的适当方块。 如果 DA 被确认为有效,其副作用(例如付款)将在链上实现。这就是 VM 的状态向前移动的方式。该协议是完全去信任的,因为任何参与者都有权通过在认为正确的分支上抵押来验证 VM 的状态。

Metis:

  • VM 和客户端:  Metis 使用与 EVM 兼容的虚拟机 Metis VM (MVM)。MVM 在功能和特性方面与上述项目中的所有 VM 有很大不同。在 MVM 中,  L2 的计算和存储是完全解耦的。 Metis 引入了去中心化自治公司 (DAC) 的概念。DAC 是系统中的独立实体,可以代表例如通过平台执行许多日常操作的大型企业)。DAC 是 Metis 运营的关键。当系统中实例化一个新的 DAC 时, 会专门为该 DAC 创建一个新的存储层。因此,考虑到链交互,DAC 拥有自己的存储空间。

Metis 的 L2 计算层(即区块挖掘、共识、跨层通信等),另一方面,由网络中的所有 DAC 共享,但它包含一个有趣的特性:所有计算进程作为单独的服务实现(遵循微服务方法) 允许计算层根据整个网络的需求和吞吐量进行扩展和缩减。 此外,MVM 引入了供应商的角色,他们可以注册并贡献计算能力,使第 2 层构建真正去中心化(这些供应商可以看作是来自 Optimism 平台的排序器)。提供者将根据产生的区块获得激励。最后,MVM 和 Metis 客户端中包含的一个真正强大的功能是其他 L2 平台所缺乏的,它不仅支持合约执行,还支持 与智能合约计算相关的去中心化存储。 因此,Metis 通过 MVM 中的 IPFS 解析器与 IPFS 网络集成,该解析器允许合约指向存储在 IPFS 中的不可变数据。例如,这可用于指向存储在 IPFS 网络中的机密数据。

图-5
图-5
  • Rollup 构建: 在 Metis 中,L2 事务的排序和批处理不是由单个排序器完成,而是由一个池完成。 将随机选择一组排序器来汇总状态根并将交易提交到 L1。 在 L1,Metis 部署了一组合约来协调 L2 批次到 L1 的承诺。
  • 经济模型: 每个排序器需要质押一定数量的 Metis Token 才能获得资格。Metis 生态系统具有强大的真实经济联系,交易价值可能达到数十亿,这一事实需要使用动态债券阈值 (DBT),以便将恶意行为的风险和回报与所管理的真实经济价值联系起来由参与交易的 DAC。DBT 是使用分配给定序器的 DAC 的最大经济容量作为基础来计算的。DAC 的经济能力是根据其总余额计算的。 因此,如果特定排序器的抵押 Metis 代币 (MT) 数量低于分配给它的 DAC 的 DBT,它将无法为该 DAC 批量交易。 DAC 的排序被阻止,直到在排序器池中找到合格的排序器。DAC 余额的新存款或取款会触发其 DBT 的自动更新。因此,对 DAC 余额的新提款将减少排序器所需的 DBT,反之亦然。这确保了所需的排序抵押品始终遵循 DAC 的实际经济价值。
  • 验证: 出于验证目的,Metis 平台在其 MVM 中引入了 L2 Rangers 的概念。L2 Rangers 是特殊 DAC 的成员,负责对一系列区块进行采样,并根据随机 DAC 定期分配的事务来验证状态根。Rangers 不仅验证其他 DAC 的顺序转换,而且还验证自己的 DAC(他们自己监视)。Ranger 完成的每一次验证都会获得一些 Metis 代币 (MT) 的奖励。对链状态的成功挑战(即欺诈证明)会奖励验证者一部分“恶意”定序器债券。另一方面,失败的挑战将导致 Ranger 验证器失去绑定并最终无法访问 MVM_RANGERS。

这种排序器和验证器都需要抵押的验证方法,解决了我们在 Optimism 平台验证过程中发现的一个关键问题,即在生成虚假欺诈证明时缺乏验证者的权益。抵押排序器和验证器(即 L2 Rangers)的良好协调也 缩短了证明窗口以提高网络效率。 诸如 Optimism 提出的协议,交易在验证窗口过去之前不能被认为是最终的,并且验证者有足够的时间发送所有证明。 这是验证者没有被抵押的直接后果。 尽管是检测无效状态更新的诱因,但作为验证者的不当行为并没有受到很大的惩罚。因此,为了防止潜在的不当行为,最终窗口被增加到“让每个人都可以发言”。在 Metis 中,这是不需要的,因为验证者是有抵押的,他们一方的不当行为将导致资金损失。验证器和排序器具有“游戏皮肤”,这可以减少最终窗口,这就是 Metis 能够在数小时内验证交易而不是 Optimism 等其他协议需要的 7 天的原因。

图-6
图-6

准备比较三个方案!

因此,事不宜迟,让我们将所有竞争者并排放置,以便对情况进行最后的总体了解:

图-7
图-7

如表中所示(以及我们上面的解释中所述),这三个平台非常适合将您的 DApp 部署在由以太坊主网作为 L1 支持的高性能 L2 解决方案中。 具体决策可能取决于您的性能、可扩展性、灵活性和功能要求。 Metis 是我们所描述的三个平台中功能最丰富的一个:它默认支持分散存储,并包括额外的性能和安全方案。存储的解耦、DAC 的使用以及动态 DBT 方案使其非常适合公司(无论大小)。Optimism对于以太坊极端主义者来说是一个很好的选择,因为它使用了以太坊生态系统中的所有工具(不需要新概念)。最后,Arbitrium 对状态历史验证的无许可质押使其成为一个真正有效和有趣的提议,它允许比标准汇总结构更快的验证时间,防止延迟攻击(尽管由于它使用的扁平架构,仍然比 Metis 慢一点)。

总之,没有唯一的正确答案,而是有一致的乐观 L2 平台可供选择。 我希望这个比较可以帮助您对 L2 做出更明智的决定,以选择是计划部署新的 DApp,还是从 L1 迁移到 L2。

原文地址:

Subscribe to 头雁区块链
Receive the latest updates directly to your inbox.
Verification
This entry has been permanently stored onchain and signed by its creator.