在探索比特币(BTC)的世界时,你可能会遇到一个核心概念——“未花费的交易输出”(Unspent Transaction Output,简称UTXO),理解UTXO是掌握比特币工作原理的关键,它不仅是比特币账户余额的基础,也构成了比特币交易的本质,究竟什么是BTC的UTXO呢?
UTXO:比特币的“账本”单元
UTXO可以理解为比特币网络中“存在且尚未被花费”的 smallest unit of value(最小价值单位),在比特币的设计中,并没有传统银行账户那样的“账户”概念,相反,所有的比特币都以UTXO的形式存在于整个网络中。
每个UTXO都包含以下关键信息:
- 交易ID(TXID):标识这笔UTXO所属的原始交易。
- 输出索引(Vout):标识在该交易中,这是第几个输出(一个交易可以有多个输出)。
- 金额:这个UTXO包含多少聪(satoshi,比特币的最小单位,1 BTC = 100,000,000 聪)。
- 锁定脚本(ScriptPubKey):规定了谁有权花费这个UTXO,通常包含接收方的公钥哈希或锁定时间等条件。
UTXO如何形成与消耗?
UTXO的生命周期非常清晰:
-
创建(新币的产生):
- 创币交易(Coinbase Transaction):这是新区块中产生的特殊交易,由矿工创建,用于奖励矿工和支付交易手续费,产生的UTXO直接进入矿工的控制。
- 普通交易:当有人发送比特币给你时,他们实际上是在一笔交易中创建了一个或多个新的UTXO,并将其锁定在你的公钥对应的条件上,这些新创建的UTXO就成为了“未花费”的输出。
-
消耗(交易的发生):
- 当你想花费比特币时,你不能随意“动用”某个UTXO,你必须选择一个或多个你拥有的UTXO作为“输入”(Inputs)。
- 你想支付0.5 BTC,但你手上没有恰好0.5 BTC的UTXO,你可能有一个1 BTC的UTXO,那么你可以将它作为输入,然后创建一笔新的交易:
- 输出1:支付给接收方0.5 BTC(一个新的UTXO,锁定在接收方的公钥条件)。
- 输出2:找零给你自己0.5 BTC(一个新的UTXO,锁定在你自己的公钥条件)。
- 在这个过程中,你那个1 BTC的UTXO被“花费”了(标记为已花费),并消失了,取而代之的是两个新的UTXO:0.5 BTC给接收方,0.5 BTC作为你的找零。
UTXO与“账户余额”的关系
你的“比特币余额”是如何计算的呢?它并不是一个固定的数字,而是
欢迎留下您的宝贵意见