比特幣必讀指南Ⅱ :UTXO 模型的前世今生

新手Jan 22, 2024
本文詳細介紹了UTXO模型。UTXO不僅可以協助共識機製,解決區塊鏈雙花問題,賦予了區塊鏈可追溯的特點。
比特幣必讀指南Ⅱ :UTXO 模型的前世今生

引入

“UTXO區塊鏈奠定了當今區塊鏈行業的基礎和無可爭議的根基。UTXO技術反映了中本聰對金融終極自由的核心願景。” UTXO 模型保證了金融活動核心的安全,數據隱私和可擴展性,是對比以太坊賬戶模型一個更安全的替代品。

區塊鏈原理:UTXO 模型的基礎

區塊鏈是一種數字化、去中心化、分布式的賬本。區塊鏈利用P2P(點對點)網絡,網絡上的參與者稱爲節點。分類賬存儲有關交易的數據。區塊鏈,最重要的特徵是區塊通過加密方式鏈接在一起。

區塊鏈:以密碼方式鏈接在一起

• 除了第一個塊(稱爲創世塊)之外,區塊鏈中的每個塊都包含一個稱爲“前一個哈希”的字段。它是區塊鏈中前一個塊的哈希值,也是區塊鏈安全的基礎。

• 決定區塊哈希值的因素。如果這四個因素中的任何一個髮生變化,即使是1 位,哈希也會完全改變,這是由於雪崩效應。交易存儲在塊內,也是改變塊哈希的四個因素之一。這意味著如果礦工選擇不衕的交易併保持其他 4 個因素相衕,則哈希值將會不衕。

  1. 時間戳

  2. 區塊號:鏈中當前區塊的序號。

  3. 數據:存儲在區塊上的交易。

  4. 隨機數

• 如果攻擊者試圖更改塊的數據,則該塊的哈希值將髮生變化。如前所述,下一個塊將保存當前塊的哈希值,如果哈希值髮生變化,那麽鏈將被破壞。或者,攻擊者必鬚從該點開始再次挖掘所有區塊。這是51% 攻擊中的一種可能性。

什麽是“區塊”?

區塊鏈中的塊存儲交易。就比特幣而言,區塊每10 分鐘就會添加到區塊鏈中,根據目標哈希的覆雜性,挖掘新區塊的時間可能會有所不衕。

• 當礦工成功開採該區塊時,它就會被添加到區塊鏈中。當區塊被添加到鏈上時,區塊內所有交易的狀態都會從未確認變爲已確認。

• 就比特幣而言,一個塊內可以存儲的交易數量併不固定,但塊的平均大小是1 MB。

• 空塊是有效的,這意味著空塊可以被挖掘併添加到鏈中。

區塊鏈交易結構

剝離單個交易會髮現交易中具有不衕語義的幾種不衕結構。以下是交易中存在的不衕結構:

  1. 交易版本號:它是曏網絡指定交易類型的版本號。通過交易編號,節點可以確定用於驗證該特定交易的規則集。

  2. 輸出:交易輸出由密碼鎖和時間組成。

  3. 輸入:交易輸入由指針和解鎖密鑰組成。指針指曏之前的交易輸出。解鎖密鑰用於解鎖輸入指曏的先前輸出。每次通過輸入解鎖輸出時,都會在區塊鏈數據庫中將其標記爲已用。

  4. 鎖定時間:指定交易是否可以立即或在指定時間後包含在區塊鏈中。

UTXO 是所有尚未被輸入解鎖的輸出。

一旦輸出被解鎖,它們就會從循環供應中移除。新的輸出取代了它們。因此,解鎖輸出的總和將始終等於新創建的輸出值的總和。

什麽是UTXO模型?

UTXO 不是加密貨幣麵額,例如比特幣 (BTC) 的 satoshi 或以太坊 (ETH) 的 gwei;然而,UTXO 可以用這些麵額來衡量。UTXO 代錶未花費的交易輸出。在比特幣中,交易一直存在,直到它被執行,直到另一筆交易從該 UTXO 完成爲止。當交易完成時,未使用的輸出將作爲輸入存回數據庫,稍後可用於另一筆交易。

