詳解RGB協議:能否讓BTC資產發行真正實現文藝復興?
深潮TechFlow
2023-05-11 05:30
本文约2949字,阅读全文需要约12分钟
引領BTC 的複興敘事,BRC-20 可能是第一個,但不太會是最後一個。

原文來源:TechFlow Research

原文來源:TechFlow Research

原文作者:0x min & David

Ordinals 和BRC-20 成功刮起“在比特幣上發行資產”的風潮,但顯然它可能並不是最後一個。

如果比特幣上的資產發行成為一種新敘事,那麼在最大程度減輕比特幣主網負擔的前提下,我們是否會有更加可行和友好的方式?

古早的RGB,關注BTC 資產發行

一級標題

古早的RGB,關注BTC 資產發行

在比特幣網絡上發行資產這件事,實際上很早就有人動了念頭。

RGB 協議的起源可以追溯到2018 年,當時Giacomo Zucco、Peter Todd 和Alekos Filini 等比特幣社區成員開始探討一種在比特幣網絡上創建和管理資產的新方法。他們的目標是設計一個既能利用比特幣的安全性和去中心化特性,又能支持更複雜的功能(如資產發行和智能合約)的協議。

為了實現這一目標,他們開始研究如何將資產和狀態信息與比特幣的UTXO 模型相結合,並提出了一種名為RGB 的新協議。其核心思想是將資產發行、所有權和狀態更新通過客戶端驗證與比特幣的UTXO 模型結合起來,而不是像現在的BRC-20 這樣依賴比特幣網絡的完整節點。

至於為什麼叫”RGB“,你很容易聯想到三原色中的紅綠藍。實際上RGB 協議一開始的研究方向是”染色幣“,故用了與顏色相關的概念。雖然目前RGB 協議做的事情和染色幣關係不大,但名字卻保留了下來。

在其Github 的目錄中可以看到,RGB 的解釋是為比特幣和閃電網絡提供可擴展的私人智能合約,為在比特幣網絡中發行資產創造了可能。

Matt 在RGB 網絡上發行了100 個$MATT 幣給自己;

一級標題

以UTXO, 綁定資產狀態

RGB 協議的實現其實並不難理解, 核心在於比特幣本身的記賬方式——UTXO。

篇幅所限,筆者並不打算科普UTXO 的概念,只簡要對其做出一個定義:不記錄比特幣交易的最終狀態,而只是記錄交易事件和過程。

  • 一個簡單的例子:A 有10 個比特幣,發給了B 5 個,自己還剩5 個。用UTXO 簡單的描述如下:

  • UTXO 1: A 有10 個BTC

  • UTXO 2: A 還剩5 個BTC

UTXO 3 :B 多了5 個BTC

可以看出,UTXO 是在記錄比特幣鏈上的交易狀態變化,交易完成後A 還剩5 個BTC,和先前有10 個BTC 的狀態不一樣。相應的,UTXO 1 實際上被拆成了2 個新狀態:找零給自己5 個(UTXO 2),轉給他人5 個(UTXO 3)。

了解這個原理後,RGB 實際上就是將鏈下的資產發行,與鏈上的UTXO 變更做一個綁定:

既然UTXO 可以對比特幣在某個時間點的交易事件做出確認,那麼我們就可以讓這種交易事件的變化,來對應某個其他事情狀態的改變;

比如我在另一個地方發行了一個資產,對應到比特幣網絡上的UTXO 1 。如果我將這個資產轉移給了他人,那麼可以將這個”轉移“行為對應到比特幣網絡上的UTXO 2....

因為UTXO 本身是固定且被共識的,只要我能證明這種綁定是可靠的,那麼比特幣主網上UTXO 的變更,所對應其他資產狀態的變更也應該被共識。

更進一步而言,RGB 協議的做法是在利用比特幣主網UTXO 的安全性,為其鏈下的資產發行或合約邏輯的安全性背書。@trustmachinesco如果覺得很難理解,不妨看看推特用戶

  • 給出的一個例子:

  • Matt 在RGB 網絡上發行了100 個$MATT 幣給自己;

  • 在比特幣網絡上,Matt 發幣這件事對應著他目前持有比特幣的UTXO A;

  • Matt 轉了50 個$MATT 幣給Pam;

  • 在比特幣網絡上,Matt 轉幣這件事對應著一個新的UTXO B,同時第2 步中的UTXO A 被銷毀;

  • 在比特幣網絡上,Pam 得幣這件事對應著一個新的UTXO C,表示著Pam 當前目前持有比特幣UTXO;

同理,當Pam 轉幣時,他原有的UTXO C 也會被銷毀,進而形成一個新的UTXO D....

一級標題

一級標題

一次性印章與承諾

  • 以上是RGB 實現的一個非常簡單的技術細節。而實際上要保證RGB 在鏈下發行的資產確實能和鏈上的UTXO 對上,還需要配合一些其他的技術來實現。

Client-side validation(客戶端驗證):

  • 在RGB 協議中,交易驗證和數據存儲在客戶端(如錢包軟件)完成,而不是在區塊鏈上。這使得交易數據不在鏈上公開,從而提高了隱私性。客戶端驗證還可以降低鏈上數據存儲需求,提高網絡的可擴展性。

為了將客戶端驗證和比特幣網絡連接起來,RGB 協議使用了錨定技術。錨定是將一次性印章和承諾結合在一起的過程。在資產被轉移時,新的一次性印章、承諾和交易數據被錨定到比特幣網絡上,確保整個系統的安全性和一致性。

  • Single-Use-Seals(一次性印章):

  • 一種確保資產所有權不被篡改的技術。一次性印章是一個加密簽名,用於鎖定資產的狀態。當資產被轉移時,舊的印章被破壞,新的印章被創建。這樣,任何試圖篡改資產所有權的行為都會被發現,因為印章的狀態不匹配。

這也對應著上一節所描述的UTXO 的銷毀和生成。舊印章代表著舊的UTXO,新印章指向新的UTXO。

  • Commitments(承諾):

  • 為了將資產與比特幣網絡關聯起來,RGB 協議使用了一種稱為承諾的技術。承諾是一種加密證明,證明某個資產與一個特定的比特幣交易關聯。承諾嵌入到比特幣交易的輸出(UTXO)中,這使得資產可以在比特幣網絡上進行轉移。

  • Anchoring(錨定):

  • 為了將客戶端驗證和比特幣網絡連接起來,RGB 協議使用了錨定技術。錨定是將一次性印章和承諾結合在一起的過程。在資產被轉移時,新的一次性印章、承諾和交易數據被錨定到比特幣網絡上,確保整個系統的安全性和一致性。

在此,筆者給出一個更加符合實際情況的RGB 協議工作流程:

資產發行者在客戶端創建一個新的資產,並生成一個一次性印章和承諾。

資產發行者將新資產錨定到比特幣網絡上,將承諾嵌入到比特幣交易的輸出(UTXO)中。

資產轉移時,舊的一次性印章被破壞,新的一次性印章、承諾和交易數據被錨定到比特幣網絡上。

通過這種方式,RGB 協議實現了在比特幣網絡上進行資產發行、轉移和驗證的功能,同時保持了隱私性、可擴展性和去中心化的特點。

一級標題

一級標題

未來

未來

RGB 從沉寂許久到又被挖出,實際上靠的還是BRC-20 發行資產的這陣風。

深潮TechFlow
作者文库