EigenLayer如何防止以太坊Electra升级中的关键验证者风险

  • Certora
  • 发布于 2024-12-20 12:37
  • 阅读 12

即将到来的Electra升级将为以太坊的质押机制带来多项显著改进,包括支持更灵活的验证者管理、验证者存款和委员会结构的优化。文章还详述了在EigenLayer中发现的一个关键边缘案例及其解决方案,强调了跨协议互动的重要性和审计的价值,以及在协议开发过程中需要应对的复杂性和机遇。

即将到来的 Electra 升级 将为以太坊带来几个令人激动的改进,特别是在协议的质押机制方面。其中一个最显著的变化是引入了可执行层触发的退出 ( EIP-7002),这允许更灵活的验证者管理。该升级还包括对验证者存款 ( EIP-6110) 和委员会结构 ( EIP-7549) 的改进,从而增强了协议的整体效率。

在这些改进中,我们团队防止了一个非常棘手的边缘案例,特别值得注意,尤其是对于重新质押协议。这个案例源于 EigenLayer 提议的升级与以太坊不断发展的验证者激活过程之间的互动。这个漏洞非常容易被忽视,实际上,一名顶尖审核员就曾错过它。

理解 EigenLayer 和重新质押

EigenLayer 本质上是一个安全市场。质押者为 AVS(主动验证服务)提供经济安全,以换取奖励。AVS 使用这一安全性为其用户构建产品。

EigenLayer 的基本思想优雅:通过使质押 ETH 有能力保障各种协议,从而扩展其用途。然而,这种扩展引入了显著的复杂性,尤其是因为 EigenLayer 是一个新颖的项目,对整个行业具有深远的影响,其代码库被设计为不可变。

边缘案例

在 EigenLayer 之前的 EigenPods 实现中,可以使用余额低于激活阈值的验证者的 ETH 进行重新质押。随着 Electra 升级,验证者存款现在通过队列系统处理,引入了验证者余额跟踪和验证的新动态。

这个边缘案例出现在 EigenLayer 的 检查点系统 和验证者存款队列处理之间的互动。以下是它可能如何表现出来的:

  1. Electra 前:可能会创建一个余额为 31 ETH 的验证者,它仍然低于激活阈值。EigenLayer 会确认该余额,并继续处理该验证者。
  2. 在 Electra 转换期间:验证者的初始质押将被放入存款队列以进行处理。
  3. Electra 后:可以在 EigenLayer 中发起一个检查点,但未完成,保持了先前状态的快照。
  4. 稍后阶段:存款队列处理并恢复验证者的余额。

这个场景理论上可能允许在 EigenLayer 的检查点系统中暂时失真,用户在能够规避削减事件的同时获得奖励。然而,值得注意的是,这个边缘案例是在审核过程中发现的,早于 EigenLayer 的削减功能的实施或部署。在任何时候,都没有任何资金处于风险之中。

解决方案

EigenLayer 团队与审核员合作,实施了一个强健的解决方案来解决这个边缘案例。修复的核心在于增强 verifyWithdrawalCredentials 函数,加入了一个关键的验证检查:

此检查具有多个重要目的:

  1. 激活验证:确保验证者要么已经在 Beacon 链上激活,要么正在激活过程中。通过检查验证者的激活纪元是否未设置为 "FAR_FUTURE_EPOCH" 来进行验证。
  2. 余额保护:在 Electra 升级的背景下,此检查尤为重要,因为该升级引入了一种新的 "待处理存款队列" 机制。在此升级下,尚未达到激活纪元的验证者在队列中将其当前余额和有效余额临时重置为 0,并将其激活纪元设置为 "FAR_FUTURE_EPOCH"。因此,此检查本质上检查验证者是否处于激活队列中。
  3. 削减保护:从削减的角度来看,这个验证防止了在余额重置期间,Pod 份额暂时下降并在后期恢复的情况,这可能造成一个份额在 EigenLayer 被削减期间暂时免疫的窗口。

该解决方案有效地关闭了潜在的攻击载体,通过:

  • 防止未激活的验证者被添加到 Pods
  • 确保验证者生命周期中余额跟踪的一致性
  • 维护 EigenLayer 的削减机制的完整性
  • 保护 against any attempts to exploit the temporary balance reset during the Electra upgrade

此实施证明了理解跨协议互动的重要性,特别是在处理像 Electra 这样基础的协议升级时。修复不仅解决了眼前的边缘案例,而且强化了系统以防止未来以太坊升级可能出现的类似场景。

更广泛的影响

这一发现突显了协议开发的几个重要方面:

  1. 生态系统复杂性:以太坊升级与二层协议之间的互动要求对边缘案例进行仔细考虑。

  2. 审计的价值:通过全面审计的早期检测防止潜在问题在影响用户之前发生。

  3. 协议演变:随着以太坊的不断发展,建立在其之上的协议必须进行调整并增强安全措施。

结论

发现和解决这个边缘案例例证了在以太坊上构建复杂系统所面临的挑战和机遇。它们还强调了在生态系统内进行全面审计与合作的重要性。

这个经验进一步强调了协议开发需要技术卓越和稳健的组织支持。许多团队面临类似的挑战,但只有少数能够在如 EigenLayer 这样的规模和复杂性下处理它们。他们在安全方面的主动方法和愿意解决边缘案例使他们在这个领域脱颖而出。我们感谢 EigenLayer 团队提供深入研究 Electra/Pectra 框架的机会,进一步增强了安全性。

特别感谢 EigenLayer 的 Alex Wade 的贡献。

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

0 条评论

请先 登录 后评论
Certora
Certora
Securing DeFi through smart contract audits, formal verification, and protocol design reviews.