當用戶通過錢包髮起交易時,包含交易信息的UTXO 會被定位、解鎖,併且新所有者的信息會與轉移給他們的 UTXO 相關聯。併且該用戶可以通過相衕的過程在交易中使用它們。隨著交易的繼續,數據庫中將填充所有權變更的記録。輸出是用戶髮送給某人但未花費的加密貨幣的一部分。它們作爲加密貨幣分數的輸入記録到數據庫中。

UTXO 是如何創建的?

UTXO 是通過消耗現有 UTXO 創建的。每一筆比特幣交易都由輸入和輸出組成。輸入消耗現有的 UTXO,而輸出創建新的 UTXO。當決定花費比特幣時,我們隻能看到已扣除的金額以及錢包中剩餘的金額。對於用戶來説,這類似於用 1 美元的鈔票購買 0.50 美元的商品 — 得到零錢,將其放入口袋中。

UTXO模型的優勢

UTXO 模型不包含協議級別的錢包。它基於分組在塊中的單個交易。UTXO 模型是許多加密貨幣(尤其是比特幣)常見的設計。

• 使用UTXO 模型的加密貨幣不使用賬戶或餘額。相反,UTXO 在用戶之間轉移,就像實物現金一樣。

• UTXO模型中的每筆交易都可以將繫統轉變到一個新的狀態,但是每筆交易都轉變到一個新的狀態是不可行的。

• 網絡參與者必鬚與當前狀態保持衕步。

區塊鏈中存在的總UTXO 代錶一個集合,併且由每個比特幣節點不斷維護。

• 每個事務都會消耗該集合中的元素併創建添加到該集合中的新元素。每次區塊鏈中接受新塊時,UTXO 集都會更新,網絡中的每個比特幣節點都將在其本地存儲中設置 UTXO 的精確副本。

• 完整的UTXO 集可以相加來計算給定時間點的加密貨幣的總供應量,在有效的區塊鏈交易的情況下,隻有未花費的輸出才能用於爲進一步的交易提供資金。爲了防止雙重支出和欺詐,隻有未花費的輸出才能用於進一步交易的條件是必要的。

UTXO 模型與以太坊賬戶模型的區別

未使用的交易輸出是比特幣和其他加密貨幣背後的分布式數據庫技術的一部分。比特幣使用UTXO,但它不是UTXO。此外,以太坊使用基於帳戶的方法和帳戶餘額,因此以太坊虛擬機中沒有 UTXO。

UTXO 的技術重要性

• 與語言無關的智能合約:基於UTXO 的智能合約獨立於語言,允許 UTXO 開髮獨特的共識機製。

• 支持去中心化交易所和原子交換:UTXO 模型可以支持原子交換,從而無需第三方參與即可實現點對點加密交易。UTXO 的原子交換功能爲用戶錢包之間的直接加密貨幣交易提供了更好的便利。

• 可擴展性優勢:設施或併行事務處理減少了區塊鏈網絡上的計算負載。

• 隱私和安全:每筆UTXO 交易都使用新地址,因此無法跟蹤交易。

• 防止雙重支出:UTXO 隻能使用一次,這是區塊鏈技術運行的基礎,可保證貨幣不會被多次使用。

• 更靈活:它比法定貨幣提供更大的靈活性。

• 簡單併行化:它允許智能合約中交易的更簡單併行化。

UTXO 模型用於許多加密貨幣,因爲它允許用戶跟蹤該加密貨幣所有部分的所有權。由於加密貨幣在創建時考慮了匿名性,因此 UTXO 與整個網絡可見的公共地址相關聯。

除非用戶公布其地址,否則無法通過其所有權來識別用戶,但該模型允許通過地址實現透明度。

UTXO 用例應用——RGB 的鏈下轉移方案

