Bitcoin Core 源码树把功能拆进 libbitcoin_node、libbitcoin_kernel、libbitcoin_wallet 等一组库,依赖关系画在 doc/design/libraries.md。本文按这张图讲清共识内核、节点外壳、钱包与工具库各管什么,以及为什么多数库的接口不承诺稳定。
Bitcoin Core 源码树把功能拆进 libbitcoin_node、libbitcoin_kernel、libbitcoin_wallet 等一组库,依赖关系画在 doc/design/libraries.md。本文按这张图讲清共识内核、节点外壳、钱包与工具库各管什么,以及为什么多数库的接口不承诺稳定。
Bitcoin Core 在 doc/bips.md 里逐条记录每个 BIP 从哪个版本生效、对应哪个合并请求。本文说明这本账簿的结构与读法:版本号、生效日期、PR 链接分别能回答什么问题,以及它与其他 BIP 列表的差异。
比特币核心自带 bench_bitcoin 基准程序,对哈希、签名验证、交易整体验证等热点路径做微基准,用法写在 doc/benchmarking.md。本文按该文档说明它测什么、怎么控制时长与线程,以及它与跑真实节点的同步速度之间没有换算关系。
`submitblock` 把一份十六进制区块直接交给本节点验证并转发,实现留在 v31.0 源码 src/rpc/mining.cpp:第二个参数只是 BIP22 兼容占位,返回值有成功空、duplicate、inconclusive 与 BIP22 错误串几档。本文逐档拆语义。
v31.0 的簇内存池用 `-limitclustercount` 与 `-limitclustersize` 两个新限额取代了祖先后代限制,旧参数 `-limitancestorcount` 等只剩钱包选币一个用途。本文按 v31.0 源码逐项拆这四个参数的现状、默认值与误配后果。
比特币核心钱包的 `sendtoaddress` 等命令接受 `estimate_mode` 参数,取值 economical 或 conservative,决定给定确认目标时取哪一档费率估计。本文按 v31.0 源码拆解两档模式在帮助文本与估算器里的真实分工、与 fee_rate 直给的优先级关系。
支持布隆过滤器的轻客户端请求过滤版区块时,节点回的是 merkleblock 消息——一棵只保留命中交易与必要分支的部分默克尔树。本文按 v31.0 源码 src/merkleblock.h 拆解它的字段构成、尺寸界与 coinbase 断言细节。
BOLT 1 的 ping/pong 用回包长度做关联:num_pong_bytes 小于 65532 必须回 pong,不小于则静默忽略;收不到 pong 可以断连接但不得作废通道。本文按规范拆解字段、保活用法与比特币层 ping 的分界。
比特币核心的 -prune 取值 0、1 和不小于 550 的整数分别对应不修剪、仅允许 RPC 手动修剪、自动维持容量目标。本文按 v31 源码讲清三档语义、十万块高度门槛、与 txindex 互斥和不可回退的容量纪律。
比特币核心用 txrequest 为每个交易与对端的组合记 reqtime 与 expiry 两本账,配合 preferred 优先与候选随机抽签决定向谁发 getdata。本文按源码注释拆解五态状态机与反封锁概率。