【蛻變後的蓬勃】不說BTC那就說說UTXO

買賣虛擬貨幣

UTXO(Unspent Transaction Output)指未花費的交易輸出

(文章《LXLBTC/" target="_blank"">比特幣賬戶並沒有餘額》 作者:湯強)

UTXO(Unspent Transaction Output) 未花費的交易輸出,Transaction被簡稱為 TX

現實世界中沒有比特幣,只有UTXO。比特幣的交易由交易輸入和交易輸出組成,每一筆交易都要花費(spend)一筆輸入,產生一筆輸出(output),而其所產生的輸出,就是"未花費過的交易輸出",也就是 UTXO

(概念來源360百科)

注:標明學習內容來源,表示對其的尊重和感謝,沒有做廣告的嫌疑。

1、什麼是UTXO

要理解UTXO首先要明確一個概念,比特幣系統沒有“賬戶”,只有“地址”。“賬戶”對應“餘額”,“地址”對應UTXO。你每一筆比特幣的交易都有“輸入”和“輸出”,別人付給你的錢是“交易輸入”,你收到的錢是“交易輸出”。錢放在賬戶裡為何叫“輸出”?這個輸出指的是“未花費的交易輸出”,一旦支付成功,才是真正意義上的“交易輸出”。

因為比特幣系統不認識持幣者,它只認識私鑰和公鑰。又因為現實中賬戶對應的是你的姓名和密碼,大家習慣了用賬戶統稱所有,比如你去買東西需要微信轉賬,檢視餘額都檢視的是賬戶餘額。

而比特幣系統中的地址對應的是私鑰和公鑰,它的地址看著像賬戶,但千萬不要誤會了,因為它不存在賬戶這個概念,只對應地址這個概念。所以可以理解為你要檢視你有多少幣,那就看的是地址,這裡沒有賬戶和餘額這兩個詞。

這就好比是蘋果系統和安卓系統,雖然都是手機程式卻大相徑庭。


2、為什麼要選擇“UTXO”而不選擇“餘額”

如果說在比特幣世界裡選擇“餘額”,那麼你必須要解決資料肥碩和雙重支付問題。

就按照現有的國內電商日交易量舉例,即使每日交易量在11萬次,按照這個速度生產更新餘額表,幾周後兩家支付寶量的伺服器就會被撐爆。因為即使你不買東西,只要是有任何一筆交易發生,那所有人的餘額即使沒變也要更新,因為要避免雙重支付的發生。又因為點對點系統沒有中心的權威賬本,達成共識需要經過大多數節點的確認,如果資訊傳遞存在時間差,就不能同時確認所有賬戶餘額,所以必然面臨雙重支付的問題。

而“UTXO”只確認交易本身,使用它產生的資料庫比使用餘額系統的資料庫要小得多。比特幣執行至今其交易記錄,也就使用一臺家用電腦即可儲存。如需確認地址上的比特幣,你只要從上到下掃描一遍同一地址所有的進進出出,即等即查。只要等上六個區塊的確認時間,就能確保不被雙重支付,因為這是被全網確認過的。

所以選擇“UTXO”還是“餘額”,效率和安全大家還是一目瞭然的。

3、結語

技術的進步帶來的是使用上的方便,因為即使我們不理解UTXO,也不影響我們的使用。過去的手動程式設計現在已變為自動(部分自動),這完善了系統的功能強大化,當然這都歸功於現在的比特幣錢包。

如果再有人抹黑比特幣,拿賬戶和餘額說事兒,你就可以站出來告訴他,哪有什麼比特幣,只有UTXO

賬戶是賬戶、餘額是餘額、地址是地址、UTXOUTXO,他們不一樣、不一樣……

免責聲明:

  1. 本文版權歸原作者所有,僅代表作者本人觀點,不代表鏈報觀點或立場。
  2. 如發現文章、圖片等侵權行爲,侵權責任將由作者本人承擔。
  3. 鏈報僅提供相關項目信息,不構成任何投資建議

推荐阅读

;