EIP-8062 解读:为 0x01 验证者引入 Sweep 提款费,驱动以太坊质押整合
【免费下载链接】EIPsThe Ethereum Improvement Proposal repository项目地址: https://gitcode.com/GitHub_Trending/ei/EIPs
导读
EIP-8062(Add sweep withdrawal fee for 0x01 validators)是 Ethereum Improvement Proposal 仓库(EIPS 目录)中的一份 Standards Track / Core 类别草案,提出对使用0x01提款凭证的验证者在"余额超出 32 ETH 的部分"上收取 0.05% 的周期性 skim 提款费(sweep withdrawal fee),并在共识层直接销毁。该提案服务于以太坊快速最终性(fast finality)路线图中的质押整合目标:通过引入这笔小额、按比例收取的费用,消除0x01验证者相对0x02复合验证者的免费提款优势,促使质押服务商(SSP)将质押迁移整合到0x02验证者。读完本文,你将掌握该 EIP 的核心参数设计、process_withdrawals()的最小改动实现、费用背后的 EL 工作量计价逻辑,以及它与 EIP-4895、EIP-7251、EIP-7002、EIP-8068 等提案的关联。
背景:0x01 与 0x02 验证者,以及免费的 Sweep 提款
以太坊共识层存在两类提款凭证(withdrawal credential):
0x01(skimming)验证者:使用执行层地址作为提款凭证,余额超过 32 ETH 的部分会由共识层定期"扫走"(sweep),通过 EIP-4895 定义的系统级 withdrawal 操作推送到执行层。这个过程对验证者免费,即"免费的部分提款"。0x02(compounding)验证者:由 EIP-7251(Increase the MAX_EFFECTIVE_BALANCE,Electra 升级)引入的复合提款凭证。验证者可以将奖励持续复合进余额,并通过 EL 触发的部分提款(EIP-7002)按需取出,无需依赖周期性的 sweep。
快速最终性路线图的核心诉求是质押整合(stake consolidation):让质押服务商从大量 32 ETH 的0x01验证者,迁移到少量高余额的0x02复合验证者,从而缩小活跃验证者集合、减轻网络签名聚合与状态存储负担。然而,0x01验证者拥有近乎理想的资本效率(见下文"资本效率与机会成本"一节)和免费的部分提款,在考虑切换成本后,质押服务商缺乏迁移动力。与此同时,每次 sweep 提款都会在共识层(CL)和执行层(EL)占用未被计价的资源。EIP-8062 认为,当以太坊路线图依赖于质押者向0x02验证者整合时,让0x01验证者拥有会计上的优势是不合适的。
提案核心:0.05% 的 Sweep 提款费
EIP-8062 的解决方案非常克制:仅对0x01验证者的部分 sweep 提款(非全额退出)征收一笔小额费用,费用为提款金额的 0.05%,在共识层直接销毁(burn),实现方式是对process_withdrawals()做最小修改,并引入一个新常量:
| 常量 | 值 | | - | - | |WITHDRAWAL_FEE_FRACTION|2000|
0.05% 即1/2000,因此fee = w.amount // WITHDRAWAL_FEE_FRACTION(整除)。为什么选择按比例而非固定费用?文档明确指出:如果采用固定费用,一旦整合导致0x01验证者数量大幅减少,sweep 会命中每个验证者的频率更高、单次提款余额更低,固定费用会反复征收,产生极端结果;而按提款金额的百分比收费,可以保持质押者承担的总负担恒定。同时,现有逻辑保持不变以最小化复杂度,代价是验证者在 skim 后余额会略低于 32 ETH(与在 skim 后立即受到惩罚时的情形类似)。
费用规模的经济学测算
文档给出了细致的量化测算,帮助读者理解这笔费用在真实质押场景中的分量:
- 平均每次 sweep 提款约为0.0235 ETH,按 0.05% 计算,单次预期费用为
0.0235 ETH × 0.0005 = 11,750 Gwei。 - 单个验证者一年内的总预期费用为0.00048 ETH,按当时 ETH 价格折算约2 美元/年。
- 一个运行 50,000 个
0x01验证者(略低于全网质押量的 5%)的 SSP,每年需支付约10 万美元的提款费。
表 1:提议费率下质押者的年度费用
| 验证者数量(质押占比) | 成本(ETH/年) | 成本(USD/年) | | - | -: | -: | | 1(~0.0001%) | 0.00048 | $2 | | 100(~0.01%) | 0.048 | $200 | | 10,000(~1%) | 4.8 | $20,000 | | 50,000(~5%) | 24 | $100,000 | | 100,000(~10%) | 48 | $200,000 |
表 1.提议提款费下质押者的成本。(来源:EIPS/eip-8062.md)
从激励角度看:运行单个0x01验证者的独立质押者不太可能因 2 美元的费用而改变决策;但运行 50,000 个验证者的 SSP 面临每年 10 万美元的成本,在完全竞争的市场中无法将这笔成本转嫁给客户,因而产生中等强度的整合动机。此外,虽然切换成本(例如依赖0x01凭证的智能合约可能被冻结,或需要全额退出与重新进入并承担机会成本)可能暂时高于年费,但一旦经常性费用落地、协议承诺逐步淘汰 SSP 的0x01验证者(甚至可能逐步提高费率),切换最终将不得不发生。
规范:对 process_withdrawals() 的最小修改
规范部分只修改一个函数——共识层(Beacon Chain)的process_withdrawals()。伪代码如下:
def process_withdrawals(state: BeaconState, payload: ExecutionPayload) -> None: ... # In this existing for-loop, calculate a fee before decreasing the balance for w in expected_withdrawals: vi = w.validator_index fee = 0 if not has_compounding_withdrawal_credential(state.validators[vi]) and w.amount != state.balances[vi]: fee = w.amount // WITHDRAWAL_FEE_FRACTION decrease_balance(state, vi, w.amount + fee)逐行拆解这段最小改动:
expected_withdrawals是共识层按 epoch 计算出的待处理提款列表,其来源正是 EIP-4895 定义的 withdrawal 机制——每个提款对象包含{index, validator_index, address, amount}四个字段。has_compounding_withdrawal_credential(state.validators[vi])判断验证者是否为0x02复合凭证。0x02验证者被豁免(无论是否全额退出),文档给出的理由有两点:一是避免伤害整合目标本身;二是承认 2048 ETH 是协议当前设计能够处理的最大质押量(对应 EIP-7251 中的MAX_EFFECTIVE_BALANCE_ELECTRA = 2048 ETH)。w.amount != state.balances[vi]用于区分部分提款(sweep)与全额退出(full exit):只有余额不等于提款金额(即非全额退出)时才收取费用。fee = w.amount // WITHDRAWAL_FEE_FRACTION按提款金额整除计算 0.05% 的费用,随后decrease_balance(state, vi, w.amount + fee)将提款金额与费用一并从验证者余额中扣除——费用在 CL 上被直接销毁,不进入任何地址。
需要强调的边界行为:因为费用是在减少余额之前计算的(w.amount是提款前的计算基准),且0x01验证者余额恰好等于 32 ETH 时 sweep 金额为 0,所以实际受影响的是"余额略高于 32 ETH"的验证者;在收取费用后,其余额会略低于 32 ETH。
费用定价依据:EL 工作量的近似计价
为什么是 0.05% 而不是其他数字?文档给出了基于 EL 工作量与 base fee 的校准逻辑。一次 sweep 提款在执行层造成的资源消耗可分解为三部分(依据 EIP-2780 的资源计价框架):
- 500 gas—— 对已知无代码账户的 cold touch(EIP-2780 规定的
COLD_ACCOUNT_ACCESS); - 1000 gas—— 账户 trie 中一次账户叶子写入(EIP-2780 规定的
ACCOUNT_WRITE); - 704 gas—— 一个 EIP-4895 提款对象
{index: uint64, validator_index: uint64, address: bytes20, amount: uint64}的编码与存储,共8 + 8 + 20 + 8 = 44字节,按 calldata 的 16 gas/字节 计价。
合计约2204 gas。以过去一年平均 base fee 4.53 gwei 计算,单次提款的 EL 成本约为2204 × 4.53 ≈ 9,984 Gwei,与按 0.05% 费率对平均 0.0235 ETH 提款收取的 11,750 Gwei 处于同一量级(且最近数月 base fee 实际更低)。也就是说,0.05% 的费率大致等价于让0x01验证者为其 sweep 在 EL 上造成的开销买单。
文档同时坦诚了该计价的边界:此账目不包含0x01验证者因 sweep 对 CL 造成的工作负载;同理,0x02验证者通过 EIP-7002 触发的 EL 部分提款也未被收取 CL 工作量费用,但它们在 EL 侧因主动触发提款而承担了更全面的成本(提款请求预部署合约的调用与队列存储)。
快速最终性的两条路径与质押整合的必要性
文档在 Rationale 中阐述了快速最终性为何依赖整合。快速最终性(fast finality,即单 slot 最终性 SSF)的最佳实现方式是减少每轮投票的活跃验证者集合。设想了两条路径:
- Orbit SSF:活跃集合按权重轮换,大型整合验证者始终保持活跃,小型验证者活跃频率更低;
- 固定席位制:设定固定数量的验证者席位(例如仅前 8,192 个最大验证者获得席位)。
无论哪条路径,都需要质押整合才能达到理想的质押权重分配与最优性能。这正是该提案将费用问题与"路线图成败"绑定论述的原因。
资本效率差异:0x01 的另一个优势
除了免费提款,0x01验证者还拥有资本效率优势,这构成了迁移阻力的第二个来源:
0x02复合验证者在现有滞后(hysteresis)设计下,平均有0.75 ETH的余额不计入有效余额(EB),因为余额从 EB 增长到 EB+1 的区间内闲置余量r ∈ [0.25, 1.25),平均值(0.25+1.25)/2 = 0.75;0x01验证者平均仅闲置0.0235/2 = 0.01175ETH,资本效率远高于0x02验证者,尤其是在后者整体余额不大时。
图 1(上文)展示了不同验证者配置相对"中性 EB 设计"基线的收益率变化:蓝线为0x02复合验证者(因平均 0.75 ETH 的 EB 拖累而收益率更低),绿色圆点为 skim 的 32 ETH / 2048 ETH 验证者,橙色线为本文提议的0x01提款费。可以看到,在验证者余额低于约 1,000 ETH 时,这笔费用并不能完全抵消0x02验证者因收益率拖累(yield drag)造成的损失——这为备选方案(提高费率)留下了空间。
配套提案 EIP-8068:中性有效余额设计
EIP-8068(Neutral effective balance design)正是针对上述资本效率差异的配套方案:通过将 EB 上升滞后阈值设为 +0.5(HYSTERESIS_UPWARD_MULTIPLIER = 2)、下降阈值设为 +0.25(HYSTERESIS_DOWNWARD_MULTIPLIER = 3),使复合验证者平均E = b,从而将图 1 中的蓝线"平移"到黑色基线,让所有复合验证者与0x01验证者获得相同收益率。EIP-8068 还引入了temporary_upward_threshold与 EB 重置机制,防止0x02验证者通过部分提款利用滞后规则"卡"出超额 EB(例如持有 32.75 ETH 却保持 33 ETH EB)。EIP-8068 与 EIP-8062 的相互引用表明,两者是为同一硬分叉配套设计的激励修正方案。
备选方案:更高费率的量化对比
如果 EIP-8068 未能与 EIP-8062 进入同一硬分叉,文档建议通过提高提款费率来补偿0x02验证者较低的资本效率。图 2 展示了三种备选费率(红色线)与主提案(橙色线)的对比,白色方块标注了"在某个验证者余额下,0x01验证者与0x02验证者资本效率相等"的位置。
三种备选方案:
| 备选方案 |WITHDRAWAL_FEE_FRACTION| 费率 | 效果 | | - | -: | -: | - | | 主选项(红色实线) |200| 0.5% | 32 ETH 的0x01验证者与 128 ETH 的0x02验证者资本效率大致相当 | | 强选项(红色虚线) |100| 1% | 只要质押者运行超过一个0x01验证者,整合到0x02至少是中性选择 | | 温和选项(红色点线) |400| 0.25% | 力度介于主提案与 0.5% 之间 |
表 2:主备选方案(0.5%,WITHDRAWAL_FEE_FRACTION = 200)下的质押者成本
| 验证者数量(质押占比) | 成本(ETH/年) | 成本(USD/年) | | - | -: | -: | | 1(~0.0001%) | 0.0048 | $20 | | 100(~0.01%) | 0.48 | $2k | | 10k(~1%) | 48 | $200k | | 50k(~5%) | 240 | $1M | | 100k(~10%) | 480 | $2M |
表 2.0.5% 备选费率下质押者的成本。(来源:EIPS/eip-8062.md)
在 0.5% 费率下,每个验证者每年多付约 20 美元,运行全网 5% 质押量的 SSP 每年将损失约一百万美元,构成远强于主提案的整合激励。
文档同时指出,即使采用更高费率,也无法解决 EIP-8068 所关注的一个独立问题:0x02验证者可以利用滞后机制,在 EB 达到 33 ETH 后通过部分提款将余额压回 32.75 ETH,从而仅持有 32.75 ETH 却保持 33 ETH 的 EB,换取超额收益率。该问题也可以独立、以极小复杂度修复(见 EIP-8068 的备选规范)。
安全考量与兼容性
文档作者声明,据其了解,该提案不存在已知安全风险。从机制上看,费用在共识层直接销毁、不引入新的状态写入路径,process_withdrawals()的改动仅是在既有循环中增加一次整除计算与一次余额扣减,不改变提款对象的格式、不触碰执行层 payload 结构(EIP-4895 定义的withdrawals字段保持原样),因此对 EL 客户端与 CL 客户端的接口均向后兼容。需要读者自行跟踪的最新状态以仓库中的 EIPS/eip-8062.md 为准(当前状态为 Draft,创建于 2025-10-28)。
延伸阅读
- EIPS/eip-8062.md —— 本文主体规范(含费用定价、备选方案与完整表格)
- EIPS/eip-4895.md —— Beacon chain push withdrawals,定义 sweep 提款在 EL 侧的表示与处理
- EIPS/eip-7251.md —— Increase the MAX_EFFECTIVE_BALANCE,引入
0x02复合凭证与 2048 ETH 上限 - EIPS/eip-7002.md —— Execution layer triggerable withdrawals,
0x02验证者 EL 触发的部分提款机制 - EIPS/eip-8068.md —— Neutral effective balance design,配套的资本效率修复提案
- EIPS/eip-2780.md —— Resource-based intrinsic transaction gas,费用定价所引用的 EL 资源计价框架
版权说明:EIP-8062 正文按 CC0 协议放弃版权及相关权利,本文仅作技术解读,不构成投资或质押操作建议。
【免费下载链接】EIPsThe Ethereum Improvement Proposal repository项目地址: https://gitcode.com/GitHub_Trending/ei/EIPs
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考