原文:《Proposed milestones for rollups taking off training wheels》by Vitalik Buterin

编译:隔夜的粥

目前有大量的(optimistic 和 ZK)rollup 项目,它们处于不同的发展阶段。 这些项目共有的一个模式是使用了临时辅助轮:虽然项目的技术仍然不成熟,但为了发展生态的目的,便选择了提前启动,而不是完全依赖其欺诈证明或 ZK 证明,然后有某种多重签名能够在代码中存在漏洞的情况下强制执行特定结果。

L2beat 的风险分析页面,显示了有关各种 rollup 项目的大量统计信息,包括它们的辅助轮状态:

Rollup二层网络的三个阶段:从临时辅助轮到最小化信任网络

然而,截至今天,这些信息还没有很好地被标准化,这使得用户很难理解特定 rollup 所使用的特定信任模型。 Rollup 团队甚至可能有动力对他们当前的信任模型保持沉默,而是将讨论重点放在完全无需信任的未来。

这篇文章提出了一个简单的基于里程碑的模式,来帮助我们将 Rollup 分为三个不同的阶段(具体取决于它们对辅助轮的依赖程度),这样做是为了实现以下几个目标:

  • 让用户更容易识别特定 Rollup 在多大程度上依赖于「对特定人群的信任」以及「对代码的信任」;
  • 激励 Rollup 项目方改进他们的信任模型,降低信任最小化被取消优先级的风险;
  • 给生态一些精确的里程碑来协调和庆祝,让我们说「The Surge」何时完成一半或完全完成,这与「The Merge」是类似的。

此模式并非旨在暗示一种道德判断,即尽快实现代码信任最大化是唯一正确的行动方案。 Rollup 绝对应该有一个明确的摘掉辅助轮的路线图,但只有在准备好后才应该摘掉辅助轮。

Rollup二层网络的三个阶段:从临时辅助轮到最小化信任网络

图片来源:由无界版图 AI 工具生成。

概要

阶段 0:完整的辅助轮

要求:

  • 该项目应该称自己为 Rollup。
  • 所有 Rollup 交易都应该上链。
  • 应该存在一个「rollup 全节点」:一个可独立运行的软件包,它可读取 L1 链,提取和 rollup 链,并计算 rollup 链的当前状态。 如果它不同意发布到合约中的 Rollup 状态根,它应该发出警报。
  • 应该有一种机制允许用户发布 Rollup 交易,或者至少确保在没有运营商合作的情况下提取他们的资产。 即运营商不能通过对用户的审查来冻结或窃取用户的资产;他们这样做的唯一可能工具,必须是发布虚假状态根。
  • 如果发布新状态根的链上机制只是一个多重签名,其中没有任何有效的欺诈证明或有效性证明,那也没关系。

阶段 1 :有限的辅助轮

要求:

  • 必须有一个正在运行的欺诈证明或有效性证明方案,它具有接受或拒绝哪些状态根被 Rollup 合约接受的实际权限。
  • 可以存在基于多重签名的覆盖机制(「安全委员会」),它可以覆盖欺诈证明或有效性证明系统的输出并发布状态根,以防万一证明系统代码被利用。然而:

      1)多重签名必须是 6 of 8 或更严格的(即 >= 8 个参与者并且签名阈值 >= 75%)

      2)至少有一个仲裁阻止组(即有足够多的参与者来阻止多重签名)必须在运行 Rollup 的组织之外。

  • 可以存在一种升级机制,但如果其阈值低于多重签名,则升级必须具有至少 7 天的强制激活延迟或防欺诈游戏的最长时长(以较长者为准)。这条规则的目标是确保升级机制不能被用来介入实时纠纷。

第 2 阶段:摘除辅助轮

要求:

如果代码没有漏洞,则不得有任何一组参与者(甚至是集体)可发布除代码输出之外的状态根。

这样做(「如果代码没有错误,那么没有人可以覆盖它」)的目的,是摆脱对安全委员会的过度依赖,后者只有在发生明显错误的情况下才能使用,例如:

  • Rollup 使用其状态转换功能的两个或多个独立实现(例如,两个不同的欺诈证明者,两个不同的有效性证明者,或每一个),只有当他们不同意时,安全理事会才能做出裁决——这只会在有一个漏洞时发生。
  • 如果有人在处理相同的数据后,提交包含两个不同状态根的两个有效证明的交易或一系列交易(即「证明者不同意自己」),控制权暂时移交给安全理事会。
  • 如果 >= 7 天没有提交有效证明(即「证明者被卡住」),控制权暂时移交给安全理事会。
  • 允许升级,但必须延迟 >= 30 天。