01什么是Block Header?
Block Header 是精确序列化的结构,其双重 SHA-256 构成比特币区块哈希。它不包含交易列表或所有交易完全有效的证明。
02六个字段的精确顺序
Version(4 字节)、前区块头哈希(32)、Merkle root(32)、time(4)、nBits(4)、nonce(4),总计 80。数字字段采用 little-endian;哈希按内部字节顺序序列化,与常见十六进制标识符显示不同。 [Bitcoin Core v29.0: header serialization]
03目标与时间需要上下文
nBits 紧凑编码目标,不是浏览器显示的难度值。节点检查哈希不大于目标,并检查该高度应有的目标。时间必须大于前十一个区块的中位数,并通过未来时间检查;它不是可靠的付款时间或精确挖矿时长。 [Bitcoin Core v29.0: header validation]
04区块头能证明什么
改变 nonce 直接改变哈希;改变 coinbase 会改变 Merkle root,进而改变头部。区块头链允许检查连接和工作量。脚本、花费输出、奖励等内容规则仍需交易数据及状态上下文。 [Bitcoin Core v29.0: header validation]
↗结合上下文阅读
要获得更完整的理解,请将本词条与以下词条结合阅读: 区块, Proof of Work, Merkle树, Nonce. 反向关联还来自: 区块, 密码学哈希, SHA-256, Merkle树.