新开一个存储槽该收多少钱:EIP-5022 想把入场费直接翻倍 图 1
新开一个存储槽该收多少钱:EIP-5022 想把入场费直接翻倍 · 图 1

每开一个新格子,全网都要多背一行数据

以太坊合约的每一次状态写入,最终都变成每个全节点数据库里的一行新记录。给现有格子改个值,节点改的就是那行;而把一个从零变为非零的存储槽写进状态,等于凭空新增一行——20000 Gas 是这动作在现行规则下的入场费(其中还包含冷热访问定价的叠加项,本文只谈主项)。2022 年 4 月 20 日提交的 EIP-5022 对这笔价格打抱不平:状态年年膨胀,新增记录的实物成本早就涨了,入场费却十年没动,结果是用其他操作的人间接补贴了制造新状态的人。提案的处方也只有一刀:SSTORE 从零到非零这一档,从 20000 涨到 40000。按仓库当前标注,该提案处于 Stagnant 停摆状态,从未进入任何升级。

新开一个存储槽该收多少钱:EIP-5022 想把入场费直接翻倍 图 2
新开一个存储槽该收多少钱:EIP-5022 想把入场费直接翻倍 · 图 2

为什么只抬这一档

原文的 Rationale 部分把这盘账拆成了几个为什么。为什么不顺手抬非零到非零的价格?因为反复改写同一个格子不制造新状态,本提案针对的靶心是状态增长本身,而且提高创建价至少能激励开发者复用已有存储而不是无止境地开新格子。为什么不连清存储的退款一起改?作者认为还需要更多讨论,宁可少动一项。为什么不等状态租金或状态过期这类终局方案?因为那些方案”短期到中期都好不了”,而状态问题每天都在恶化,先给价格打个补丁是务实选择——改 Gas 定价在以太坊历史上是低门槛操作,客户端实现成本低,随时可以校准。这份自我定位很清醒:5022 不解决状态问题,只是给状态增长重新贴上价签。状态租金这条更长的思路可以看 以太坊给节点存储算过一笔租金账:状态租金提案的来龙去脉 的梳理。

停摆原因不在文本里

提案文本没有预测自己的命运。它停摆的原因可以从后续路线读到:社区把治理状态增长的主要筹码押在了别处——以太坊在坎昆升级后把大量交易数据搬到 blob 空间、用不同计价消化数据压力,状态层面的大手术则留给无状态与状态过期这类结构性方案。单纯涨价属于见效快但误伤面大的工具:所有依赖”首次写入”的业务要承担双倍入场费,而状态增长曲线是否真被压低很难归因。话虽如此,停摆不代表论点作废——提案对”其他用户补贴状态制造者”的批评至今仍是各场 Gas 讨论的常用背景句。

哪些操作会因此变贵

把 5022 放到今天的链上业务里推演,能变贵的操作都有共同特征:在合约里凭空创造第一条属于你的记录。典型如首次领取空投时在合约里写下”已领取”标记、铸造新 NFT 时新增持仓与元数据槽、给去中心化身份或注册表添加新条目、以及任何合约第一次为某个地址初始化余额或映射项。反过来,对已有记录的操作几乎不受影响:普通代币转账若双方余额槽早已存在,触发的主要是改写档计价;重复调用只读函数更是一分钱不多花。这种结构对一个老话题是利好:合并 UTXO 或批量清理这类”制造与清理新状态”的操作,账会直接变贵,批量业务的设计会进一步偏向复用与聚合。给读者一个自查方法:在区块浏览器查任意交易的回执,若 Gas 用量远大于同类操作的常见值,很可能这笔交易就付了新状态入场费——多出的部分往往就是这类整格计价的贡献。

状态膨胀的另一面镜子

同一个问题在协议历史里还有别的入口。EIP-161 早在拜占庭时期就开始删长期只有余额没有代码与 nonce 意义的空账户,是状态清理的第一课;EIP-3529 则把清存储的退款大幅削减,削弱了”平时塞满、清仓时领补贴”的套利动机。三者站在一起正好是同一枚硬币的三张脸:删除旧状态难,少制造新状态相对可行,制造后又清理的补偿则被有意压低。普通用户最直接能感知的是账单结构:给一个从未存在过的新地址转第一次代币(映射槽从零转非零),Gas 会明显高于给已有余额的地址再转一次——这个差别无需 5022 也早已存在,翻倍提案只是想把这种差异再拉大一倍。

读 Gas 提案的正确姿势

Gas 提案是全库最容易被断章取义的一类:一句话提案,一个数字改动,读起来人人都会。实操上按三步核查。第一步,找到原文的状态字段——Draft、Review、Stagnant、Final,决定这段内容是新闻还是历史。第二步,确认它改的是计价表哪一格——同是 SSTORE,从零转非零、非零转非零、清零退款是完全不同的三档,改错一档对业务的含义天差地别。第三步,核对落地版本——就算某次升级改了价格表,具体常数也可能在实装时和提案稿不同。任何一步缺失,就把它当观点文章而不是参数依据。

风险提示

本文涉及的提案状态与 Gas 常数按 EIPs 官方仓库原文核验,可能随社区推进变化,请以仓库当前内容为准。Gas 结构分析有助于理解账单构成,但不构成投资建议或交易时机判断。