
“消耗模式”需要结合语境理解
“区块链消耗模式”并非这里涉及的两种机制共同使用的统一技术名称。理解这一表述,可以先问:消耗的是可花费的交易输出、执行计算所需的资源额度,还是流通中的代币?这三类对象对应不同规则,不能仅凭“消耗”二字判断其含义。
UTXO:被花费的是交易输出
比特币开发者指南的交易说明中,UTXO是未花费交易输出。普通交易的输入引用此前的输出,输出则记录金额和花费条件。输入通过交易标识txid与输出索引vout定位目标;满足条件后,该输出被花费,新交易产生新的输出。钱包余额可由多个UTXO组成。
这里的“消耗”描述输出状态的变化。一个输出被花费后,不能再作为未花费输出重复使用;这并不表示对应价值全部消失。理解时应区分承载金额的具体输出,以及交易前后价值如何分配。
Gas:执行工作量与费用分开看
以太坊的Gas说明将Gas定义为执行操作所需计算工作量的计量单位。执行费用按实际使用的Gas乘以每单位Gas的有效价格计算,并以ETH支付;gwei是ETH的计价单位。Gas limit限定单笔交易最多可使用多少Gas,基础费按协议确定并被销毁,优先费支付给验证者。
Gas数量和Gas单价回答不同问题:前者衡量做了多少执行工作,后者说明每单位工作如何计费。因此,Gas使用量增加与每单位Gas价格上涨,都可能改变费用,但其成因不同。上述概念适用于以太坊相关执行机制,不能直接套用到所有区块链。
花费、计量与销毁有什么区别
花费关注某个输出是否仍可使用;Gas计量关注执行占用了多少计算资源;销毁关注代币是否被移出流通。基础费销毁也不能推导为全部交易费用都会销毁,因为费用组成具有不同去向。Gas本身则是计量单位,不是一种被销毁的独立代币。
常见问题:失败是否收费,上限是否全额消耗
需要区分验证阶段被拒绝与进入执行后失败。未被纳入区块且在验证阶段被拒绝的交易,不会产生链上执行Gas消耗;进入执行后失败,已经完成的计算仍可能收费。执行中耗尽Gas时,相关状态变更会回退,但所提供的Gas会被耗尽。
Gas limit表示允许使用的上限,并不意味着每次都会用满。判断“消耗了多少”,应查看实际使用量;判断“支付了多少”,还需要结合有效单价。交易结果、资源用量和费用金额是三个应分别理解的指标。