
一、先理解底层系统解决什么问题
理解区块链底层,可以围绕三个问题展开:数据如何组织,更新是否有效,多个节点如何协调记录。数据结构、验证规则和执行机制分别承担不同职责,组合起来才构成能够持续更新的系统。比特币与以太坊提供了两种具体观察角度,但各自机制有不同适用范围。
二、比特币:哈希关联、交易输出与共识
比特币区块通过前一区块头的哈希相连,交易则通过Merkle树汇总到区块头中的根哈希。交易输入引用此前的输出,节点检查被花费的输出是否尚未使用。全节点独立验证区块;对于竞争的有效分支,依据累计工作量选择链。
这些概念分别回答不同问题:哈希关联使历史改动能够被检测,未花费交易输出(UTXO)支持识别重复花费,工作量证明和链选择规则帮助处理竞争历史。哈希本身不能阻止所有改写,历史记录的保护还依赖验证规则与共识机制。
三、以太坊:状态机、EVM与Gas
以太坊可理解为分布式状态机:交易依据规则把旧状态更新为新状态。EVM执行合约字节码,Gas衡量执行所需的计算工作。账户状态通过改进的Merkle Patricia Trie组织,并可汇总为根哈希;合约执行还区分临时数据与持久化存储。
状态机视角关注的是“这次执行会改变什么”。理解合约时,需要同时考虑指令的执行结果、资源消耗和数据保留期限。临时计算产生的数据与写入持久状态的数据具有不同用途,不能仅凭一次执行过程中出现了某个值,就判断它会长期保留。
四、常见问题与适用边界
Merkle证明能否证明交易完全有效?它可以支持核验交易是否被纳入某个区块,但交易是否符合花费规则、所在区块是否属于被接受的历史,还涉及其他检查。数据包含关系与业务规则有效性是不同层面的问题。
所有区块链都需要工作量证明或EVM吗?上述机制分别对应具体系统设计,不能推广为统一配置。阅读底层架构时,应分别识别其数据结构、状态模型、验证规则和执行环境,再分析这些部分如何协同。