
账本、哈希与共识
区块链应用首先涉及多节点如何记录和验证数据。比特币开发者指南介绍:全节点独立验证区块;区块通过前一区块头的哈希连接,交易经默克尔树汇总到区块头。工作量证明和累计工作量支持有效链的选择,UTXO用于记录尚未花费的交易输出。
这些概念分别回答不同问题:哈希关联帮助发现记录变化,默克尔树支持交易包含证明,共识规则约束节点接受哪些记录。理解应用时,需要把数据结构与网络采用记录的规则结合起来。

交易模型与重复使用问题
比特币的一笔普通交易引用先前尚未花费的输出,并形成新的输出。已经花费的输出不能再次成为有效支出的来源,这是理解双重支付问题的基础。

这种模型适用于解释比特币的交易验证,不能直接代表所有区块链。应用中的“余额”和“转移”需要结合底层模型理解,仅凭界面显示相似,无法判断底层验证方式相同。
智能合约、执行环境与费用
以太坊智能合约文档将合约描述为位于链上地址的代码和状态。用户通过交易调用其功能,合约也能调用其他合约;部署和执行涉及Gas。合约使用链外信息需要预言机,多签合约则可要求多个有效签名共同授权。
智能合约适合表达能够写成明确条件的业务规则。分析此类应用,可以依次理解触发输入、权限检查和状态变化。代码可以执行规则,但规则是否符合业务目标,仍取决于设计是否正确。
外部数据与共同授权的适用条件
当规则依赖现实事件时,预言机承担把链外数据提供给合约的作用。此时需要分别考察数据来源是否可靠,以及合约如何使用数据;数据进入链上并不会自动获得真实性。
当操作需要多人同意时,多签机制可以表达共同授权要求。其作用范围是控制操作权限,无法替代对合约逻辑和业务条件的检查。
常见问题:记录上链意味着什么
上链是否等于绝对不可修改?比特币的哈希连接与工作量证明提高了改写历史的成本,但理解记录稳定性仍需考虑分叉和共识条件,不能将其表述为无条件保证。
交易包含证明是否代表全面验证?它用于证明交易被某个区块包含,不能单独替代全部交易规则检查。区块链能为记录和执行提供可验证机制,现实事实的判断仍需要相应证据。