十分钟不是数学推出来的常数,它是中本聪当年拍下的一个平衡点。本文核对白皮书与官方 FAQ 里能找到的原始说法,对照 v31.0 源码里 nPowTargetSpacing 的取值方式,解释传播延迟与孤块浪费两侧的成本账,以及为什么这个参数多年没人动。
比特币专题汇总减半、ETF、挖矿、钱包、转账与风险等主题,构成围绕比特币的完整内容集群,帮助你由浅入深地理解比特币的运作与生态。
共 838 篇 · 第 21 / 84 页
十分钟不是数学推出来的常数,它是中本聪当年拍下的一个平衡点。本文核对白皮书与官方 FAQ 里能找到的原始说法,对照 v31.0 源码里 nPowTargetSpacing 的取值方式,解释传播延迟与孤块浪费两侧的成本账,以及为什么这个参数多年没人动。
入站槽位满了,新连接进来之前节点要先做一次淘汰赛。本文按 v31.0 源码 eviction.cpp 的执行顺序拆这份保护清单:免驱逐白名单、出站全保、四个网组位、八条低延迟、最近送交易的、最近送新区块的、按在线时长和弱势网络配比保护,最后才是同网组择优动手。
邻居发来一千条地址,节点并不照单全收,也不按来的顺序处理。本文按 v31.0 源码 net_processing 的 addr 分支逐步走一遍:条数违规、随机洗牌、限速令牌、服务位筛查、时间钳制、封禁名单、中继条件、可达网络过滤,最后才是带时间罚的分桶入库,每一步丢掉的地址去了哪里。
不少教程说 debug.log 满了会自动改名轮转,v31.0 源码里已经没有这套逻辑,日志只会被追加。真正自动缩文件的是启动时的 shrinkdebugfile:超过阈值只保留末尾一段。本文核对瘦身触发条件、默认值的开关联动、日志去向配置,以及排障前该先留哪一段。
区块规则对交易条数没有直接上限,条数天花板完全由每笔交易有多小决定。本文用 65 字节政策地板、400 万权重上限和区块预留权重三段约束做一次思想实验,再解释为什么实链每块条数比理论值小两个数量级,以及用哪个 RPC 能看真实分布。
共识校验不看输入有多少条,反序列化却先把尺寸声明框死在约 3354 万以内,标准政策和权重预算再把现实数字砍到几千。本文拆开这条"没有条数上限的上限",按共识、协议、政策三层各自算一遍账,再讲巨型输入在 sigops 预算和手续费上的现实约束。
一条地址进了 addrman 之后时间戳不是写死的:在线判定、一小时与二十四小时的更新门槛、两小时来源罚时、自报免罚、成功连接后的二十分钟刷新。本文按 v31.0 源码 addrman.cpp 拆这套时间重写规则,解释本机时钟偏差怎么让邻居名单老化,以及用哪个 RPC 观察分桶状态。
stop 不是拔电源。本文按 v31.0 源码 init.cpp 的 Shutdown 函数逐段走关停流水线:先关对外接口,再断网络,等后台初始化线程收工,然后依次落内存池、费用估计、链状态,最后才删 pid 文件写下 Shutdown done。理解这个顺序,才能理解为什么优雅停机下次启动快、强杀要补账。
除 coinbase 外没有交易的区块在共识规则下完全合法。本文拆解矿池产出空块的流水线竞态、包中继配置与策略过滤三类来源,并给出收款方核对与节点验证步骤。
输入序号越界时旧实现返回常数 1 当待签消息,等于可复用图章。从 2012 年警告、SegWit v0 全零输出哈希到 Taproot 直接拒绝,看共识缺陷如何分层修补。