
交易记录表示什么
区块链交易是按照协议编码、验证并记录的操作。以太坊开发者文档以账户状态变化解释交易,涵盖转账、合约部署与合约调用;比特币开发者指南则从输入、输出以及区块组织解释账本。两种体系的共同点是:节点依据规则验证操作,并将有效交易纳入有序历史。
数字签名与交易哈希
数字签名用于验证交易授权;交易哈希用于标识交易数据。两者回答不同问题:前者关注谁授权了操作,后者关注所引用的是哪笔交易。签名本身不能证明签署者理解了操作内容,获得交易哈希也不能证明交易已经被区块收录。

账户模型与UTXO模型
以太坊交易包含接收地址、金额、输入数据及费用参数等信息,账户nonce用于标记发送账户的交易顺序。比特币普通交易则引用此前尚未花费的输出,即UTXO,并生成新的输出;同一输出不能在有效链上重复花费。

理解余额变化时,需要先确定账本模型。账户模型侧重账户状态如何更新,UTXO模型侧重哪些输出被消耗、哪些输出被创建。以太坊账户nonce与比特币区块头中供工作量证明使用的nonce用途不同,不能仅凭名称将其等同。
区块、哈希链接与默克尔树
比特币通过默克尔树将交易标识逐层汇总到区块头中的默克尔根,并在区块头引用前一区块的哈希。前者支持验证交易是否被某个区块包含,后者将区块连接起来,使历史改动影响后续链接。
包含证明的适用范围是证明交易与区块的关系。它本身不等于对交易全部规则的验证,也不能独立证明该区块属于网络最终认可的历史。
费用与合约执行
以太坊用Gas计量交易执行消耗的计算资源,Gas上限与每单位Gas的费用参数承担不同作用。因此,读取费用记录时,应区分资源上限、实际消耗和实际单价。比特币普通交易的输入总额与输出总额之差构成手续费,不能直接套用Gas概念。
合约交易还需要解释输入数据。在遵循ABI编码的以太坊合约调用中,函数选择器与参数共同描述请求;仅凭选择器不一定能唯一确定函数。通过eth_call进行只读查询通常不产生链上交易费用,但链上执行过程中调用只读函数仍会消耗Gas。
常见问题:提交、收录与最终确定是否相同
广播表示交易已向网络传播,收录表示它进入某个区块,最终确定则涉及共识对历史稳定性的保障。这些状态不能混用,交易被收录也不自动代表合约执行达到了预期效果。
比特币依据有效链的累计工作量处理竞争历史,以太坊具有区块最终确定机制。因此,“不可篡改”应理解为协议验证与共识约束下的抗改写能力,而不是脱离网络条件的绝对保证。