Vitalik:Rollup 安全性 第一阶段和第二阶段何时有意义的数学原理

本文讨论了以太坊 Rollup 安全性的三个阶段,以及 L2 从一个阶段过渡到下一个阶段的最佳时机。文章建立了一个简化的数学模型,用于量化在不同阶段 L2 发生故障的概率,并分析了安全委员会成员失效和证明系统出现故障的可能性对 L2 安全性的影响,并建议至少应该直接进入 Stage 1 阶段。

第一阶段和第二阶段何时有意义的数学原理

第一阶段和第二阶段何时有意义的数学原理

对此前的草稿进行了扩展:<https://x.com/VitalikButerin/status/1919263869308191017>

以太坊 Rollup 安全性的三个“阶段”可以用安全委员会何时可以否决无需信任的(即纯密码学或博弈论)组件来描述:

  • 第 0 阶段:安全委员会拥有完全控制权。可能会有一个证明系统(optimistic 或 ZK)在运行,但安全委员会可以通过简单多数投票来推翻它。因此,证明系统只是“仅供参考”。
  • 第 1 阶段:安全委员会可以用 75%(至少 8 个中的 6 个)的批准来否决。法定人数阻止子集(即 >= 3)必须在主要组织之外。因此,否决证明系统存在一个高但并非无法逾越的障碍。
  • 第 2 阶段:安全委员会只能在出现可证明的错误时才能采取行动。可证明的错误可能是,例如,两个冗余的证明系统(例如 OP 和 ZK)彼此不一致。而且如果存在可证明的错误,它只能在提出的答案中选择一个:它不能随意回答。

我们可以用一个图表来模拟,该图表显示了在每个阶段安全委员会拥有的“投票份额”:

一个重要的问题是:L2 何时从第 0 阶段过渡到第 1 阶段,以及从第 1 阶段过渡到第 2 阶段是最佳的?

不立即进入第 2 阶段的唯一有效原因是,你不完全信任证明系统——这是一种可以理解的担忧:它包含大量代码,如果代码出现问题,那么攻击者可能会窃取所有用户的资产。你对证明系统越有信心(或者,相反,你对安全委员会的信心越低),你就越想向右移动。

事实证明,我们可以用一个简化的数学模型来量化这一点。首先,让我们列出假设

  • 每个安全委员会成员都有 10% 的独立可能性“崩溃”
  • 我们将活跃性失败[拒绝签名或密钥无法访问]和安全性失败[签署错误的东西或密钥被黑]视为同样可能。事实上,我们假设一个单一的“崩溃”类别,其中“崩溃”的安全委员会成员既签署了错误的东西,又未能签署正确的东西
  • 在第 0 阶段,安全委员会是 7 个中的 4 个,在第 1 阶段,它是 8 个中的 6 个。
  • 我们假设一个单一的整体证明系统(而不是 2-of-3 设计,在这种设计中,如果两者不同意,安全委员会可以打破僵局)。因此,在第 2 阶段,安全委员会根本不重要。

在这些假设下,并且给定证明系统崩溃的特定概率,我们希望最小化 L2 崩溃的概率

我们可以使用二项分布来实现这一点:

  • 如果每个安全委员会成员都有 10% 的独立可能性崩溃,那么 7 个成员中至少有 4 个崩溃的几率是 ∑i=47(7i)∗0.1i∗0.97−i=0.002728。因此,第 0 阶段的 Rollup 有固定的 0.2728% 的失败几率。
  • 如果证明系统失败,并且安全委员会获得 >= 3 次失败,因此无法否决(概率 ∑i=38(8i)∗0.1i∗0.98−i=0.03809179 乘以证明系统失败率),或者如果安全委员会获得 6 次以上失败,并且可以自己强制执行不正确的答案(固定概率 ∑i=68(8i)∗0.1i∗0.98−i=0.00002341),则第 1 阶段的 Rollup 可能会失败。
  • 第 2 阶段 Rollup 崩溃的几率仅等于证明系统失败的概率

这是图表形式:

正如所推测的那样,随着证明系统质量的提高,最佳阶段从第 0 阶段转移到第 1 阶段,然后从第 1 阶段转移到第 2 阶段。使用第 0 阶段质量的证明系统执行第 2 阶段是最糟糕的。

现在,请注意,上述简化模型中的假设非常不完善

  • 实际上,安全委员会成员不是独立的,并且具有“共模故障”:他们可能会勾结,或者以相同的方式被胁迫或入侵,等等。要求在主要组织外部拥有一个可以阻止法定人数的子集是为了缓解这种情况,但这仍然远非完美。
  • 证明系统本身可能是多个独立系统的组合(这是我在 <https://ethereum-magicians.org/t/a-simple-l2-security-and-finalization-roadmap/23309...> 中倡导的)。在这种情况下,(i) 证明系统崩溃的概率可能最终非常低,并且 (ii) 即使在第 2 阶段,安全委员会也很重要,因为这涉及打破僵局。

这两个论点都暗示着第 1 阶段和第 2 阶段比图表显示的更具吸引力。如果你认真对待数学,那么第 0 阶段几乎永远是不合理的:你至少应该直接进入第 1 阶段。我听到的主要反对意见是:如果发生关键错误,可能很难让 8 个安全委员会成员中的 6 个足够快地签名以修复它。但是有一个简单的解决方法:允许任何一个安全委员会成员将提款延迟 1 或 2 周,给其他人足够的时间采取行动。

但与此同时,过快地跳到第 2 阶段是一个错误,尤其是如果转移到第 2 阶段的工作是以加强底层证明系统的工作为代价的。理想情况下,像 l2beat 这样的数据提供商应该显示证明系统审计和成熟度指标(理想情况下是证明系统实现的,而不是整个 Rollup,这样我们就可以重复使用)以及阶段。

  • 原文链接: vitalik.eth.limo/general...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
Vitalik Buterin
Vitalik Buterin
https://vitalik.ca/