未花費的交易輸出(UTXO)是指可以用作新交易輸入的交易輸出。本質上,UTXO 定義了每個區塊鏈交易的起始和結束位置。 UTXO 模型是比特幣和許多其他加密貨幣的基本要素。
換句話說,加密貨幣交易由輸入和輸出組成。每當進行一筆交易時,使用者會使用一個或多個 UTXO 作為輸入。接下來,使用者提供數位簽章來確認輸入的所有權,最終產生輸出。消耗的 UTXO 現在被視為“已使用”,並且不能再使用。同時,交易的輸出成為新的 UTXO –稍後可以在新交易中使用。
透過範例可能可以更好地解釋這一點。 Alice 的皮夾裡有 0.45 BTC。這並不是我們想像的硬幣的一小部分。它更像是 UTXO 的集合。具體來說,兩個 UTXO 分別價值 0.4 BTC 和 0.05 BTC –過去交易的輸出。現在假設 Alice 需要向 Bob 支付 0.3 BTC。
她在這裡唯一的選擇是分解 0.4 BTC 單位並將 0.3 BTC 發送給 Bob,並將 0.1 BTC 發送回給自己。由於挖礦費用,她通常會回收不到 0.1 BTC,但讓我們簡化一下,將礦工排除在外。
Alice 創建的交易本質上是對網絡說:將我的 0.4 BTC UTXO 作為一個輸入,將其分解,將其中的0.3 BTC 發送到Bob 的地址,然後將0.1 BTC 返回到我的地址。 0.4 BTC 現在已被消耗掉,無法重複使用。同時,創建了兩個新的 UTXO(0.3 BTC 和 0.1 BTC)。
請注意,我們在本例中分解了 UTXO,但如果 Alice 必須支付 0.42 BTC,她可以輕鬆合併她的0.4 BTC 和另外0.05 BTC 產生一個價值0.42 BTC 的UTXO,同時向她自己返回0.03 BTC。
總而言之,UTXO 模型作為協議的機制來追蹤硬幣的位置任何給定的時間。從某種意義上說,它們的運作方式很像支票:它們發送給特定用戶(或更確切地說,他們的公共地址)。 UTXO 不能部分使用 –相反,必須根據舊檢查創建新檢查並相應地傳遞。