猎杀之旅:追踪以太坊中的“自然杀手块”
以太坊正快速转向通过 zkVM 扩展其第一层网络,使验证者能够验证每个区块的 SNARK 证明,而无需重新执行区块。随着证明成本持续下降,实时区块证明(即在 12 秒内完成证明)可能在 2025 年底成为现实,这要求协议必须主动为这一转变做好准备。
感谢 Maria Silva 通过她在 evm-meter-analysis 项目中的工作,帮助我们准确提取 EVM 操作的 Gas 消耗成本。同时感谢 Ignacio Hagopian、Anders Elowsson、Caspar Schwarz-Schilling 和 Joshua 对本文提出的宝贵意见与反馈。
🔗 原文链接:https://ethresear.ch/t/the-hunt-tracking-organic-prover-killer-blocks-on-ethereum/22332
以太坊正快速转向通过 zkVM 扩展其第一层网络,使验证者能够验证每个区块的 SNARK 证明,而无需重新执行区块。随着证明成本持续下降,实时区块证明(即在 12 秒内完成证明)可能在 2025 年底成为现实,这要求协议必须主动为这一转变做好准备。关键问题在于如何在 zkVM 世界中为 EVM 操作(即操作码和预编译合约)定价。某些在 CPU 上本地执行成本低廉的 EVM 操作,在生成密码学证明时可能变得计算密集。
这种差异引发了重要问题:协议应如何调整操作码和预编译合约的定价,以准确反映密码学证明的真实成本?重新定价至关重要,可防止验证者杀手攻击——即交易和区块中填充了证明成本异常高的操作,若验证者未能按时生成证明,可能导致网络活性故障。由于多个 zkVM 并行运行,另一个问题随之而来:重新定价应基于最快的 zkVM、最慢的 zkVM,还是表现优异者的保守平均值?解决这一问题对维持网络稳定性至关重要,同时避免对特定 zkVM 造成不均衡影响。
目前,识别最坏情况主要依赖直觉和先验知识,通过构造特制的“验证者杀手”区块来最大化密码学证明的计算复杂度。这些区块经过实证测试,以测量极端条件下的证明开销。近期,标准化 zkVM 基准测试套件的开发引入了一种更结构化的方法,通过针对性测试用例模拟计算密集型操作,更准确地评估最坏情况下的验证者开销。
本文提出一种互补的数据驱动方法,旨在检测有机验证者杀手(OPK)区块——这些是真实主网区块,虽非人为构造,但其证明时间相对于 Gas 消耗仍异常高。利用多个 zkVM 团队提交的真实证明数据,我们系统性地识别这些 OPK 区块,并与 Gas 消耗相近的匹配控制区块(详见“OPK 区块检测”部分)进行对比分析。
我们的目标是揭示与证明复杂度增加相关的特定操作码和预编译合约使用模式。我们将概述方法学,通过统计分析识别区分性特征,并为未来 EVM 定价策略和验证者优化提供见解。
01 | 方法
本节简要介绍用于检测主网上 OPK 区块的数据和方法学。
数据与预处理
使用来自 ethproofs.org 的真实证明数据,该社区资源汇总了以太坊 zkVM 生态(如 Succint、Snarkify、ZKM)的关键指标,包括证明时间、每区块 Gas 消耗、区块编号和验证团队。
为识别与证明时间增加(即证明生成过程中自报告的计算时间)相关的特定操作码和预编译合约使用模式,我们复刻了 evm-meter-analysis 仓库,提取每个区块的原始执行轨迹,从而汇总每个分析区块的操作码和预编译 Gas 成本。
OPK 区块检测
为识别 OPK 区块,我们首先使用 Huber 回归(对异常值比标准线性回归更稳健)为每个验证团队和每一天建模区块总 Gas 消耗与证明时间的关系。
每天为每个验证团队单独拟合 Huber 回归(而非使用更长窗口),使得验证者性能的突变(例如加速证明的升级)成为当日基线的一部分。随后计算残差(实际证明时间减去预测值),并将残差超过当日中位数绝对偏差(MAD)选定倍数的区块标记为 OPK 候选。该方法确保仅捕获真正的“验证者杀手”区块(即 Gas 消耗与证明时间严重不匹配的区块),而不会将正常改进误判为异常。

