
一、先区分技术层次
区块链案例通常涉及四个问题:数据怎样组织,交易怎样验证,网络怎样确定共同记录,程序怎样执行。它们分别对应区块与密码学结构、交易模型、共识机制以及智能合约。阅读文章时,应先判断讨论的是哪一层,而不是把所有功能都归因于“去中心化”。
二、区块、哈希与默克尔树
区块把交易等数据组织起来,前后区块通过密码学引用连接。哈希可理解为数据的摘要:修改数据通常会改变摘要,因此修改历史记录会影响后续引用。
比特币还用默克尔树把交易摘要逐层汇总为区块头中的根值。这种结构支持用部分中间摘要验证交易是否包含在某个区块中,但“被收录”不等于已经独立验证了交易的所有规则。
三、节点与共识机制
节点负责传播信息并按规则验证数据。比特币使用工作量证明,在有效的竞争分支中依据累计工作量选择链;以太坊使用权益证明,由质押ETH的验证者参与区块提议和共识,并通过奖惩约束行为。
共识不是每个节点对每个区块逐一表决,也不保证网络始终没有暂时分歧。“难以篡改”依赖密码学连接、验证规则和共识安全,不能理解为任何条件下都绝对不可改变。
四、UTXO与账户模型
比特币以未花费交易输出,即UTXO,表示可供后续交易花费的输出;同一输出不能在有效链上被重复花费。以太坊则把账户余额等信息纳入全局状态。
因此,“转账”虽然是相似的用户操作,底层记账方式却不同。分析案例时,应明确采用哪种模型,不能直接用一个网络的余额或输入输出逻辑解释另一个网络。
五、EVM、智能合约与费用
以太坊虚拟机EVM是执行合约代码的运行环境。智能合约是部署在链上的程序,交易可以请求调用它,并在执行规则允许时更新状态。ETH用于支付链上计算等资源费用,也参与权益证明的经济约束。
智能合约与去中心化应用并非完全同义:前者是链上程序,后者是面向用户的应用。自动执行只能说明程序按规则运行,不能由此推断程序没有缺陷或业务承诺必然成立。
六、案例解读中的适用条件与常见问题
看到“交易成功”,应追问它指广播、进入区块,还是达到相应确认或最终性条件;这些状态不能混为一谈。看到“链上可验证”,则应明确验证对象是数据包含关系、交易规则,还是程序执行结果。
区块高度是否能唯一标识区块?在出现竞争分支时,同一高度可能存在不同区块,因此不能仅靠高度区分。所有区块链是否都运行EVM?上述EVM说明适用于以太坊的执行体系,不能自动推广到所有网络。