2、任何一筆交易的交易輸入總量必須等於交易輸出總量,等式兩邊必須配平。
數字貨幣無法像金屬貨幣(比如黃金)那樣,僅靠物理轉移即可轉移所有權————即當A將一份黃金交給B後,A必然不再擁有這份黃金。
而A將一份數字貨幣轉給(簽名)B後,A仍可以把同一筆交易轉給C,因為A掌握私鑰,這兩份簽名均為有效簽名,這就構成了“雙花”。以往的密碼學貨幣無法有效解決雙花問題,因而無法擺脫對第三方中心化機構認證的依賴(第三方信任)。因此必須有一種機制來確保每筆交易只能使用一次,即只有對“尚未使用過”的交易簽名才能是有效簽名。
比特幣規定每一筆新的交易的輸入必須是某筆交易未花費的輸出,每一筆輸入同時也需要上一筆輸出所對應的私鑰進行簽名,並且每個比特幣的節點都會儲存當前整個區塊鏈上的UTXO,整個網路上的節點透過UTXO及簽名演算法來驗證新交易的合法性。這樣,節點不需要追溯歷史就可以驗證新交易的合法性。
UTXO模型的好處是:
可擴充套件性 - 由於可以同時處理多個UTXO,因此可以實現並行事務並鼓勵可伸縮性創新。
隱私 - 甚至比特幣也不是一個完全匿名的系統,但只要使用者為每筆交易使用新地址,UTXO就可以提供更高階別的隱私。 如果需要增強隱私性,可以考慮更復雜的方案,例如環簽名。
相比使用賬戶/餘額模型的以太坊來說,這種模型的複雜度更高,效率也不及後者,但對於雙花攻擊的抗性更強。目前除了比特幣,也有一些其他的區塊鏈開始推廣這種模型,例如Hyperledger,理由也正如前述,允許並行處理多個交易,同時可以保護隱私。但反對使用UTXO模型的人認為,UTXO在實際執行中會比理論上產生更大的複雜性,而這可能是沒必要的,而且由於其無狀態性,和智慧合約的契合性不好。
更多數字貨幣資訊:www.qukuaiwang.com.cn/news