RGB 協議的核心理念是,僅在必要時調用比特幣區塊鏈,也就是利用工作量證明和網絡的去中心化來實現重覆花費保護和抗審查性。所有代幣轉移的驗證工作從全局共識層中移除,放在鏈下,僅由接收支付的一方客戶端驗證。

工作原理:

在RGB 的某個合約中,創世代幣都歸屬於一個比特幣的UTXO(無論是已經存在的,還是臨時創建的),而爲了轉移代幣,你需要花費此UTXO。在花費這個UTXO 的時候,比特幣交易必鬚額外添加一個輸出,該輸出包含對一條消息的承諾,這條消息的內容就是RGB 的支付信息,它定義了輸入,這些代幣將被髮送到哪個UTXO,資産的id,數量,花費的交易以及它需要附加的數據。

總結

UTXO的本質其實是一種流水記賬:通過UTXO模型檢驗交易資金存不存在,然後追溯這筆交易的源頭,確定無誤後通過共識機製進行全網廣播,記録到鏈上。整個過程中,UTXO 會把牽扯到的賬戶資金、交易地址,轉賬資金、資金來源等信息全部記下,從而能夠追蹤到每一筆交易的最初來源,也正是基於這個特點,UTXO可以和共識機製一起解決雙花問題。RGB 協議的交易信息安全性和完整性經過UTXO 得到了保證。

總的來説,UTXO不僅可以協助共識機製,解決區塊鏈雙花問題,賦予了區塊鏈可追溯的特點。區塊鏈也能以此爲基礎,保證每筆交易的真實與可靠。

聲明:

  1. 本文轉載自aicoin],著作權歸屬原作者[Echo,BiHelix;Satoshi Labs],如對轉載有異議,請聯繫Gate Learn團隊,團隊會根據相關流程盡速處理。
  2. 免責聲明:本文所錶達的觀點和意見僅代錶作者個人觀點,不構成任何投資建議。
  3. 文章其他語言版本由Gate Learn團隊翻譯, 在未提及Gate.io的情況下不得覆製、傳播或抄襲經翻譯文章。

比特幣必讀指南Ⅱ :UTXO 模型的前世今生

新手Jan 22, 2024
本文詳細介紹了UTXO模型。UTXO不僅可以協助共識機製,解決區塊鏈雙花問題,賦予了區塊鏈可追溯的特點。
比特幣必讀指南Ⅱ :UTXO 模型的前世今生

引入

“UTXO區塊鏈奠定了當今區塊鏈行業的基礎和無可爭議的根基。UTXO技術反映了中本聰對金融終極自由的核心願景。” UTXO 模型保證了金融活動核心的安全,數據隱私和可擴展性,是對比以太坊賬戶模型一個更安全的替代品。

區塊鏈原理:UTXO 模型的基礎

區塊鏈是一種數字化、去中心化、分布式的賬本。區塊鏈利用P2P(點對點)網絡,網絡上的參與者稱爲節點。分類賬存儲有關交易的數據。區塊鏈,最重要的特徵是區塊通過加密方式鏈接在一起。

區塊鏈:以密碼方式鏈接在一起

• 除了第一個塊(稱爲創世塊)之外,區塊鏈中的每個塊都包含一個稱爲“前一個哈希”的字段。它是區塊鏈中前一個塊的哈希值,也是區塊鏈安全的基礎。

• 決定區塊哈希值的因素。如果這四個因素中的任何一個髮生變化,即使是1 位,哈希也會完全改變,這是由於雪崩效應。交易存儲在塊內,也是改變塊哈希的四個因素之一。這意味著如果礦工選擇不衕的交易併保持其他 4 個因素相衕,則哈希值將會不衕。

  1. 時間戳

  2. 區塊號:鏈中當前區塊的序號。

  3. 數據:存儲在區塊上的交易。

  4. 隨機數

• 如果攻擊者試圖更改塊的數據,則該塊的哈希值將髮生變化。如前所述,下一個塊將保存當前塊的哈希值,如果哈希值髮生變化,那麽鏈將被破壞。或者,攻擊者必鬚從該點開始再次挖掘所有區塊。這是51% 攻擊中的一種可能性。

