Bitcoin Core v31.0 移除了 tor 网络名称(v0.17.0 起由 onion 取代),onlynet=tor 会直接报错;同时 torcontrol 的 ADD_ONION 自动隐藏服务链路完整保留,v31 还新增依赖 Tor 与 I2P 的 -privatebroadcast。本文拆开网络名与 Tor 功能两层。
比特币专题汇总减半、ETF、挖矿、钱包、转账与风险等主题,构成围绕比特币的完整内容集群,帮助你由浅入深地理解比特币的运作与生态。
共 838 篇 · 第 15 / 84 页
Bitcoin Core v31.0 移除了 tor 网络名称(v0.17.0 起由 onion 取代),onlynet=tor 会直接报错;同时 torcontrol 的 ADD_ONION 自动隐藏服务链路完整保留,v31 还新增依赖 Tor 与 I2P 的 -privatebroadcast。本文拆开网络名与 Tor 功能两层。
闪电节点重连后双方互发 channel_reestablish,用承诺序号、撤销序号与撤销密钥对账。本文按 BOLT #2 的重传规则拆解一致、重传、断链三种分支与撤销序号超前证明的机制,并说明为什么机关回滚通道数据库等于批量触雷。
打开 -logthreadnames 后日志行出现方括号线程名。本文按 Bitcoin Core v31.0 源码列出显式命名线程(net、msghand、addcon、opencon、scheduler、http、torcontrol、mapport、privbcast、initload、shutoff、scriptch 系列与各索引线程)的职责,并给出日志在动但功能失联类故障的排法。
闪电 init 消息交换功能位图:奇数位 optional、偶数位 compulsory,未知奇数位必须忽略、未知偶数位必须断连。本文按 BOLT #9 与 BOLT #1 拆解编号规则、高频位清单与依赖声明,以及 open_channel 里显式 channel_type 的收敛作用。
Bitcoin Core v31.0 的 generatetodescriptor 把输出描述符直接编译成 coinbase 脚本再产块,省去先备好地址的中间步骤。本文按 v31.0 源码核对它的三个参数、报错路径与 generatetoaddress 的同源关系,并说明为什么它只在 regtest 这类环境有实际用途。
Bitcoin Core v31.0 的 -printpriority 默认关闭,打开后节点在把交易选进候选块的瞬间记录该笔交易调整后的费率与哈希。本文按 v31.0 源码核对该参数定义、modified fee 的含义、与 prioritisetransaction 和 getblocktemplate 的关系,以及长期开启的日志代价。
比特币 P2P 实现给单条 getdata 消息的条目数卡了硬上限,Bitcoin Core v31.0 里这个编译常量是 1000。本文按 v31.0 源码核对该上限在区块下载与交易下载两条路径上的生效方式、它防的是什么,以及为什么日志里会看到多条较短的 getdata。
bitcoin-cli -addrinfo 不是服务端原子 RPC,而是命令行工具向 getnodeaddresses 发一次全量查询后在本地按网络分桶计数。本文按 v31.0 源码核对该开关的底层调用、质量与新鲜度过滤的含义,以及新节点首连排障时每个网络计数怎么读。
signmessagewithprivkey 把私钥作为参数直接签名一段任意消息,不需要钱包参与,注册在 util 类目。本文按 v31.0 源码核对它与 verifymessage 的配对实现、消息前缀防的是什么,以及它在 Taproot 地址与 BIP-322 面前的格式边界和密钥暴露风险。
Bitcoin Core v31.0 的 -logratelimit 默认开启,把同一代码位置一小时写入的日志限在一兆字节内,防止用日志刷满磁盘;-loglevelalways 则决定每行是否强制带分类与级别前缀。本文按 v31.0 源码核对两个常量的默认值、限速窗口与组合用法。