ACDE 232 讨论了三件事:Glamsterdam 测试网进展、EIP-8037 的实现复杂度、Hegota 升级 Headliner 的最终抉择。三个议题各自独立,但放在一起看,以太坊的升级机制正在被自身的复杂度干扰。
以太坊的协议升级,本质上是一个多方博弈下的软件发版流程。五个执行层客户端(Geth、Erigon、Reth、Besu、Nethermind)需要对同一套规则变更达成完全一致。任何一个客户端实现出错,都可能导致升级的延迟或者主网处问题。
BAL DevNet 2:预取快还是不预取快
BAL(Block Access List,区块访问列表)是 Glamsterdam 升级的核心机制之一。它通过提前声明一笔交易会访问哪些状态,来实现并行执行优化。
DevNet 2 目前运行良好。除了 Erigon 还在修复同步问题,各客户端基本到齐,正常出块。基准测试则给出了一个值得注意的结果。
初步数据显示,不预取在平均情况下反而更快。这并不意味着预取没用——当前测试网的状态规模远小于主网。在主网 TB 级的状态树中,随机读取的延迟分布可能完全不同。开发者明确提到,还需要针对最坏情况做压力测试。
EIP-8037:四代 Gas 逻辑的叠加代价
BAL DevNet 3 原本应该已经启动,但被 EIP-8037 拖住了。大部分客户端还未准备好,测试团队的 Spencer 发布了执行规范测试 v5.4.0,各团队需要先通过这些测试。
EIP-8037 的目标是给状态创建单独定价。以太坊的状态膨胀是一个老问题,每创建一个新账户、每写入一个新存储槽,全网所有节点都要永久存储这笔数据。这个成本混在通用 Gas 里,定价偏低。8037 想修正这个失衡。但当前的核心问题是以太坊的 Gas 机制已经不是一套逻辑,而是四套逻辑的叠加。
Andrew(Erigon)指出,目前以太坊有四种不同的 Gas 计量变体:Blob Gas、状态/非状态 Gas、区块/用户退款(Refund)、常规 Gas。每种都有自己的退款规则和回滚(Revert)语义。如果继续在这个基础上堆砌孤立的 EIP(如 7928、8037、7778),代码逻辑会越来越难以维护。他呼吁建立统一的三维 Gas 模型(计算、状态、Blob)。
Geth 团队的 Felix 也认为处理状态 Gas 的退款和回滚极易产生 Bug。
务实派也有充分的理由。以太坊基金会的 Maria Silva 认为 Gas 机制长期确实需要像 EIP-7999 那样将资源彻底分离,但 EIP-8037 是控制状态膨胀的当务之急。Marius (Geth)和 Dragan(Reth)提出,如果将状态 Gas 逻辑与旧的退款机制解绑,实现复杂度会大幅降低。
测试层面还有一个额外的挑战。Mario 和 Spencer 指出,EIP-8037 打破了以太坊过去 10 年积累的静态测试。现有的 YAML 测试架构无法表达新的 Gas 逻辑,团队正被迫将所有测试迁移到 Python。
最终的处理方式:DevNet 3 将采用硬编码的状态字节成本来推进初步测试,先不触碰退款逻辑的复杂性。下周三单独召开 Repricing Breakout Call 来集中处理这些问题。
ePBS DevNet 0
ePBS(Enshrined Proposer-Builder Separation)DevNet 0 上周三已启动。Lighthouse、Lodestar、Prysm 运行正常,Teku 和 Nimbus 正在同步。存款和取款功能可用,验证者退出(Exits)和构建者(Builder)相关流程暂不可用。目前只有 Geth 一个执行层客户端参与了这个测试网。
Hegota Headliner:Frame Tx 的两周窗口期
Hegota 升级的执行层 Headliner 目前还没有确定。 SSZ 编码(EIP-7807)和 Lucid(加密内存池)被正式排除出 Headliner 候选。它们的价值没有被否认,但共识是目前不够成熟,更适合作为后续分叉(如 I-Star)的提案。
剩下两个选项:Frame Transactions(EIP-8141) 或 不设 Headliner。
Frame Tx 引入一种新的交易格式,允许交易在帧(Frame)中携带任意验证逻辑,不再局限于 ECDSA 签名。这为原生账户抽象(Account Abstraction)、后量子(Post-Quantum)密码学迁移、以及交易断言(Transaction Assertions)提供了基础。
Dragan(Reth)和 Lukasz(Nethermind)指出两个问题。第一,交易池验证规则不明确,Frame Tx 允许任意验证逻辑,但节点需要在交易进入交易池时就做初步校验。如果验证规则不够严格,攻击者可以构造大量看似合法但实际无效的交易来淹没节点,这是一个 DoS 攻击面。第二,新交易格式会给开发者工具链(如 viem)带来沉重的适配负担。
Matt、Felix 和 Vitalik 从不同角度陈述了 Frame Tx 的价值。Nico 指出 DAO 等链上组织的密码学迁移周期需要数年,后量子基础设施必须尽早开始铺设。Vitalik 强调 Frame Tx 与共识层 FOCIL(Forced Inclusion List)的协同效应,FOCIL 提供交易的强包含保证,Frame Tx 扩展交易类型,两者结合使智能合约钱包和隐私协议可以摆脱对第三方中继(Relayers)的依赖。Fredrik 补充了安全层面的收益:交易断言可以让用户在交易级别声明约束条件,违反则自动失败,能减少钓鱼和授权攻击导致的资产被盗。
会议没有进行表决。Frame Tx 的支持者获得了两周窗口期,他们需要拿出一套清晰、最小化、不会导致 DoS 的交易池验证规则原型,并召开技术研讨会。两周后,如果仍无法说服多数客户端,Hegota 将不设 Headliner。
后续
两周后的 ACDE 会议上。Frame Tx 的支持者如果拿出了可行的交易池方案,Hegota 将拥有 headerline;如果没有,以太坊将完成一次没有 Headliner 的升级。
ACDE 232 讨论了三件事:Glamsterdam 测试网进展、EIP-8037 的实现复杂度、Hegota 升级 Headliner 的最终抉择。三个议题各自独立,但放在一起看,以太坊的升级机制正在被自身的复杂度干扰。
以太坊的协议升级,本质上是一个多方博弈下的软件发版流程。五个执行层客户端(Geth、Erigon、Reth、Besu、Nethermind)需要对同一套规则变更达成完全一致。任何一个客户端实现出错,都可能导致升级的延迟或者主网处问题。
BAL DevNet 2:预取快还是不预取快
BAL(Block Access List,区块访问列表)是 Glamsterdam 升级的核心机制之一。它通过提前声明一笔交易会访问哪些状态,来实现并行执行优化。
DevNet 2 目前运行良好。除了 Erigon 还在修复同步问题,各客户端基本到齐,正常出块。基准测试则给出了一个值得注意的结果。
初步数据显示,不预取在平均情况下反而更快。这并不意味着预取没用——当前测试网的状态规模远小于主网。在主网 TB 级的状态树中,随机读取的延迟分布可能完全不同。开发者明确提到,还需要针对最坏情况做压力测试。
EIP-8037:四代 Gas 逻辑的叠加代价
BAL DevNet 3 原本应该已经启动,但被 EIP-8037 拖住了。大部分客户端还未准备好,测试团队的 Spencer 发布了执行规范测试 v5.4.0,各团队需要先通过这些测试。
EIP-8037 的目标是给状态创建单独定价。以太坊的状态膨胀是一个老问题,每创建一个新账户、每写入一个新存储槽,全网所有节点都要永久存储这笔数据。这个成本混在通用 Gas 里,定价偏低。8037 想修正这个失衡。但当前的核心问题是以太坊的 Gas 机制已经不是一套逻辑,而是四套逻辑的叠加。
Andrew(Erigon)指出,目前以太坊有四种不同的 Gas 计量变体:Blob Gas、状态/非状态 Gas、区块/用户退款(Refund)、常规 Gas。每种都有自己的退款规则和回滚(Revert)语义。如果继续在这个基础上堆砌孤立的 EIP(如 7928、8037、7778),代码逻辑会越来越难以维护。他呼吁建立统一的三维 Gas 模型(计算、状态、Blob)。
Geth 团队的 Felix 也认为处理状态 Gas 的退款和回滚极易产生 Bug。
务实派也有充分的理由。以太坊基金会的 Maria Silva 认为 Gas 机制长期确实需要像 EIP-7999 那样将资源彻底分离,但 EIP-8037 是控制状态膨胀的当务之急。Marius (Geth)和 Dragan(Reth)提出,如果将状态 Gas 逻辑与旧的退款机制解绑,实现复杂度会大幅降低。
测试层面还有一个额外的挑战。Mario 和 Spencer 指出,EIP-8037 打破了以太坊过去 10 年积累的静态测试。现有的 YAML 测试架构无法表达新的 Gas 逻辑,团队正被迫将所有测试迁移到 Python。
最终的处理方式:DevNet 3 将采用硬编码的状态字节成本来推进初步测试,先不触碰退款逻辑的复杂性。下周三单独召开 Repricing Breakout Call 来集中处理这些问题。
ePBS DevNet 0
ePBS(Enshrined Proposer-Builder Separation)DevNet 0 上周三已启动。Lighthouse、Lodestar、Prysm 运行正常,Teku 和 Nimbus 正在同步。存款和取款功能可用,验证者退出(Exits)和构建者(Builder)相关流程暂不可用。目前只有 Geth 一个执行层客户端参与了这个测试网。
Hegota Headliner:Frame Tx 的两周窗口期
Hegota 升级的执行层 Headliner 目前还没有确定。 SSZ 编码(EIP-7807)和 Lucid(加密内存池)被正式排除出 Headliner 候选。它们的价值没有被否认,但共识是目前不够成熟,更适合作为后续分叉(如 I-Star)的提案。
剩下两个选项:Frame Transactions(EIP-8141) 或 不设 Headliner。
Frame Tx 引入一种新的交易格式,允许交易在帧(Frame)中携带任意验证逻辑,不再局限于 ECDSA 签名。这为原生账户抽象(Account Abstraction)、后量子(Post-Quantum)密码学迁移、以及交易断言(Transaction Assertions)提供了基础。
Dragan(Reth)和 Lukasz(Nethermind)指出两个问题。第一,交易池验证规则不明确,Frame Tx 允许任意验证逻辑,但节点需要在交易进入交易池时就做初步校验。如果验证规则不够严格,攻击者可以构造大量看似合法但实际无效的交易来淹没节点,这是一个 DoS 攻击面。第二,新交易格式会给开发者工具链(如 viem)带来沉重的适配负担。
Matt、Felix 和 Vitalik 从不同角度陈述了 Frame Tx 的价值。Nico 指出 DAO 等链上组织的密码学迁移周期需要数年,后量子基础设施必须尽早开始铺设。Vitalik 强调 Frame Tx 与共识层 FOCIL(Forced Inclusion List)的协同效应,FOCIL 提供交易的强包含保证,Frame Tx 扩展交易类型,两者结合使智能合约钱包和隐私协议可以摆脱对第三方中继(Relayers)的依赖。Fredrik 补充了安全层面的收益:交易断言可以让用户在交易级别声明约束条件,违反则自动失败,能减少钓鱼和授权攻击导致的资产被盗。
会议没有进行表决。Frame Tx 的支持者获得了两周窗口期,他们需要拿出一套清晰、最小化、不会导致 DoS 的交易池验证规则原型,并召开技术研讨会。两周后,如果仍无法说服多数客户端,Hegota 将不设 Headliner。
后续
两周后的 ACDE 会议上。Frame Tx 的支持者如果拿出了可行的交易池方案,Hegota 将拥有 headerline;如果没有,以太坊将完成一次没有 Headliner 的升级。