# 未支付的交易輸出 UTXO 簡介 ### 未支付的交易輸出 UTXO 未支付的交易輸出,UTXO,unspent transaction output,是未被支付的比特幣狀態,一種紀錄交易的模式。 比特幣的交易在實際運作上,並不是從支付者的帳戶發送至接收者的帳戶或地址中,而是確定支付者是否有足夠的 UTXO 可供使用,新的 UTXO 引用於之前的 UTXO,再經過確認接收者符合條件,接受新的 UTXO 後,舊的 UTXO 則不再被採用。 而 UTXO 的不可分割性,一次也只能支付給一個接收者.而接收者得到的一個新 UTXO,可以引用來自多筆的舊 UTXO.在完成一批 UTXO 輸出過程後,被認定為一筆交易。 UTXO 構成了交易,交易構成了區塊,區塊構成了區塊鏈。 --- ### UTXO 特性 * **不可分割性:** 每一筆 UTXO 均不能分割至更小單位,必須直接被引用支付出去,而若 UTXO 大於需支付的金額,將會以找錢的方式返還支付給原帳戶,成為的新 UTXO。 * **離散性:** 每一筆 UTXO 都因其是不可分割的,而有著各自獨立的離散性,並不是被視為帳戶餘額的一部分。 * **可驗證性:** 除了每一個區塊中新生成的 coinbase (幣基) 為新的 UTXO 外,UTXO 每一筆輸出,均引用自前一次的 UTXO,能使得模型易於驗證每筆交易的有效性,不需要驗證整個帳戶的餘額。 * **隱私性:** UTXO 並不直接關聯至特定用戶,只有用戶主動將地址公開時,才會展露地址身份,有助於保護部分隱私。 --- ### UTXO 資訊 * **金額 Value:** 表示可以被支付的比特幣餘額。 * **腳本Script:** 每一個 UTXO 均關聯了一個腳本,被稱作 scriptPubKey,定義了接收者必須要滿足某些條件才能使用這筆 UTXO。 * **輸出索引 Output Index:** UTXO 是交易的輸出,而一筆交易可以包含了多個輸出,輸出索引表示了 UTXO 在交易的輸出列表中的位置。 * **交易哈希 Transaction Hash:** 每一個 UTXO 都與創建它的該筆交易有關,交易哈希則是該交易的識別資訊。 * **輸出地址(Output Address):** UTXO 包含了接收方的比特幣資訊,用於確定誰有權使用這筆 UTXO --- ### UTXO 運作原理 比特幣的交易在實際運作上,並不是支付者將比特幣發送到接收者的帳戶或地址中,而是 UTXO 與 scriptPubKey 之間的交互。 scriptPubKey 包含了操作碼 OP code 和數據資訊,是用以確定接收方是否滿足條件,才得以將比特幣輸出的腳本.用以定義何者有權花費這筆輸出,條件可包含地址、公鑰、腳本等各種樣式規則。 常見 scriptPubKey 樣式如下 * Pay-to-Public-Key-Hash ( P2PKH ) * Pay-to-Public-Key ( P2PK ) Multi-Signature ( MultiSig 多重簽章 ) * Data Output ( OP_RETURN 客製化的資料 ) * Pay-to-Script-Hash ( P2SH )
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up