解析RGB協議的設計與特點 以及面對的安全挑战

2023-11-24 12:11:07

2023年下半年,各類 BTC 衍生協議的生態迅速發展。除了 Ordinals 協議與 BRC20 的再度爆火,Atomicals、Taproot Assets 等協議也受到了市場的廣泛關注。

此前,Beosin 已為大家分析了幾類 BTC 衍生協議的風險:《BTC生態爆火,解析其各類衍生協議的潛在機遇與風險》。 本文 Beosin 將為大家詳細講解 BTC 生態非常重要的一類資產發行協議—— RGB 協議。

一、RGB 協議發展

RGB協議的作用是在閃電網絡上為比特幣增加了智能合約功能,基於零知識證明的狀態通道協議,允許用戶在鏈下進行隱私保護的交易。

RGB不是一個代幣協議,但它具備發行與管理多種高度可擴展、可編程和保密的資產的能力,或可以在金融之外的許多其他行業中發揮重要作用。其協議的發展經歷了多個重要階段,從最初的構想到目前為比特幣和閃電網絡帶來智能合約功能的RGB v0.10版本。

1. 2016年,Giacomo Zucco基於Peter Todd的理念,提出了RGB協議的初步構想。

2. 2017年,BHB Network推出了RGB協議原始版本,得到了Poseidon Group的支持。

3. 2019年,Maxim Orlovsky和Giacomo Zucco成立了LNP/BP標准協會,推動RGB向實際應用發展,Maxim Orlovsky博士开始重新設計RGB協議。

4. 2021年,該協會展示了RGB協議的圖靈完備虛擬機(AluVM),RGB也开始在閃電網絡上運行。

5. 2022年,推出了為Bitcoin和Lightning Network編寫RGB智能合約的新語言Contractum及其新網站。

6. 2023年4月,發布了RGB v0.10版本,為比特幣和閃電網絡帶來完全支持智能合約的功能,標志着RGB協議進入最為重要的發展階段。

二、RGB 協議設計邏輯

RGB協議的核心思想是圍繞着 共識 鏈下數據存儲 構建的。

首先,分布式系統最重要的價值是共識的維護,利用比特共識層只需要保留對账本事件的簡短的加密提交(cryptographic commitments),證明特定數據存在但不透露實際數據內容的技術,通常通過哈希函數實現,僅在鏈上存儲這些提交去保證數據的真實性和完整性,進而減少了鏈上數據的負擔。

RGB設計的账本數據存儲在鏈下,也就是說所有的合約數據和狀態轉換都保留在鏈下,而不是在區塊鏈上 。利用單次使用密封和狀態轉換來追蹤和驗證智能合約的狀態,在不將全部數據存儲在鏈上的情況下,有效地處理和驗證智能合約的狀態和交易。

RGB的基礎層是比特幣區塊鏈,包括Nakamoto PoW共識和交易账本。雖然不需要在鏈上存儲任何數據,但仍需要遵循現有的基礎設施,並利用比特幣交易作為這些承諾的存儲。

2.1 客戶端驗證

RGB智能合約在客戶端驗證模式下,所有數據都將保留在比特幣交易之外,例如比特幣區塊鏈或閃電網絡通道狀態,使該系統能夠在閃電網絡之上運作,也為高級別的協議可擴展性和隱私提供了基礎。

2.2 RGB 智能合約

RGB 智能合約的基本構成包括 Genesis(創世)、State(狀態)和 Transitions(轉換),每部分承擔着不同的功能和角色:

Genesis(創世)

Genesis是智能合約的初始化聲明,它定義了合約的基本屬性和規則。這包括合約的類型、目的和任何初始設置。在代碼中,genesis部分定義了合約的起始點,比如在一個身份驗證合約中,它可以指定初始的身份信息。

State(狀態)

State代表了合約在任何給定時刻的當前狀態,是合約數據的實時快照,包括了所有的變量值和資產信息。

Transitions(轉換)

Transitions是定義從一個狀態到另一個狀態轉換的規則。這些規則決定了狀態如何根據合約邏輯發生變化。op Revocation和op Transfer是轉換的例子,它們定義了如何從一個Identity狀態轉移到另一個,或者如何在代幣之間進行轉移。

通過這三個組成部分提供了一種方式來定義和執行各種操作和協議。Genesis設定了基礎規則和參數,State維護了合約的當前信息,而Transitions則規定了狀態之間的變化邏輯,共同構成了RGB智能合約的核心架構。

