即将到来的Electra升级将为以太坊的质押机制带来多项显著改进,包括支持更灵活的验证者管理、验证者存款和委员会结构的优化。文章还详述了在EigenLayer中发现的一个关键边缘案例及其解决方案,强调了跨协议互动的重要性和审计的价值,以及在协议开发过程中需要应对的复杂性和机遇。
即将到来的 Electra 升级 将为以太坊带来几个令人激动的改进,特别是在协议的质押机制方面。其中一个最显著的变化是引入了可执行层触发的退出 ( EIP-7002),这允许更灵活的验证者管理。该升级还包括对验证者存款 ( EIP-6110) 和委员会结构 ( EIP-7549) 的改进,从而增强了协议的整体效率。
在这些改进中,我们团队防止了一个非常棘手的边缘案例,特别值得注意,尤其是对于重新质押协议。这个案例源于 EigenLayer 提议的升级与以太坊不断发展的验证者激活过程之间的互动。这个漏洞非常容易被忽视,实际上,一名顶尖审核员就曾错过它。
EigenLayer 本质上是一个安全市场。质押者为 AVS(主动验证服务)提供经济安全,以换取奖励。AVS 使用这一安全性为其用户构建产品。
EigenLayer 的基本思想优雅:通过使质押 ETH 有能力保障各种协议,从而扩展其用途。然而,这种扩展引入了显著的复杂性,尤其是因为 EigenLayer 是一个新颖的项目,对整个行业具有深远的影响,其代码库被设计为不可变。
在 EigenLayer 之前的 EigenPods 实现中,可以使用余额低于激活阈值的验证者的 ETH 进行重新质押。随着 Electra 升级,验证者存款现在通过队列系统处理,引入了验证者余额跟踪和验证的新动态。
这个边缘案例出现在 EigenLayer 的 检查点系统 和验证者存款队列处理之间的互动。以下是它可能如何表现出来的:
这个场景理论上可能允许在 EigenLayer 的检查点系统中暂时失真,用户在能够规避削减事件的同时获得奖励。然而,值得注意的是,这个边缘案例是在审核过程中发现的,早于 EigenLayer 的削减功能的实施或部署。在任何时候,都没有任何资金处于风险之中。
EigenLayer 团队与审核员合作,实施了一个强健的解决方案来解决这个边缘案例。修复的核心在于增强 verifyWithdrawalCredentials
函数,加入了一个关键的验证检查:
此检查具有多个重要目的:
FAR_FUTURE_EPOCH
" 来进行验证。FAR_FUTURE_EPOCH
"。因此,此检查本质上检查验证者是否处于激活队列中。该解决方案有效地关闭了潜在的攻击载体,通过:
此实施证明了理解跨协议互动的重要性,特别是在处理像 Electra 这样基础的协议升级时。修复不仅解决了眼前的边缘案例,而且强化了系统以防止未来以太坊升级可能出现的类似场景。
这一发现突显了协议开发的几个重要方面:
生态系统复杂性:以太坊升级与二层协议之间的互动要求对边缘案例进行仔细考虑。
审计的价值:通过全面审计的早期检测防止潜在问题在影响用户之前发生。
协议演变:随着以太坊的不断发展,建立在其之上的协议必须进行调整并增强安全措施。
发现和解决这个边缘案例例证了在以太坊上构建复杂系统所面临的挑战和机遇。它们还强调了在生态系统内进行全面审计与合作的重要性。
这个经验进一步强调了协议开发需要技术卓越和稳健的组织支持。许多团队面临类似的挑战,但只有少数能够在如 EigenLayer 这样的规模和复杂性下处理它们。他们在安全方面的主动方法和愿意解决边缘案例使他们在这个领域脱颖而出。我们感谢 EigenLayer 团队提供深入研究 Electra/Pectra 框架的机会,进一步增强了安全性。
特别感谢 EigenLayer 的 Alex Wade 的贡献。
- 原文链接: certora.com/blog/the-ele...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!