摘要:以太坊即将实施Glamsterdam升级,状态存储写入成本将从2.2万Gas跃升至11万,引发全网审计警报。基金会已公开代码仓库,要求开发者排查八大不变性失效风险,市场反应平静但潜在影响深远。

币圈界报道:
以太坊状态存储重新定价:八项会计与价格不变性面临颠覆
随着Glamsterdam升级计划推进,以太坊对新存储槽的冷写入成本将从22,100 Gas大幅上调至110,020 Gas。这一调整基于可执行规范EELS在阿姆斯特丹基准下的实测数据,涉及状态资源的系统性重估。以太坊基金会已发布代码仓库,邀请审计团队审查客户端合约,重点排查因费用结构剧变引发的潜在漏洞。
核心费率跃升:从字节到账户的全面重构
此次调整并非局部微调。全新存储槽的冷写入中,状态Gas占比高达97,920,叠加访问与写入费用后总开销激增。向空地址转账成本由25,000提升至183,600,代码部署费用从每字节200 Gas增至1,530,增幅超过6倍。这些数值并非估算,而是基于固定规范的精确测量结果,标志着网络对稀缺存储资源进行根本性再定价。
市场波动有限,但结构性影响深远
截至11月7日,以太币价格为2,233.56美元,七日内下跌0.91%。尽管币价下行部分抵消了单位成本的美元压力,但费用倍数关系未变,仍可能触发合约逻辑故障。当前低油价环境掩盖了深层风险,实际影响将在分叉上线后逐步显现。
驱动变革的算力增长悖论
Glamsterdam升级的核心动因是存储膨胀危机。当区块上限从3,000万提升至6,000万时,日均新增状态量从105 MiB跃升至326 MiB,年增量达116 GiB。若按2亿Gas上限推算,年新增量将达387 GiB。从现有390 GiB起步,不到八个月即逼近650 GiB性能临界点,迫使协议必须通过成本机制抑制状态增长。
引入新常量CPSB:以单价控制总量
为应对增长压力,提案提出设定每状态字节成本(CPSB)为1,530 Gas,目标是将年均状态增长控制在120 GiB。该参数决定所有相关操作的计费基数:一个64字节的存储集对应97,920状态Gas,新账户120字节则需183,600 Gas。一旦单位确立,其余费率自动生成,形成统一乘数效应。
升级前后费率对比:数字背后的逻辑
下表基于阿姆斯特丹规范下的实测数据,揭示费率跃迁的全貌。状态Gas独立计量,非简单累加。例如,新账户创建费用从25,000跳至183,600,代码部署成本翻八倍,而热写入也从2,900增至10,100。这些变化构成对合约设计的根本性挑战。
| 操作类型 | 当前 (Osaka) | 升级后 (Glamsterdam) |
| 新存储槽的冷写入 | 22,100 | 110,020 |
| 现有存储槽的热写入 | 2,900 | 10,100 |
| 现有存储槽的冷写入 | 5,000 | 12,100 |
| 新账户:向空地址转账 | 25,000 | 183,600 + 执行费用 |
| 向空地址创建合约 (CREATE/CREATE2) | 32,000 | 195,600 |
| 代码部署 | 每字节 200 | 每字节 1,530 |
| EIP-7702 授权(空权限) | 25,000 | 235,606 |
图表来源:BlockchainReporter,基于EIP-8037和EIP-8038发布的成本表。
EIP-8038:访问侧成本拆解与精细化调整
EIP-8038将原复合成本拆分为独立组件。存储写入费用从2,800升至10,000(+257%),账户写入从6,700增至9,000(+34%),创建访问组件从7,000升至12,000(+71%)。存储清除退款从4,800增至11,616(+142%)。冷账户访问从2,600升至3,000,而冷存储与热访问费用保持不变,表明调整聚焦于高成本路径而非普遍读取。
八大不变性失效:审计人员必须警惕的陷阱
基金会明确指出,两项提案导致八项核心假设失效。其中四条属价格不变性,四条为会计不变性。例如,旧模式中失败调用将终止交易,新机制允许其后代码仍可写入;回滚调用会退还状态Gas,导致调用者拥有的Gas超出预期。这些变化破坏了依赖传统逻辑的合约行为。
INV-1,会计:失败调用后的状态写入
旧规则认为气体耗尽即交易失败。新规下,即使调用失败,后续代码仍可写入状态并完成交易。这导致“完成”标记可能出现在失败之后,修复方案包括支持重试或在收到过多气体时回滚。
INV-2,会计:瞬态清空立即返还
过去清空槽位需等到交易结束才退款。现在,同一事务内设置并清空的槽位将立即返还97,920状态Gas。此变化影响锁、标志等依赖外部调用切换的逻辑,建议使用瞬态存储避免问题。
INV-3,会计:回滚调用的气体返还
回滚调用过去不退气。现在会退还其使用的存储气体,使调用者拥有的气体多于预期。失败的合约创建将返还183,600,依赖空回滚数据判断“气体不足”的代码将出错。应检查CREATE结果而非推测失败原因。
INV-4,价格:硬编码限额不再适用
旧合约中固定的气体数量足够。如今创建存储、账户、合约的成本增加五至八倍,更新写入增加约7,200。硬编码限制存在于代币余额、签名消息、机器人中,首次接收者易出错。气体限额应具备可调性,并在新规下保留余量。
INV-5,会计:gasleft()差值不再可靠
过去剩余气体单调递减,差值即工作量。现在气体可能在调用期间增加,且储备池支付的状态气体不计入gasleft()。两次读数差可能为负,导致回滚或溢出。不应基于差值计费或退款,应收取约定费用或钳制测量值。
INV-6,价格:1/64剩余气体可完成任务
旧规则中,耗尽后保留的1/64不足以执行任何操作。新规下,这部分气体可能足以完成任务并记录失败。无气体检查地调用然后标记已完成不再安全,估算可能落入该范围。
INV-7,价格:补贴无法覆盖新成本
旧有补贴如transfer的2,300无法创建存储槽。通过此类操作接收价值并写入存储的合约将失败。消耗nonce的调用加剧问题。中继器、套利机器人等依赖固定储备的系统将遭遇交易回滚或部分完成。
INV-8,会计:委托可被重复使用
过去minded交易中的7702委托意味着不可重用。新规下,气体耗尽的委托可在交易挖掘时回滚,任何人都可重用签名。暴露的钱包初始化函数需绑定签名并在交易后检查账户代码。
24 KB合约部署成本:从494万到3778万的跃迁
以24 KB合约为例,部署成本从4,947,200 Gas增至37,784,880 Gas,增幅约7.6倍。计算过程为:24,576字节 × 1,530 Gas = 37,601,280状态Gas,加上183,600账户费用,总计37,784,880。在6,000万Gas区块中占比从8.25%升至62.97%。以太币价格2,233.56美元时,美元成本从0.88美元升至6.75美元。
成本承担方与豁免范围:谁在买单?
Layer 2网络不在本次变更范围内。主网及现有L2保留自身Gas计划,仅创世激活EIP的新网络(如开发网、测试网)需重新生成预签名部署交易。受影响实体包括交易所存款地址、批量生成地址的钱包、托管方、支付处理商和空投分发商。新账户创建需支付183,600状态Gas,远高于普通转账的21,000。
运营层受创最深:中继器与机器人面临重构
中继器、套利机器人、清算维护者和元交易服务依赖固定储备与补贴。原设计针对热写入2,900的场景,现需适应10,100的新标准。相同储备无法覆盖工作量,故障表现为交易回滚或部分执行,亟需重新配置。
客户端储备阈值:关键数字2^24的决定作用
交易气体上限高于16,777,216时,状态气体通过独立储备池计量。低于此阈值,则来自gasleft(),行为更接近当前。该单一阈值决定了会计规则适用性,也是为何仓库将各项不变性与“带储备池”配对的原因。此外,单次调用最多16次系统写入,总上限为2^32 - 1,构建者需平衡多维资源。
未来仍存变数:尚未确定的激活时间与反馈机制
仓库结尾强调:“我们试图收集反馈,以便在下一次全核心开发者会议(ACD)上深入讨论改变这些不变性的影响。” 团队表示可能小幅调整或维持现状。两个提案均处于“最后呼吁”状态,审查截止日为2026年11月1日,但未公布主网激活日期。时间线显示提交密集:11月1日初稿,2日添加联系渠道,4日至6日收紧规则,最终合并于6日完成。
历史重演:上限与准备同步推进
此前类似事件中,区块上限与客户端准备挂钩。如Prysm在测试前紧急发布2亿Gas修复程序,早期测试将ePBS与访问列表合并交付。此次状态重定价是提高上限的前提,非独立变更。多数报告关注INV-4与INV-7,即价格与补贴失效,审计集中于此。团队要求通过邮件报告而非公开Issue,且需提供可行利用案例,体现对潜在漏洞的严肃态度。
传导链条缓慢,长期影响待显
对于持有以太币而非审计合约的用户,影响间接且延迟。高昂的账户与存储成本将缩小能为新状态付费的应用范围,重塑主网与Rollup的设计可行性。这不是短期价格波动的信号,而是一场多季度视野的费率市场重构。文件中未将重新定价与近期币价下跌关联。
常见问题解答 (FAQ)
Glamsterdam如何改变Gas机制?
它将状态创建分离为独立的Gas计量器,费率定为每状态字节1,530 Gas。同时对状态访问操作重新定价,新存储槽冷写入从22,100升至110,020,新账户从25,000升至183,600,代码部署从每字节200升至1,530。
合约部署成本增加多少?
24 KB合约部署成本从4,947,200 Gas增至37,784,880 Gas,约增加7.6倍。占6,000万Gas区块比例从8.25%升至62.97%,显著压缩区块空间利用率。
Layer 2是否受影响?
否。现有网络(含主网与L2s)保留自身Gas计划。仅创世激活EIP的新网络(如开发网、测试网)需继承此变更,且须重新签名或预部署确定性工厂合约。
开发者应在激活前做什么?
替换硬编码的气体限额为新规数值,停止基于gasleft()差值进行计费或退款,检查CREATE结果而非推测失败,为10,100热写入调整储备规模。涉及锁切换的合约应使用瞬态存储。
这是最终版本吗?
尚未确定。两提案均处于“最后呼吁”状态,审查期已过,但基金会仍在收集反馈,可能在下一次全核心开发者会议上调整。主网激活日期仍未公布。
披露:本文引用以太坊基金会公共仓库及其引用的EIP-8037、EIP-8038。Gas数值为文件中公布的实测值,在固定阿姆斯特丹规范下使用EELS测量,若规范变动,数值可能调整。
声明:本站所有文章内容,均为采集网络资源,不代表本站观点及立场,不构成任何投资建议!如若内容侵犯了原著者的合法权益,可联系本站删除。