2.3 一次性密封(single-use-seals)

為了確保安全和高效地管理資產轉移,同時保護用戶隱私。 RGB協議使用了“single-use-seals”的方法,這種方法允許將資產(如代幣)與比特幣的一個特定交易輸出綁定,使得每次資產轉移都需要“打开”一個舊的密封並“創建”一個新的密封。 一次性封裝用於代表資產的所有權或合約狀態。每次狀態轉移或交易發生時,相關的封裝會被關閉並創建新的封裝,這樣做的好處是,每個密封只能使用一次,從而防止了資產的重復使用或雙重支付,確保了交易的安全性,進而確保資產的轉移不可篡改。

同時,由於這些操作是在客戶端進行的,而不是全部存儲在區塊鏈上,因此大大增強了用戶的隱私保護,並減少了對區塊鏈空間的佔用,提高了整體網絡的效率和可擴展性。

single-use-seals的邏輯步驟:

1.  每個RGB合約的开始都是一個創世操作,這裏會定義初始狀態和相關的一次性封裝,代表了合約中定義的資產或權限的初始分配。

2.  在合約中,狀態(State)被用來表示當前資產或權限的配置。每個狀態都與一個一次性封裝相關聯,表示當前的所有權或權限。

3.  當需要轉移或改變資產或權限時,涉及到狀態的轉換(Transitions)。這個過程包括關閉當前的一次性封裝(表示舊的狀態)並創建一個新的封裝(代表新的狀態)。

4.  關閉一個封裝涉及到驗證其完整性並標記為已使用,以防止重復使用。然後,基於合約規則創建一個新的封裝,以代表新的狀態。

5.  交易發生時,合約參與者需要驗證相關的一次性封裝是否有效,以確保交易的合法性。這個驗證過程是自動的,由RGB節點和參與的錢包協作完成。

三、RGB 協議的特性

RGB的特性體現在RGB智能合約的創新,下面為大家介紹一些關鍵點:

1. 模式(Schema)概念

RGB協議採用了模式(Schema)的概念, 類似於面向對象編程中的類。模式用於定義RGB資產的標准 ,便於錢包、交易所、瀏覽器和BTC節點支持RGB資產。在這個框架中,一個具體的RGB合約是某個模式的實例,由該模式的構造函數(“創世操作”)創建。這種方法分離了合約开發者(模式开發者)和合約發行者的角色,使得後者無需具備編程或安全知識。

2. AluVM虛擬機

RGB協議還引入了AluVM虛擬機,這是一個圖靈完備的虛擬機,類似於以太坊的EVM。它可以執行幾乎所有類型的計算,但受到操作步驟數的限制。AluVM通過累積的計算復雜性度量來限制計算,類似於以太坊的gas消耗機制。

3. 合約定義示例

在合約定義方面,RGB協議使用特定的數據類型,如PgpKey,這些類型不是合約的直接組成部分,而是可以被多個合約共享。合約的狀態和操作,如Identity和Revocation,被定義為合約狀態的組成部分和可能的狀態轉換。

4. 合約實例和狀態轉換

合約實例化是通過將模式應用於具體情況來完成的,例如,meSatoshiNakamoto實現了DecentralizedIdentity模式,定義了初始狀態並將其分配給一次性密封。狀態轉換,如通過Revocation操作,涉及更新身份並將其分配給新的一次性密封。

5. 擴展合約功能

RGB協議允許擴展合約功能,如添加IOU(I OWE YOU)代幣,在合約中表現為可擁有的狀態IOYTokens。此外,還有全局狀態,如IOYTicker和IOYName,這些是合約的全局屬性,不被任何一方直接擁有。

6. 狀態擴展的概念

狀態擴展的概念允許公衆參與合約的特定邏輯部分,如通過聲明Burn的方式。狀態擴展操作允許任何人在不進行鏈上承諾的情況下創建狀態擴展,類似於未打包進區塊的比特幣交易。

7. 合約接口(Contract Interface)

標准化通信:合約接口提供了與RGB節點交流的標准方式,要求它返回有語義意義的狀態並創建操作。

類似於以太坊的ERC標准:這些接口類似於以太坊的ERC標准,通用的接口被稱為"RGBxx",作為獨立的LNP/BP標准定義。