每个识别的 OPK 区块(共 228个)与同验证团队的匹配控制区块配对,后者需满足总 Gas 消耗相近(±10% 容差)且时间邻近(即证明创建时间戳最近)。如图 2 所示,OPK 与匹配控制区块的 Gas 消耗分布无显著差异(左图,p 值=0.2),但证明时间分布存在统计学显著差异(右图,p 值<1.6e-20)。

02 | 结果
将每个 OPK 区块与 Gas 匹配的控制区块配对后,我们汇总了每个区块中 EVM 操作(操作码和预编译)的 Gas 消耗。由于每对区块的总 Gas 消耗相同,证明时间的超额必然由 Gas 消耗的分布解释。
Gas 成本分析
按 OPK 区块与匹配控制区块的平均 Gas 成本比(OPK ÷ 控制)对所有操作排序。图 3 显示前 15 个特征,其中统计显著差异(p<0.0005)的操作码(橙色)和预编译(蓝色)被高亮。
分析表明,预编译合约 point_evaluation、ecPairing、ecAdd、ecMul 和modexp,以及操作码 MULMOD、ADDMOD 和 BLOBHASH 在 OPK 区块中 consistently 呈现高 Gas 成本比和低 p 值。这些操作主导了 OPK 区块的 Gas 消耗,并与最高证明时间比相关,表明 Gas 消耗的分布(而非总量)驱动了额外证明工作。需注意,此结论基于真实使用模式,且排名靠前并不意味这些操作是绝对最坏攻击向量,而是实际区块中最常出现且系统性地定价不足的操作。

证明开销的时间动态
图 4 显示各验证团队的 OPK/控制证明时间比始终高于持平线(比值=1),通常在 2-4 倍之间,表明 OPK 区块带来持续开销而非偶然异常。有趣的是,过去一个月各团队的曲线呈下降趋势,暗示验证者端优化可能正在生效,但需更多数据确认趋势是否持续。
潜在重新定价因素
分析表明 OPK 区块将更大比例 Gas 分配给少量 EVM 操作(图 3),导致更高证明时间(图 4),反映定价不足。
Gas 成本比可作为重新定价的初步信号。例如 point_evaluation 的 Gas 成本比约 5.6 倍,表明其费用低估了真实证明负担。MULMOD、ADDMOD、ecAdd、ecMul 和 ecPairing 同样呈现高比值,是重新定价的主要候选。但这些结果为初步结论,需通过全面基准测试进一步验证,以避免过度惩罚普通区块,同时有效应对最坏情况。
03 | 讨论
本文分析了主网真实交易中的有机验证者杀手(OPK)区块,其证明时间显著超出基于 Gas 消耗的预期(图 2)。这证明证明复杂度不仅由 Gas 消耗量决定,更与消耗 Gas 的具体操作相关。
统计分析(图 3)显示特定 EVM 操作在 OPK 区块的 Gas 消耗中占比过高。复杂算术操作(MULMOD、ADDMOD)和密码学预编译(ecPairing、point_evaluation、modexp)在 OPK 中出现更频繁且消耗 Gas 比例异常。这与预期一致:涉及大域运算和椭圆曲线配对的操作为 ZK 验证者带来显著计算负担,而高 Gas-证明时间比表明当前 Gas 定价可能未充分反映这些操作的真实证明成本。
需考虑的局限性:
数据范围:结论仅针对当前向 ethproofs.org 提交数据的 zkEVM。随着更多 zkEVM 证明数据公开,需进一步分析验证。
因果关系与广泛模式:统计相关性不意味直接因果。操作码在 OPK 中的普遍性可能反映广泛使用模式,而非孤立的验证低效。
重新定价考量:面对多个 zkVM 的性能差异,关键问题在于如何确定 Gas 重新定价——应基于最快、最慢还是前 5 名的中位代表?
解决这些问题对完善 zkEVM 环境下的 Gas 成本至关重要,有助于识别证明负担被低估的操作,并为针对性基准测试设计验证者杀手区块。




