比特币核心用同一套 SetMockTime 支撑 -mocktime 启动参数与 setmocktime 命令,但前者在初始化阶段一次性钉死、后者仅限 regtest 且需要脚本一格一格推进。本文按 v31.0 源码对照两条路径,并列出时间旅行测试与真实网络的落差。
比特币核心用同一套 SetMockTime 支撑 -mocktime 启动参数与 setmocktime 命令,但前者在初始化阶段一次性钉死、后者仅限 regtest 且需要脚本一格一格推进。本文按 v31.0 源码对照两条路径,并列出时间旅行测试与真实网络的落差。
bitcoin-cli -netinfo 在本地拼接 getpeerinfo 与 getnetworkinfo 两次请求渲染对端表,服务器端并不存在这个命令。本文按 v31.0 源码拆解 0 至 4 档的列差异、批量请求的非原子性与三条常见误读。
比特币核心的配置分配置文件、GUI 的 settings.json 与命令行三层,优先级逐层压制;当 -conf 指向别处而数据目录仍有 bitcoin.conf 时,节点默认报错停机,allowignoredconf 才能降级为警告。本文按 v31.0 源码梳理分层、小节与审计清单。
Bitcoin Core v31.0 为 gettxspendingprevout 增加可选的已花费输出索引 -txospenderindex,默认关闭,命中后不再逐块扫描,并带来 mempool_only 与 return_spending_tx 两个新参数。本文按 v31.0 源码拆解机制、缓存预算与适用场景。
Bitcoin Core v31.0 的 GUI 把 createwallet、createwalletdescriptor、migratewallet 三条命令从调试控制台历史中过滤掉,因为它们暴露钱包名与含扩展公钥的描述符。本文分析这条隐私修正覆盖了什么、没覆盖什么。
比特币核心政策把交易费率计算的等效权重取为实际权重与签名成本乘以 bytespersigop 的较大值,v31.0 默认 DEFAULT_BYTES_PER_SIGOP 为 20。本文按 v31.0 源码拆解这本账与单笔签名成本上限的分工,以及为什么普通节点不该动它。
Bitcoin Core v31.0 的 REST 接口新增 /rest/blockpart/ 端点,用 offset 与 size 从指定区块的序列化字节流里切片取数,不支持 JSON 响应。本文讲请求格式、适用场景与 REST 默认关闭的边界。
集群内存池让排序、驱逐与 RBF 替换共用同一把尺子——feerate diagram。v31.0 新增 getmempoolfeeratediagram RPC 输出累计 weight 与累计费用拐点,并把阶梯严格改善写进替换规则第 6 条。本文讲图怎么画、返回值怎么读。
Bitcoin Core v31.0 首次把 asmap 映射嵌入官方二进制(数据创建于 2026-03-05),-asmap=1 即启用内置版,而裸 -asmap 不再去找 ip_asn.map。本文按源码拆两条加载分支、默认值不变的事实与日志辨认法。
Bitcoin Core v31.0 起 getpeerinfo 默认不再返回 startingheight,需 -deprecatedrpc=startingheight 才可见,下一个大版本将彻底删除。本文还原字段原意、误读来源与监控脚本的迁移姿势。