# 时间、插槽与以太坊权益证明中事件排序4月2日,一位不怀好意的以太坊网络参与者利用 mev-boost-relay 漏洞盗取了某 MEV 搜索者 2000 万美元。开发人员随后发布了五个补丁来修复这个漏洞,但与现有网络延迟和验证器策略相互作用,导致4月6日以太坊网络短暂出现不稳定。网络重组会降低区块生产率和结算保证,对网络健康不利。本文旨在探讨 mev-boost 与共识机制的相互影响、揭示以太坊权益证明中的微妙之处,并讨论一些可能的改进方向。我们的灵感来自搜索者遭受攻击和网络暂时不稳定这两个事件。### mev-boost 的作用mev-boost 是一个旨在缓解最大可提取价值(MEV)对以太坊网络负面影响的协议。**mev-boost 中有三个角色:*** 中继 - 将提案人连接到区块构建者的可信中介。* 构建者 - 构建区块以最大化自身和提案人 MEV 的复杂实体。* 提案人 - 以太坊权益证明验证器。每个区块的大致事件顺序是:构建者从用户、搜索者或其他来源接收交易创建区块。构建者将区块提交给中继。中继验证区块有效性,计算支付给提案人的费用。中继向当前时隙提案人发送"盲化"的区块头和支付金额。提案人评估收到的所有出价,签署最高支付对应的盲化区块头。提案人将签名后的区块头发回中继。中继通过本地信标节点发布区块并返回给提案人。通过区块内交易和区块奖励,构建者和提案人获得奖励。中继作为可信第三方,促进了提案人对区块空间的公平交换,以及构建者对 MEV 提取的交易排序。中继保护构建者避免 MEV 被盗,也保护提案人验证区块有效性、处理大量区块并确保准确支付。mev-boost 是关键基础设施,因为它让所有提案人无需建立信任关系就能公平获得 MEV,有助于以太坊长期去中心化。### 以太坊的分叉选择规则和 mev-boost在深入探讨攻击和应对之前,我们先来了解一下以太坊的权益证明(PoS)机制及其分叉选择规则。分叉选择规则让网络就链头达成共识。分叉选择规则是客户端评估的函数,它将已知区块和其他消息作为输入,输出"规范链"是什么。需要分叉选择规则是因为可能存在多个有效链可供选择。分叉选择规则与时间的关系较少为人所知,但这对区块生产有重大影响。#### 插槽和子插槽周期以太坊 PoS 中,时间被划分为 12 秒的插槽。PoS 算法随机指定验证器提议该插槽的区块,这个验证器称为提案人。同一插槽中,其他验证器被指派通过应用分叉选择规则,对他们本地视图中链头位置的最新区块进行投票。12 秒间隔分为三个 4 秒阶段。插槽中的事件如下,t=0 表示插槽开始:插槽中最关键的时刻是 t=4 的认证截止时间。如果认证验证器在截止前未看到区块,会对链上先前确认的头部投票。区块提议越早,传播时间越长,积累的见证就越多。从网络健康角度看,最佳的区块发布时间是 t=0。但由于区块价值随时间单调递增,提案人有动机延迟发布以积累更多 MEV。历史上,即使在认证期限后甚至接近插槽结束时,只要下一个验证器在构建后续插槽区块前观察到该区块,提案人仍可发布区块。为了推动理性行为(延迟发布区块)朝诚实行为(按时发布)发展,"诚实重组"被引入。#### 提案人提升和诚实重组两个新概念被引入共识客户端,对认证截止期有重要影响。提案人提升 - 试图通过给予提案人相当于完整认证权重 40% 的分叉选择"提升"来最小化重组平衡攻击。这种提升只持续一个插槽。诚实重组 - 采用提案人提升,允许诚实提案人用它来强制重组认证权重低于 20% 的区块。这在某些客户端中实现。此更改是可选的,因为它是提案人的本地决策,不影响验证器行为。在某些特殊情况下避免诚实重组:1. 在纪元边界区块期间2. 如果链未完成3. 如果链头不是从重组区块之前的插槽获取条件 3 确保诚实重组只从链中删除单个区块,作为断路器使链能在极端网络延迟时继续生成区块。#### 针对解绑攻击的中继和信标节点修复4月2日的解绑攻击中,提案人利用中继漏洞发送无效签名头进行攻击。随后几天,中继和核心开发团队发布多个软件补丁以减轻重复攻击风险。五个主要变化如下:1.中继更改:检查数据库是否存在已知恶意提案人。检查该时段内是否已将完整区块传递给 P2P 网络。在发布区块前引入 0-500ms 范围内的统一随机延迟。2.信标链节点更改(仅适用于中继信标链节点):广播信标区块前验证其有效性。发布区块前检查网络上是否有等价物。这些变化组合导致共识不稳定,而大多数验证器采用诚实重组策略进一步加剧了这种情况。#### 意外后果上述 5 个更改每一个都会增加中继区块发布热路径上的延迟,从而增加中继区块可能超过认证截止期而被广播的概率。实施这些检查前,签名头在 t=3 左右到达通常不会有问题。中继开销很低,可在 t=4 前发布区块。然而,随着五个补丁引入的延迟增加,中继可能部分负责延迟广播。在某些情况下,提案人发送签名头较晚加上中继引入额外延迟,会导致错过认证截止期。没有诚实重组时,这些区块很可能进入链上。但有诚实重组时,错过认证截止期意味着该区块将被下一个提案人重组。因此,攻击后几天内,分叉区块数量急剧增加。在最糟糕情况下,一小时内有 13 个区块(4.3%)被重组,比正常情况多约 5 倍。随着中继推出各种变化,分叉区块数量急增变得明显。经社区努力,许多更改被撤销,网络恢复健康状态。目前最有用的更改是信标节点区块验证和广播前等价检查。恶意提案人不能再通过向中继发送无效头部并确保中继信标节点发布前不看到等价区块来执行攻击。尽管如此,中继仍容易受到更普遍等价攻击的影响。### 未来方向研究界应评估"可接受"的重组数量,考虑等价攻击带来的普遍风险,确定是否需要缓解措施。正在积极探索的几个方向:实现"headlock"保护 mev-boost 免受等价攻击。这需要更改共识客户端软件,可能需要延长认证截止期。增加 mev-boost 软件漏洞赏金计划。扩展模拟软件探索子插槽定时对网络稳定性的影响。优化中继区块发布路径减少不必要延迟。将 mev-boost 纳入共识客户端,即 enshrined-PBS(ePBS)。增加基于延迟和认证截止期问题的测试。鼓励中继客户端多样性。考虑调整等价惩罚措施。总的来说,我们对 MEV 和 mev-boost 生态系统重新激发的动力感到兴奋。通过解绑攻击和缓解措施,我们了解了延迟、mev-boost 和共识机制之间的关键关系;我们希望协议能够不断加强。
以太坊权益证明中的时间与事件排序:mev-boost与共识机制的微妙互动
时间、插槽与以太坊权益证明中事件排序
4月2日,一位不怀好意的以太坊网络参与者利用 mev-boost-relay 漏洞盗取了某 MEV 搜索者 2000 万美元。开发人员随后发布了五个补丁来修复这个漏洞,但与现有网络延迟和验证器策略相互作用,导致4月6日以太坊网络短暂出现不稳定。网络重组会降低区块生产率和结算保证,对网络健康不利。
本文旨在探讨 mev-boost 与共识机制的相互影响、揭示以太坊权益证明中的微妙之处,并讨论一些可能的改进方向。我们的灵感来自搜索者遭受攻击和网络暂时不稳定这两个事件。
mev-boost 的作用
mev-boost 是一个旨在缓解最大可提取价值(MEV)对以太坊网络负面影响的协议。
mev-boost 中有三个角色:
每个区块的大致事件顺序是:
构建者从用户、搜索者或其他来源接收交易创建区块。
构建者将区块提交给中继。
中继验证区块有效性,计算支付给提案人的费用。
中继向当前时隙提案人发送"盲化"的区块头和支付金额。
提案人评估收到的所有出价,签署最高支付对应的盲化区块头。
提案人将签名后的区块头发回中继。
中继通过本地信标节点发布区块并返回给提案人。通过区块内交易和区块奖励,构建者和提案人获得奖励。
中继作为可信第三方,促进了提案人对区块空间的公平交换,以及构建者对 MEV 提取的交易排序。中继保护构建者避免 MEV 被盗,也保护提案人验证区块有效性、处理大量区块并确保准确支付。
mev-boost 是关键基础设施,因为它让所有提案人无需建立信任关系就能公平获得 MEV,有助于以太坊长期去中心化。
以太坊的分叉选择规则和 mev-boost
在深入探讨攻击和应对之前,我们先来了解一下以太坊的权益证明(PoS)机制及其分叉选择规则。分叉选择规则让网络就链头达成共识。
分叉选择规则是客户端评估的函数,它将已知区块和其他消息作为输入,输出"规范链"是什么。需要分叉选择规则是因为可能存在多个有效链可供选择。
分叉选择规则与时间的关系较少为人所知,但这对区块生产有重大影响。
插槽和子插槽周期
以太坊 PoS 中,时间被划分为 12 秒的插槽。PoS 算法随机指定验证器提议该插槽的区块,这个验证器称为提案人。同一插槽中,其他验证器被指派通过应用分叉选择规则,对他们本地视图中链头位置的最新区块进行投票。12 秒间隔分为三个 4 秒阶段。
插槽中的事件如下,t=0 表示插槽开始:
插槽中最关键的时刻是 t=4 的认证截止时间。如果认证验证器在截止前未看到区块,会对链上先前确认的头部投票。区块提议越早,传播时间越长,积累的见证就越多。
从网络健康角度看,最佳的区块发布时间是 t=0。但由于区块价值随时间单调递增,提案人有动机延迟发布以积累更多 MEV。
历史上,即使在认证期限后甚至接近插槽结束时,只要下一个验证器在构建后续插槽区块前观察到该区块,提案人仍可发布区块。为了推动理性行为(延迟发布区块)朝诚实行为(按时发布)发展,"诚实重组"被引入。
提案人提升和诚实重组
两个新概念被引入共识客户端,对认证截止期有重要影响。
提案人提升 - 试图通过给予提案人相当于完整认证权重 40% 的分叉选择"提升"来最小化重组平衡攻击。这种提升只持续一个插槽。
诚实重组 - 采用提案人提升,允许诚实提案人用它来强制重组认证权重低于 20% 的区块。这在某些客户端中实现。此更改是可选的,因为它是提案人的本地决策,不影响验证器行为。
在某些特殊情况下避免诚实重组:
条件 3 确保诚实重组只从链中删除单个区块,作为断路器使链能在极端网络延迟时继续生成区块。
针对解绑攻击的中继和信标节点修复
4月2日的解绑攻击中,提案人利用中继漏洞发送无效签名头进行攻击。随后几天,中继和核心开发团队发布多个软件补丁以减轻重复攻击风险。五个主要变化如下:
1.中继更改:
检查数据库是否存在已知恶意提案人。
检查该时段内是否已将完整区块传递给 P2P 网络。
在发布区块前引入 0-500ms 范围内的统一随机延迟。
2.信标链节点更改(仅适用于中继信标链节点):
广播信标区块前验证其有效性。
发布区块前检查网络上是否有等价物。
这些变化组合导致共识不稳定,而大多数验证器采用诚实重组策略进一步加剧了这种情况。
意外后果
上述 5 个更改每一个都会增加中继区块发布热路径上的延迟,从而增加中继区块可能超过认证截止期而被广播的概率。
实施这些检查前,签名头在 t=3 左右到达通常不会有问题。中继开销很低,可在 t=4 前发布区块。
然而,随着五个补丁引入的延迟增加,中继可能部分负责延迟广播。在某些情况下,提案人发送签名头较晚加上中继引入额外延迟,会导致错过认证截止期。没有诚实重组时,这些区块很可能进入链上。但有诚实重组时,错过认证截止期意味着该区块将被下一个提案人重组。
因此,攻击后几天内,分叉区块数量急剧增加。在最糟糕情况下,一小时内有 13 个区块(4.3%)被重组,比正常情况多约 5 倍。随着中继推出各种变化,分叉区块数量急增变得明显。经社区努力,许多更改被撤销,网络恢复健康状态。
目前最有用的更改是信标节点区块验证和广播前等价检查。恶意提案人不能再通过向中继发送无效头部并确保中继信标节点发布前不看到等价区块来执行攻击。尽管如此,中继仍容易受到更普遍等价攻击的影响。
未来方向
研究界应评估"可接受"的重组数量,考虑等价攻击带来的普遍风险,确定是否需要缓解措施。
正在积极探索的几个方向:
实现"headlock"保护 mev-boost 免受等价攻击。这需要更改共识客户端软件,可能需要延长认证截止期。
增加 mev-boost 软件漏洞赏金计划。
扩展模拟软件探索子插槽定时对网络稳定性的影响。
优化中继区块发布路径减少不必要延迟。
将 mev-boost 纳入共识客户端,即 enshrined-PBS(ePBS)。
增加基于延迟和认证截止期问题的测试。
鼓励中继客户端多样性。
考虑调整等价惩罚措施。
总的来说,我们对 MEV 和 mev-boost 生态系统重新激发的动力感到兴奋。通过解绑攻击和缓解措施,我们了解了延迟、mev-boost 和共识机制之间的关键关系;我们希望协议能够不断加强。