2020 年 3 月提出的 EIP-3322 想给合约账户加一个可以存取Gas 的退款计数器,用 SELFGAS、STOREGAS、USEGAS 三条指令管理,让合约在便宜时预付、昂贵时支取,把 Gas 账单从即时消费变成可平滑的库存。提案停留在 Stagnant。更大的背景是 2021 年 8 月随伦敦升级生效的 EIP-3529 反其道而行,把退款上限砍到五分之一。本文用原文规格拆解这场「Gas 期货」的设想与现实之墙。
2020 年 3 月提出的 EIP-3322 想给合约账户加一个可以存取Gas 的退款计数器,用 SELFGAS、STOREGAS、USEGAS 三条指令管理,让合约在便宜时预付、昂贵时支取,把 Gas 账单从即时消费变成可平滑的库存。提案停留在 Stagnant。更大的背景是 2021 年 8 月随伦敦升级生效的 EIP-3529 反其道而行,把退款上限砍到五分之一。本文用原文规格拆解这场「Gas 期货」的设想与现实之墙。
2542 想加两枚 Gas 上限操作码,2020 年提出、2026 年才正式标注撤回,撤回理由写着被 EIP-8141 取代;2330 与 2936 则在 0x5c 槽位上擦肩而过;最终 0x5c 随 2023 年坎昆升级给了 TLOAD。本文以 2026 年 1 月的帧交易提案为终点,串起 2019 到 2026 年间操作码编号的易主史,教你核查任何编号的当前真实语义。
验证者节点每轮都要用 BLS 私钥签名,可机器一旦联网就多一分风险。EIP-3030 给出的答案是把签名挪进独立服务:整套接口只有三个端点——查活、列钥匙、要签名,认证、密钥管理和传输加密全部交给实现者。提案停在 Stagnant,但它划出的边界至今仍是托管签名服务的通用形状。本文逐端点拆解这份 API,并说清它故意没规定什么。
布隆过滤器本是让轻客户端快速定位日志的捷径,可十年后的现实是:几乎所有查历史的 dapps 都绕开节点去用中心化索引服务。EIP-7668 干脆提议把区块与收据里的 logsBloom 全部置空,从协议里请这套机制离场。提案停在 Stagnant。本文解释日志过滤器当年解决什么问题、为什么慢、置空之后谁来接班,以及你手里的 RPC 返回什么时候会先变。
以太坊的地址空间有 2 的 160 次方格,EIP-1352 想把最开头的 65536 格——从 0x0000…0000 到 0x0000…ffff——整片划给预编译和系统合约,普通合约不许落在这里。提案 2018 年提出,停在 Stagnant,理由栏写着 N/A,兼容性一节只有一句当时这些地址上没有合约。本文讲这条设想的动机、它刻意不做的强制检查,以及今天这些低地址上实际住着什么。
账户只有一个 nonce,是所有并发场景的老账:同一地址同时发两笔就得排队。2026 年 4 月的 EIP-8250 想把帧交易里的单一序号换成一组 nonce key——0 号沿用老账户 nonce,非零 key 各自领一条独立序列,互不重叠就互不重放。提案仍是 Draft,挂在帧交易 EIP-8141 之下。本文拆解键控 nonce 的结构、与共享发件地址的隐私场景,以及它和排成一列的老队列的差别。
以太坊交易默认用 secp256k1 签名,验证一笔验一笔。EIP-7591 提议新增一种用 BLS 签名封装的交易类型:签名可以几十笔合并验证,代价是公钥更长、验证要走新的预编译路线。提案 2024 年初提出,停在 Stagnant。本文讲这笔签名换型的账:BLS 换来什么聚合收益、发送方要多背什么,以及它和 2537 那批预编译的依赖关系。
部署合约时如果目标地址上已经住了账户,该怎么办?黄皮书早年的读法是从空代码空 nonce 重新开始,各家客户端因此在测试里跑出不同结果。2017 年的 EIP-689 给出干脆答案:撞了就失败,等同部署代码自己跑崩。提案停在 Stagnant,但它的精神早已渗进共识测试的判定里。本文讲地址碰撞怎么发生、两种语义的分歧、以及为什么协议最终选择了宁可回滚也不覆盖。