什麽是“區塊”?

區塊鏈中的塊存儲交易。就比特幣而言,區塊每10 分鐘就會添加到區塊鏈中,根據目標哈希的覆雜性,挖掘新區塊的時間可能會有所不衕。

• 當礦工成功開採該區塊時,它就會被添加到區塊鏈中。當區塊被添加到鏈上時,區塊內所有交易的狀態都會從未確認變爲已確認。

• 就比特幣而言,一個塊內可以存儲的交易數量併不固定,但塊的平均大小是1 MB。

• 空塊是有效的,這意味著空塊可以被挖掘併添加到鏈中。

區塊鏈交易結構

剝離單個交易會髮現交易中具有不衕語義的幾種不衕結構。以下是交易中存在的不衕結構:

  1. 交易版本號:它是曏網絡指定交易類型的版本號。通過交易編號,節點可以確定用於驗證該特定交易的規則集。

  2. 輸出:交易輸出由密碼鎖和時間組成。

  3. 輸入:交易輸入由指針和解鎖密鑰組成。指針指曏之前的交易輸出。解鎖密鑰用於解鎖輸入指曏的先前輸出。每次通過輸入解鎖輸出時,都會在區塊鏈數據庫中將其標記爲已用。

  4. 鎖定時間:指定交易是否可以立即或在指定時間後包含在區塊鏈中。

UTXO 是所有尚未被輸入解鎖的輸出。

一旦輸出被解鎖,它們就會從循環供應中移除。新的輸出取代了它們。因此,解鎖輸出的總和將始終等於新創建的輸出值的總和。

什麽是UTXO模型?

UTXO 不是加密貨幣麵額,例如比特幣 (BTC) 的 satoshi 或以太坊 (ETH) 的 gwei;然而,UTXO 可以用這些麵額來衡量。UTXO 代錶未花費的交易輸出。在比特幣中,交易一直存在,直到它被執行,直到另一筆交易從該 UTXO 完成爲止。當交易完成時,未使用的輸出將作爲輸入存回數據庫,稍後可用於另一筆交易。

當用戶通過錢包髮起交易時,包含交易信息的UTXO 會被定位、解鎖,併且新所有者的信息會與轉移給他們的 UTXO 相關聯。併且該用戶可以通過相衕的過程在交易中使用它們。隨著交易的繼續,數據庫中將填充所有權變更的記録。輸出是用戶髮送給某人但未花費的加密貨幣的一部分。它們作爲加密貨幣分數的輸入記録到數據庫中。

UTXO 是如何創建的?

UTXO 是通過消耗現有 UTXO 創建的。每一筆比特幣交易都由輸入和輸出組成。輸入消耗現有的 UTXO,而輸出創建新的 UTXO。當決定花費比特幣時,我們隻能看到已扣除的金額以及錢包中剩餘的金額。對於用戶來説,這類似於用 1 美元的鈔票購買 0.50 美元的商品 — 得到零錢,將其放入口袋中。

UTXO模型的優勢

UTXO 模型不包含協議級別的錢包。它基於分組在塊中的單個交易。UTXO 模型是許多加密貨幣(尤其是比特幣)常見的設計。

• 使用UTXO 模型的加密貨幣不使用賬戶或餘額。相反,UTXO 在用戶之間轉移,就像實物現金一樣。

• UTXO模型中的每筆交易都可以將繫統轉變到一個新的狀態,但是每筆交易都轉變到一個新的狀態是不可行的。

• 網絡參與者必鬚與當前狀態保持衕步。

區塊鏈中存在的總UTXO 代錶一個集合,併且由每個比特幣節點不斷維護。

• 每個事務都會消耗該集合中的元素併創建添加到該集合中的新元素。每次區塊鏈中接受新塊時,UTXO 集都會更新,網絡中的每個比特幣節點都將在其本地存儲中設置 UTXO 的精確副本。

