换钱包时地址对不上,多数是派生路径不一致。BIP-88 给路径写法定了一套模板记法,用花括号和区间描述一组合法路径,让设备与软件能机械判断某条路径是否被允许。本文讲这套 2020 年完成的表示法怎么读、解决钱包互操作里的什么裂缝,以及它与受限路径安全考虑的关系。
换钱包时地址对不上,多数是派生路径不一致。BIP-88 给路径写法定了一套模板记法,用花括号和区间描述一组合法路径,让设备与软件能机械判断某条路径是否被允许。本文讲这套 2020 年完成的表示法怎么读、解决钱包互操作里的什么裂缝,以及它与受限路径安全考虑的关系。
治理项目里各家投票合约接口不同,第三方工具难以通用。ERC-1417 在 2018 年 9 月提出一套 Poll 标准:vote、revokeVote、canVote、getVoteTally、winningProposal 等函数加 CastVote、RevokedVote、TriedToVote 三个事件,用 ERC-165 声明身份。该标准现处 Stagnant 状态。本文讲这套接口想统一什么、为什么没能统一。
比特币网络默认谁都能连,白名单靠 IP 段。BIP-150 曾提出用身份公钥做双向挑战应答认证,让节点只给熟客更高服务,同时保证没 keys 的一方无法试探对面名单。该提案 2016 年提出、现已 Closed,评论摘要标注不鼓励实现。本文讲它的认证流程、防指纹设计,以及为什么今天的节点用更简单的办法。
轻客户端不下载全链,怎么快速确认某个输出是否仍未被花掉?2014 年提出的 BIP-64 给比特币设计了一条 getutxos 查询消息:按输出点批量提问,节点回一张命中位图和未花费用明细。提案最终关闭从未部署,但它的思路活在比特币核心的 REST 接口里。本文讲清这条消息的结构、能查什么、为什么不可全信。
BIP-34、65、66 当年靠区块版本号投票激活,验证每个块都要回看前一千块的版本分布。2016 年的 BIP-90 把这套历史包袱简化成三个区块高度常数:主网上 BIP-34 是二十二万七千九百三十一块,BIP-66 与 BIP-65 各在其后。本文讲清埋入式部署的动机、规则替换方式与那个理论上的兼容性边角。
分叉后同一笔交易可能在两条链上都有效,账户余额被两边同时花掉。卢克·多什 2016 年提出 BIP-115,设计 OP_CHECKBLOCKATHEIGHT 操作码,把交易绑定到特定链上某个高度的区块哈希末段。提案最终关闭从未部署。本文拆解这条锁的机制、五万块回看窗口的取舍与它想解决的双击找回难题。
布隆过滤收款让轻钱包少下载数据,但也给节点带来拒绝服务风险与隐私争议。BIP-111 定义 NODE_BLOOM 服务位,让节点公开声明是否支持过滤,不支持的节点收到过滤请求直接断开对端。本文讲这个 2015 年提案的来龙去脉、协议版本号的配合方式与今天的残局。
交易被打包不等于执行成功,revert 之后世界状态一点没变。2017 年的 EIP-658 把收据里已经作废的中间状态根字段改造成成功或失败状态码,让任何客户端不用重放交易就能判定结果。本文讲这次字段再生的动机、Byzantium 激活块与今天读收据的注意事项。
以太坊状态越长越大,SLOAD 这类依赖状态体积的操作码越来越便宜得不对劲。2019 年的 EIP-1884 把 SLOAD 从二百提到八百 Gas,BALANCE 与 EXTCODEHASH 上调到七百,同时引入五日价的 SELFBALANCE。本文用提案里的同步测速图讲清状态读操作为什么要按账本大小重新定价。
ERC-165 让合约自报支持哪些接口,但普通钱包地址不是合约,没法应答。ERC-1820 用无人持钥的账户部署一张全局注册表,任何地址可为自己登记接口实现者合约。本文讲这张地址全链一致的注册表如何运作、无人持有的部署账户与 ERC777 回调依赖,以及它踩过的坑。