
账本结构:哈希与默克尔树
理解区块链专业知识,可以先围绕三个问题展开:记录怎样组织,参与者怎样确认记录有效,程序怎样依据记录执行规则。比特币开发者指南侧重账本和验证机制,以太坊智能合约文档则介绍链上程序,两者对应不同的技术层面。
在比特币中,区块通过前一区块头的哈希关联,交易通过默克尔树汇总至区块头。哈希承担数据关联与校验作用;默克尔证明可用于核验交易是否被某个区块收录,但收录证明本身不等于完整验证交易有效性。

交易模型:输入、输出与双重花费
比特币采用未花费交易输出,即UTXO模型。普通交易引用此前未花费的输出,并形成新的输出;同一输出不能在有效链上被重复花费。理解这一模型,需要区分交易记录、可用输出与钱包显示的余额。

这类知识属于状态管理:系统不仅保存发生过什么,还要判断哪些记录仍可使用。UTXO是具体实现方式,不能据此认定所有区块链都使用相同的余额组织方法。
共识机制:验证规则与分叉选择
比特币全节点独立验证区块;工作量证明要求区块头哈希满足目标条件。出现竞争分支时,节点在有效链中依据累计工作量选择链。因此,理解共识需要同时考虑规则验证与历史选择,不能仅用区块数量解释。
常见问题是区块高度能否唯一标识区块。分叉时不同区块可能具有相同高度,因此高度表示位置,区块哈希用于区分具体区块。历史记录的修改难度也需要结合共识机制理解,不能把它描述为无条件不可修改。
智能合约:代码、状态与执行环境
以太坊智能合约是在特定地址保存代码和状态的程序,用户通过交易调用其功能。相关技术概念包括合约语言、编译、以太坊虚拟机及Gas资源计量;合约还可以调用其他合约。
学习时应区分程序规则与业务目标:代码能够执行预先定义的条件,业务需求仍需正确转换为代码。合约之间的组合也意味着,一个功能可能依赖其他合约的行为。
适用边界:外部数据与权限管理
以太坊合约不能自行获取链外事件信息,需要预言机提供外部数据。多签合约则通过多方签名条件分配执行权限。这两类机制分别涉及数据输入和授权,解决的问题不同。
常见误解是自动执行能够保证外部信息真实。合约可以检查输入是否符合程序条件,数据是否可靠仍取决于来源与传递机制。同样,多签能够分散单一密钥风险,但权限设计仍需明确哪些参与方可以共同批准操作。