Merkle Tree (默克尔树)
Merkle Tree 是一种哈希树结构,用于高效验证大量数据的完整性。比特币用它来组织区块中的所有交易。
🔨 生成原理
从底层交易开始,两两配对计算哈希,逐层向上直到生成唯一的根哈希 (Merkle Root)。
TX1, TX2, TX3, TX4
点击按钮构建树...
构建步骤:
1
对每个交易计算哈希,形成叶子节点
2
将相邻的两个哈希拼接后再次哈希
3
如果节点数为奇数,复制最后一个节点
4
重复步骤2-3,直到只剩一个根节点
🔍 验证原理 (Merkle Proof)
只需要少量的哈希值,就能证明某个交易存在于区块中,无需下载整个区块的所有交易。
选择交易后点击按钮查看验证过程...
Merkle Proof 的优势:
数据量小
验证 1000 笔交易只需 ~10 个哈希
验证快速
时间复杂度 O(log n)
轻节点友好
SPV 钱包无需完整区块数据
防篡改
任何修改都会改变 Merkle Root
📊 复杂度对比
| 交易数量 | 完整验证 | Merkle Proof | 节省 |
|---|---|---|---|
| 8 | 8 个哈希 | 3 个哈希 | 62.5% |
| 256 | 256 个哈希 | 8 个哈希 | 96.9% |
| 4,096 | 4,096 个哈希 | 12 个哈希 | 99.7% |
公式: Merkle Proof 需要 log₂(n) 个哈希来验证 n 笔交易中的任意一笔