以太坊和比特币结构图深度解析,一张图看懂区块链双雄的底层设计
比特币结构图解析
整体架构:链式区块结构
创世区块 ← 区块1 ← 区块2 ← 区块3 ← ... ← 最新区块
(每个区块通过哈希指针指向前一区块,形成不可篡改的链)
比特币的整条链由一个个区块串联而成,每个区块都包含前一区块的哈希值,任何人篡改历史区块都会导致后续所有哈希失效。
区块内部结构图
┌──────────────────────────────────┐
│ 区块头(80字节) │
│ ┌────────────────────────────┐ │
│ │ 版本号 │ │
│ │ 前一区块哈希 │ │
│ │ 默克尔根(Merkle Root) │ │
│ │ 时间戳 │ │
│ │ 难度目标(Bits) │ │
│ │ 随机数(Nonce) │ │
│ └────────────────────────────┘ │
├──────────────────────────────────┤
│ 区块体 │
│ 交易列表: │
│ ├─ Coinbase交易(矿工奖励) │
│ ├─ 交易1 │
│ ├─ 交易2 │
│ └─ ...(约2000-3000笔交易) │
└──────────────────────────────────┘
UTXO模型:比特币的核心账本结构
比特币没有“账户余额”的概念,采用的是UTXO(未花费交易输出)模型:
交易结构:
┌─────────────┐ ┌─────────────────────┐
│ 输入 Input │ ───→ │ 输出 Output │
│ 引用之前 │ │ ┌───────────────┐ │
│ 某笔交易的 │ │ │ 金额 + 锁定脚本 │ │
│ 未花费输出 │ │ └───────────────┘ │
└─────────────┘ └─────────────────────┘
你的"余额" = 网络中所有指向你地址的未花费UTXO之和
默克尔树结构
默克尔根
/ \
Hash01 Hash23
/ \ / \
Hash0 Hash1 Hash2 Hash3
| | | |
交易0 交易1 交易2 交易3
所有交易两两哈希、逐层向上汇总,最终生成一个默克尔根写入区块头,实现轻节点快速验证(SPV)。
以太坊结构图解析
整体架构:账户模型 + 世界状态
┌─────────────────────────────────────┐
│ 以太坊整体架构 │
│ │
│ 应用层:DApp / 智能合约(Solidity) │
│ 虚拟机层:EVM(以太坊虚拟机) │
│ 共识层:PoS权益证明(信标链) │
│ 数据层:区块链 + 世界状态(MPT树) │
│ 网络层:P2P节点网络(DevP2P) │
└─────────────────────────────────────┘
The End
发布于:2026-10-12,除非注明,否则均为原创文章,转载请注明出处。

