EIP-2315 只加两个操作码,就给 EVM 配上一条不参与共识的返回栈,让合约内函数调用告别手工压栈跳转。它最终随 EOF 提案整体 withdrawn。本文拆解 RJUMPSUB 与 RETURNSUB 的机制、返回栈不进共识的设计取舍,以及它与 EOF、CALL 帧栈的关系。
EIP-2315 只加两个操作码,就给 EVM 配上一条不参与共识的返回栈,让合约内函数调用告别手工压栈跳转。它最终随 EOF 提案整体 withdrawn。本文拆解 RJUMPSUB 与 RETURNSUB 的机制、返回栈不进共识的设计取舍,以及它与 EOF、CALL 帧栈的关系。
EIP-1052 引入的 EXTCODEHASH 用一个哈希值把账户状态切成三类:完全不存在、有记录无代码、有合约。它的定价史更像一部状态访问 DoS 防御史:400 gas 起步,事故后升到 700,柏林升级再改成冷热分层。本文拆解三种返回值含义,并解释 EIP-3607 与 EIP-7702 如何依赖同一个哈希值。
EIP-1474 曾在 2018 年尝试给以太坊节点的 RPC 方法立法,统一 Quantity 与 Data 的编码规则,最终以 Stagnant 收场。真正接管这件事的是 execution-apis 仓库的活文档与跨客户端一致性测试。本文讲清立法失败的细节、eth_call 等方法为何跨客户端一致,以及 WebSocket 订阅与 trace 家族这些法外之地。
EIP-1459 定义了以太坊的 DNS 节点发现方案:把签名的节点记录名单装进域名 TXT 记录,客户端拿内嵌公钥验证整棵默克尔树。本文拆解 enrtree URL、记录结构与签名链,对照 geth 源码里的 ethdisco.net 用法,并说明它与比特币 DNS 种子、ENR 主动发现的分工差异。
以太坊 P2P 同步里,区块头、区块体这类请求响应消息在 eth/66 之前不携带任何编号,全靠响应按请求原序返回来对号入座。EIP-2481 给每对消息加了 request id 字段,让响应端可以并行处理、乱序完成。本文讲清这套编号机制解决的具体故障、它与 eth/65 公告机制的分工,以及它在协议版本谱系里的位置。
以太坊虚拟机给执行栈设了 1024 项上限,每项 32 字节;调用不是复用同一张栈而是新开栈帧,配合 EIP-150 留下的每层最多带走 63/64 剩余 Gas 的规则,共同约束递归与嵌套深度。本文讲这张栈的结构、越界会发生什么,以及它和比特币脚本一千项栈上限的设计对照。
Bitcoin Core 的 rpcauth 工具用随机盐加 HMAC-SHA256 生成可写进配置的凭据行:配置文件里只有盐与校验摘要,明文密码不落盘。本文拆解这条 user:salt:hmac 的生成逻辑、HTTP Basic 认证的匹配流程,以及它相对 rpcuser 与 rpcpassword 的差别,和 cookie 文件、绑定地址一起构成的访问控制分层。
EIP-2464 给 eth 协议加了三个消息:NewPooledTransactionHashes 只公告交易哈希,GetPooledTransactions 按哈希批量索取,PooledTransactions 应答。交易传播的带宽从随对等方数量线性增长降到平方根量级,冷启动交换从几十到上百 MB 缩到约内存池大小乘 32 字节。本文拆解这套公告-拉取机制与前代全量广播的差别。
Yul 是 Solidity 家族的低级中间语言:功能式语法贴近栈机,既是内联汇编的书写格式,也是基于 IR 的新代码生成路径的落地目标。本文讲它和 Solidity、十六进制字节码的三层关系,为什么中间表示让优化与跨方言复用成为可能,以及内联汇编块里哪些护栏依然存在。
Cashu 是建立在比特币闪电生态上的 Chaumian ecash 协议:代币是存在用户设备上的 bearer 凭证,工厂用盲签技术签发,取款时无从知道它曾发给谁。本文拆解 mint 与钱包的分工、Chaumian 盲化的防关联原理,以及这个模型和链上转账、普通托管余额的本质差异。