以太坊的难度炸弹因为难以预测害得过频繁地手动推迟,EIP-2515在2020年提出替代方案:到某个预定高度后难度不再响应出块快慢,改为每块缓慢上浮百分之一,像一枚看得见倒计时的温和闹钟。本文讲清难度冻结的算式、它把压力转移给谁的治理逻辑、可选的滚动触发设计,以及这条Stagnant提案和难度炸弹各自的得失。
以太坊的难度炸弹因为难以预测害得过频繁地手动推迟,EIP-2515在2020年提出替代方案:到某个预定高度后难度不再响应出块快慢,改为每块缓慢上浮百分之一,像一枚看得见倒计时的温和闹钟。本文讲清难度冻结的算式、它把压力转移给谁的治理逻辑、可选的滚动触发设计,以及这条Stagnant提案和难度炸弹各自的得失。
EVM的0x40段操作码专门读区块信息:区块哈希、矿工时戳、区块号都有,唯独区块奖励查不到。EIP-698提议加一条BLOCKREWARD指令,返回包含基础奖励、叔块付款和手续费的整块收益,服务链上分账与矿池结算。这条2017年的提案停在Stagnant。本文讲清它想补的读取缺口、动机里的矿池分账算法,以及它最终没被写进虚拟机名单的原因。
EVM的栈单元有256位宽,EIP-616的想法是把这32字节当作一条向量寄存器,切成八格四格这样的车道,一条指令同时算八个数。这条2017年的SIMD提案给哈希和椭圆曲线运算许诺了数倍加速,最终停在Stagnant。本文讲清它的双字节编码方案、提案里引用的加速数字,以及它没被采纳时预编译路线怎样赢下同一场竞赛。
链重组会让刚刚收到的事件日志悄悄消失,断线的客户端往往毫不知情。EIP-234在2017年给JSON-RPC日志过滤器加了一个blockHash选项:按区块哈希精确圈定查询范围,让应用能主动核对某个区块里的日志到底还在不在主链上。本文讲清这条Final提案补的缺口、断线加重组的连环事故怎么发生,以及它和从几号块查到几号块的差别。
以太坊每次协议升级背后都有一份元提案:定代号、列时间表、登记收录哪些EIP、追踪从提案到进主网的每一步。这套写法出自2017年的EIP-233。本文讲清硬分叉元提案的结构、时间线上四个关键节点、EIP在开发者会议里的三种去向,以及为什么后来那些大升级都照这个模板立档。
合约调用另一个合约后,返回数据不必提前猜长度也能完整取回,靠的是EIP-211加的两条指令:RETURNDATASIZE量尺寸、RETURNDATACOPY搬数据,数据存在一块每次调用后自动覆写的虚拟缓冲区里。本文讲清这套机制补上的坑、和calldata相似的记账方式,以及它如何让通用转发合约这类模式成为可能。
EVM操作码空间里,0xfe被正式指定为INVALID无效指令:碰到它执行就立刻中止、Gas全部烧完。EIP-141把这件事写成规范只有几行字,但它给调试、编译器防御和合约保险丝提供了一个统一的中止信号。本文讲清0xfe的来历、它和REVERT的分工,以及为什么一个永远不会被正常执行的操作码值得单独写一条提案。
以太坊工作量证明时代,难度调整只看相邻区块的时间差,故意压着不发块再抢发能抬高叔块率、变相压低难度。EIP-100把含叔块的区块按更高权重计入难度公式,让出块节奏无法被叔块操纵。本文讲清这条2016年提案的算式改动、它堵住的漏洞,以及它在权益证明时代成了历史。