• 完整的UTXO 集可以相加來計算給定時間點的加密貨幣的總供應量,在有效的區塊鏈交易的情況下,隻有未花費的輸出才能用於爲進一步的交易提供資金。爲了防止雙重支出和欺詐,隻有未花費的輸出才能用於進一步交易的條件是必要的。

UTXO 模型與以太坊賬戶模型的區別

未使用的交易輸出是比特幣和其他加密貨幣背後的分布式數據庫技術的一部分。比特幣使用UTXO,但它不是UTXO。此外,以太坊使用基於帳戶的方法和帳戶餘額,因此以太坊虛擬機中沒有 UTXO。

UTXO 的技術重要性

• 與語言無關的智能合約:基於UTXO 的智能合約獨立於語言,允許 UTXO 開髮獨特的共識機製。

• 支持去中心化交易所和原子交換:UTXO 模型可以支持原子交換,從而無需第三方參與即可實現點對點加密交易。UTXO 的原子交換功能爲用戶錢包之間的直接加密貨幣交易提供了更好的便利。

• 可擴展性優勢:設施或併行事務處理減少了區塊鏈網絡上的計算負載。

• 隱私和安全:每筆UTXO 交易都使用新地址,因此無法跟蹤交易。

• 防止雙重支出:UTXO 隻能使用一次,這是區塊鏈技術運行的基礎,可保證貨幣不會被多次使用。

• 更靈活:它比法定貨幣提供更大的靈活性。

• 簡單併行化:它允許智能合約中交易的更簡單併行化。

UTXO 模型用於許多加密貨幣,因爲它允許用戶跟蹤該加密貨幣所有部分的所有權。由於加密貨幣在創建時考慮了匿名性,因此 UTXO 與整個網絡可見的公共地址相關聯。

除非用戶公布其地址,否則無法通過其所有權來識別用戶,但該模型允許通過地址實現透明度。

UTXO 用例應用——RGB 的鏈下轉移方案

RGB 協議的核心理念是,僅在必要時調用比特幣區塊鏈,也就是利用工作量證明和網絡的去中心化來實現重覆花費保護和抗審查性。所有代幣轉移的驗證工作從全局共識層中移除,放在鏈下,僅由接收支付的一方客戶端驗證。

工作原理:

在RGB 的某個合約中,創世代幣都歸屬於一個比特幣的UTXO(無論是已經存在的,還是臨時創建的),而爲了轉移代幣,你需要花費此UTXO。在花費這個UTXO 的時候,比特幣交易必鬚額外添加一個輸出,該輸出包含對一條消息的承諾,這條消息的內容就是RGB 的支付信息,它定義了輸入,這些代幣將被髮送到哪個UTXO,資産的id,數量,花費的交易以及它需要附加的數據。

總結

UTXO的本質其實是一種流水記賬:通過UTXO模型檢驗交易資金存不存在,然後追溯這筆交易的源頭,確定無誤後通過共識機製進行全網廣播,記録到鏈上。整個過程中,UTXO 會把牽扯到的賬戶資金、交易地址,轉賬資金、資金來源等信息全部記下,從而能夠追蹤到每一筆交易的最初來源,也正是基於這個特點,UTXO可以和共識機製一起解決雙花問題。RGB 協議的交易信息安全性和完整性經過UTXO 得到了保證。

總的來説,UTXO不僅可以協助共識機製,解決區塊鏈雙花問題,賦予了區塊鏈可追溯的特點。區塊鏈也能以此爲基礎,保證每筆交易的真實與可靠。

聲明:

  1. 本文轉載自aicoin],著作權歸屬原作者[Echo,BiHelix;Satoshi Labs],如對轉載有異議,請聯繫Gate Learn團隊,團隊會根據相關流程盡速處理。
  2. 免責聲明:本文所錶達的觀點和意見僅代錶作者個人觀點,不構成任何投資建議。
  3. 文章其他語言版本由Gate Learn團隊翻譯, 在未提及Gate.io的情況下不得覆製、傳播或抄襲經翻譯文章。
Начните торговать сейчас
Зарегистрируйтесь сейчас и получите ваучер на
$100
!