第四步:从默克尔树到区块链
每个比特币区块头里都有一个默克尔根,把这个区块包含的所有交易"压缩"成一个 32 字节的指纹。
前区块哈希0000...7a3f
Merkle Root4a5e...b9a8
时间戳2021-09-11
2,875 笔交易
前区块哈希0000...9c2d
Merkle Root8b3e...1f7c
时间戳2021-09-11
1,943 笔交易
前区块哈希0000...e4b1
Merkle Root你的树→
时间戳现在
— 条记录
为什么这很重要
你的默克尔根一旦被写入区块链,就等于把"这些数据在此刻存在"这个事实锚定到了全球数万个节点上。之后任何人想篡改其中一条记录,都会导致默克尔根变化,进而让整个区块哈希对不上——所有节点会拒绝这个篡改。
上面演示的原理,已经有人做成了完整的服务。fossilize 基于 OpenTimestamps 协议,把你的文件哈希聚合进默克尔树、最终锚定到比特币区块链上。整个过程免费、开源、可独立验证。
你的文件 → SHA-256 哈希 → 聚合进默克尔树 → 根哈希写入比特币交易 → 全球节点永久保存