比特币节点之间发的每一条消息,都是 4 字节网络魔数、12 字节命令名、4 字节长度、4 字节校验和加负载的固定结构。本文按 developer.bitcoin.org 参考手册逐字段拆解这个封包格式,解释校验和为何只取双重 SHA256 的前四字节、多字节整数为什么按小端传输,以及封包结构本身不承担验证责任这件事意味着什么。
汇总与「比特币」相关的文章,帮助你系统了解该主题。
比特币节点之间发的每一条消息,都是 4 字节网络魔数、12 字节命令名、4 字节长度、4 字节校验和加负载的固定结构。本文按 developer.bitcoin.org 参考手册逐字段拆解这个封包格式,解释校验和为何只取双重 SHA256 的前四字节、多字节整数为什么按小端传输,以及封包结构本身不承担验证责任这件事意味着什么。
比特币节点对付捣乱对端的方式是静默劝退:验证失败或协议违规会触发断连并进入本机会话级的不鼓励集合,重启即忘;只有管理员手动封禁才生成带到期时间的持久记录。本文拆解这套 discouragement 机制的行为来源、默认时长档位、权限白名单的例外通道,以及跑公网节点时误伤与自己挨断都是同一套机制造成的。
矿工给区块盖时间戳并不自由:必须晚于前十一个块的中位时间,又不得超过节点本地时钟加两小时。正因为相邻两个难度周期的交界处不受连续性约束,历史上出现过利用边界让难度被错误下调的时间弯曲思路。本文按共识规则拆解这三条时间约束如何咬合,以及改进提案如何堵住边界缺口。
BIP 是比特币改进提案的缩写。分配编号、社区讨论、写参考实现、主网激活是四件不同的事,各有各的状态。本文依据 BIP-0001 讲清 BIP 的类型划分、状态词表和最容易踩的误读:状态变成 Final 也不等于主网已经生效。
测试网算力太小导致频繁重组,Regtest 又太好控制,Signet(BIP325)给出的答案是让工作量证明之外再交一份满足挑战脚本的签名。本文拆解这条受约束测试链的机制、Bitcoin Core 的接入方式,以及它适合哪些联动测试场景。
2012 年的 P2SH(BIP16)用另一套激活机制:矿工在 Coinbase 输入里投出支持字符串,官方按 2012 年 2 月 1 日前七天约百分之五十五的支持率作数,到约定时间戳起全网强制验证。本文按 BIP16 原文复盘这次特殊的激活设计与其遗留教训。
区块大小之外,比特币还有一条按签名验证操作计数的预算线:隔离见证前每块两万次,BIP141 之后按四倍权重折成八万成本单位。本文解释这条账怎么记、为什么 15 个公钥的多签比十几次普通支付更费预算。
OP_CAT 在 2010 年被禁用,BIP-347 提议在 Tapscript 内以软分叉重新启用。本文梳理拼接与交易内省原理、520 字节上限如何堵住旧攻击面,并核到 2026 年 9 月它仍未在主网激活。
把文件哈希写进比特币不是为了转账,而是证明这份内容在某个时间点之前已经存在。本文拆解 OpenTimestamps 如何用默克尔树把海量存证请求聚合进一笔交易,普通人如何验证一张 .ots 回执,以及它不能证明什么。
比特币名字让付款像发邮件一样输入用户名加域名就能完成。本文拆解 BIP353 如何用 DNSSEC 签名的 DNS TXT 记录承载收款指令,硬件钱包为何偏好这套方案,以及域名到期、缓存过期与仿冒字符带来的风险边界。