8. 創建通用代幣接口示例

接口定義: 定義了全局狀態(如Ticker和Name)和擁有的狀態(如Inflation和Asset),以及操作(如Issue和Transfer)。

接口實現:實現接口時,將特定模式的狀態和操作與接口綁定。例如,FungibleToken接口為DecentralizedIdentity模式實現了全局和擁有的狀態綁定。

四、RGB 協議應用

金融方面的應用:

1.  用於創建代表公司或項目股份的通證,集中發行但通過去中心化的方式交易,提高市場流動性和透明度。

2.  管理貸款和債券,通過智能合約實現自動化的貸款和債券發行和還款。

3.  創建運行在閃電網絡上的穩定幣,並將這些穩定幣可以作為支付手段。

4.  創建去中心化交易所(DEX)。

5.  應用例如算法過度抵押的穩定幣等AMM解決方案,為市場提供流動性和穩定性。

非金融領域的應用:

1.  用於管理自主身份解決方案,使個人能夠控制和管理他們的數字身份信息。

2.  創建一個去中心化的全球名稱注冊系統,以便人們能夠注冊和管理域名和其他網絡標識符。

3.  管理數字內容的所有權和許可權,包括版權和許可證。

4.  用於通證化藝術品,為藝術家和收藏家提供了一種新的數字所有權和交易平臺。

5.  管理DAOs,以實現去中心化的決策和治理。

6.  用於創建可證明和可驗證的審計日志系統,以提高企業和項目的透明度和可信度。

五、當前 RGB 協議的風險

1.  不穩定性

當前的RGB協議是首個完全支持智能合約的版本, 後續RGB協議可能會進行一些重大的更新或者修改, 這會導致目前开發的合約無法在後續版本安全、穩定地運行。RGB的客戶端驗證節點也仍在更新中,還未有穩定的版本。

2.  復雜性

RGB協議的設計和實現都相當復雜, 基於RGB協議开發的智能合約需要考慮很多RGB協議的特性 。例如,基於RGB協議發行的代幣,如果交易失敗或是沒有得到RGB節點的確認,那么這些代幣不屬於任何UTXO,相當於被銷毀了,开發者和項目方需要仔細考慮這類情況對於項目代幣經濟的影響。

總結

RGB協議目前仍處於非常早期的階段。RGB協議通過其 獨特的模式定義、AluVM虛擬機、靈活的合約狀態管理和擴展機制 ,展現了其在BTC智能合約領域的創新,支持在比特幣網絡和閃電網絡上進行多種資產的發行和轉移。但 目前RGB協議與閃電網絡還未完全兼容,智能合約的开發和運行未有安全保障,用戶使用RGB協議時需留意風險。

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播信息之目的,不構成任何投資建議,如有侵權行為,請第一時間聯絡我們修改或刪除,多謝。

推薦文章

Uniswap公告Unichain主網明年初上線!首測路線圖兩功能,UNI強彈17%

去 中心化交易所(DEX)龍頭 Uniswap 於 10 月宣佈推出專為 DeFi 設計的 Lay...

DaFi Weaver
7 18小時前

下周必關注|LayerZero決定是否开啓“費用开關”;Aligned空投注冊結束(12.23-12.29)

下周重點預告 12 月 23 日 Aligned 將向 891322 個地址空投 26% 的 AL...

星球日報
8 18小時前

一周代幣解鎖:下周無高比例或金額重大的代幣解鎖

下周,共有 8 個項目解鎖,其中沒有重大解鎖,MOCA 解鎖流通量的 2.9% 。 Metars...

星球日報
7 18小時前

空投周報 | OpenSea基金會官推上线;Azuki、Doodles疑似即將發幣(12.16-12.22)

@OdailyChina @web3_golem Odaily星球日報盤點了 12 月 16 日至...

星球日報
8 18小時前

區塊鏈的達摩克裏斯之劍:一文讀懂谷歌新量子芯片對區塊鏈的影響

前言:谷歌推出了量子芯片 Willow 可以在 5 分鐘之內便完成了當今最快的超級計算機都需要 1...

星球日報
8 18小時前

資金費率的演變:從2021年黃金時代,到2024-2025年套利復興

資金費率起源 資金費率起源於加密貨幣衍生品市場,特別是從永續期貨合約中發展而來。它作為一種機制,用...

Block Beats
9 1天前