RGB能否復刻Ordinals的熱潮?

作者:Jerry Luo;Kernel Ventures

TL;DR

現今的比特幣網路上存在著多種智慧合約方案,其中最為主流的便是Ordinals 協定與RGB 協定。

  • Ordinals 協議的誕生,使得比特幣網路也可以實現智慧合約開發,並將其安全性與比特幣區塊鏈進行了綁定。但Ordinals 資產轉帳的確認和記錄均在比特幣主網上進行,與1 個sats 的轉帳相綁定。這帶來了高昂的手續費,同時也讓TPS 低下的比特幣主網更加擁擠。

  • 在RGB 協議中,提出了鏈下通道以及批量打包交易的方式,這些方式使得RGB 中資產轉移的手續費大幅下降,速度也得到提升。同時,客戶端驗證的方式也大幅減少了維持網路正常運作所需記錄的資料量,進而提升了網路可拓展性。

  • 但是RGB 在對Ordinals 做出改進的同時也帶來了許多新的問題。鏈下通道在優化交易費用和速度的同時帶來了鏈下記錄的安全問題。客戶端驗證減小記錄資料量的同時也大大拖慢了驗證速度。

本文從安全性、可擴展性、交易費、交易速度等維度比較了Ordinals 與RGB 協議,並分析了RGB 敘事未來可能的走向。

1. 市場總覽

目前BTC 佔整個加密市場市值的49% 左右,但由於其腳本語言不具備圖靈完備性,主網智能合約缺失且交易速度較慢,其長遠發展受到嚴重阻礙。為了對上述問題做出改進,比特幣開發者在擴容和提速方面做出了大量嘗試,主要為以下4 個解決方案:

  • RGB 協議:RGB 是建立在比特幣網路上的二層協議,其核心交易資料儲存在BTC 主網上。 RGB 利用比特幣的安全模型,支援在比特幣網路上創建具有客製化屬性和智慧合約功能的代幣。 2016 年,RGB 協議最初由Peter Todd 提出;2023 年,在比特幣上智能合約生態的開發熱潮中,RGB 協議再次受到關注。

  • 隔離見證:2017 年8 月,比特幣實施隔離見證(SegWit)升級。透過交易資訊與簽名資訊的分離,將有效區塊大小從1M 提升到了4M,一定程度緩解了擁塞問題。但受到比特幣區塊本身大小的限制,我們無法對一個區塊的儲存資訊無限擴容。因而透過對區塊儲存資訊擴充提高效率的方式便到此為止了。

  • 閃電網路:閃電網路是基於比特幣的二層擴容方案,允許在不存取區塊鏈的情況進行下交易,大大提高了吞吐量。閃電網路已在比特幣主網上實現,現有的閃電網路解決方案有OmniBOLT,Stacks 等,但閃電網路面臨較大的中心化風險。

  • 側鏈技術:側鏈技術是在比特幣網路之外搭建一條側鏈,側鏈上的資產以1:1 與BTC 錨定。側鏈在交易性能上相對主網有較大改進,但永遠無法達到BTC 主網的安全性。

今年3 月以來,比特幣網路的交易費用及BRC20 協議資產的交易量都迎來激增。 5 月初BTC 主網交易費到達頂峰,雖然此後交易費用下滑,但BRC20 資產的交易量仍維持在較高水準。這表示比特幣網路智慧合約生態的開發熱度,並沒有伴隨BTC 生態中銘文熱度的下降而低迷,開發者們仍繼續嘗試尋找適合比特幣網路智慧合約開發的最優解。

2. Ordinals 協議

2.1 Satoshi 編號

比特幣網路上的Satoshi 不同於以太坊上的wei 以資料的形式記載,它透過每個地址所擁有的UTXO 計算得來。為了對不同的sats 進行區分,首先要區分不同的UTXO ,然後區分同一UTXO 下的sats 。前者相對簡單,不同UTXO 被挖出的區塊不同,會對應不同的區塊高度。只有挖礦會產生最初的sats,因而僅需對coinbase 交易中的UTXO 編號即可。難點主要在如何對同一UTXO 下的sats 進行編號。 Ordinals 協議提出了新的解決方案,即根據先入先出的原則進行編號。

  • 不同UTXO 的區分:BTC Builder 從UTXO 被挖出的時候開始記錄,每個UTXO 對應著唯一的區塊,而每個區塊在比特幣網路上擁有唯一的區塊高度,透過不同的區塊高度可以對不同的UTXO 進行區分。

  • 同一UTXO 下sats 的區分:先透過區塊高度可以確定出UTXO 下sats 的大致範圍,例如最早一個區塊可以挖出100 個BTC ,也就是$\(10^{10}\)\( 個sats ,那麼對應區塊高度為0 的區塊中,sats 編號為\[0,\)\(10^{10}\)\(\-1\] ,區塊高度為1 的區塊中sats 編號為\[\)\(10^{10}\)\(,\)\(2*10^{10}\)\(\-1\] ,區塊高度為2 的區塊中sats 編號為\[\)\(2*10^{10}\)\(,\)\(3*10^{10}\)\(\-1\],後續依此類推。如果要對該UTXO 下的某一特定sats 進行具體區分,則要透過UTXO 的消耗過程實現。 Ordinals 協議按照先入先出的原則,在該筆UTXO 作為輸入產生的輸出中,靠前的輸出對應等量序號靠前的sats,比如現在挖出區塊高度為2 的礦工A 要將自己這100個BTC 中的50 個轉移給B,其中靠前的輸出分配給了A,而自己獲得的是靠後的輸出,那麼A 將得到編號為\[\)\(2*10^{10}\)\(,\)\(2.5*10^{10}\)\(\-1\] 的sats ,B 所得到的則是序號為 \[\)\(2.5*10^{10}\)\(,\)\(3*10^{10}\)$-1] 的sats 。

Satoshi 編號,來源: Kernel Ventures

2.2 Ordinals inscription

比特幣網路最早透過加入OP_RETURN 操作符為每筆交易提供了一個80 位元組大小的儲存空間。但是80 位元組的區域無法滿足複雜程式碼邏輯的編寫,而且資料寫入區塊鏈也會提高交易成本,增加網路堵塞的可能性。為了解決這個問題,比特幣網路先後進行了SegWit 與Taproot 兩層軟分叉。透過一份由OP_FALSE 操作碼開頭且不會執行的Tapscript 腳本,比特幣交易過程提供了一個4M 大小的空間。在這個區域我們可以寫入ordinals 銘文,實現文字、圖片上鍊或BRC20 協議token 發放等等。

2.3 Ordinals 的不足

Ordinals 大大提高了比特幣網路的可編程性,打破了BTC 生態敘事和發展受到的限制,提供給比特幣網路交易以外的功能,但其中許多問題仍然受BTC 生態開發者們的詬病。

  1. Ordinals 的中心化性:雖然ordinals 協定中對於狀態的記錄和變更都在鏈上進行,但ordinals 協定本身的安全性是無法和比特幣網路掛等號的。 ordinals 無法防止銘文的重複上鍊,對無效銘文的識別需要由鏈外的ordinals 協議進行。這項新興協議未經長時間的測試,存在許多潛在問題。同時如果ordinals 協議的底層服務出現問題,也可能導致用戶資產的損失。

  2. 交易費用與交易速度的限制:因為銘文的篆刻是透過隔離驗證區進行的,也就是說完成一次ordinals 資產的轉移必須對應一筆UTXO 花費。限於比特幣網路10 分鐘上下的出塊速度,交易過程無法加速。同時,銘文的上鍊也會帶來交易成本的增加。

  3. 損害比特幣原有屬性:由於ordinals 上的資產與比特幣網路本身有價值的sats 進行綁定,所以ordinals 的使用本身就會造成對比特幣原有資產的異化,同時銘文的上鍊又帶來了礦工費的激增。許多BTC 支持者擔心,這會損害比特幣原有的支付功能。

3. RGB 協定

在網路交易量激增的情況下,ordinals 協議的缺陷便凸顯了出來。長期來說,如果不能妥當解決這個問題,比特幣的智能合約生態難以和具有圖靈完備性的公鏈生態進行競爭。在ordinals 的許多替代方案中,許多開發者選擇了RGB 協議,它在可拓展性、交易速度和隱私性等方面較ordinals 均做出了較大突破。理想情況下,基於RGB 協議構建的比特幣生態資產在交易速度和可拓展性方面,可以和圖靈完備性公鏈上的資產達到相近水準。

3.1 RGB 核心技術

客戶端驗證

不同於比特幣主網中對交易資料的廣播,RGB 協定將此過程放在了鏈下,訊息僅在發送者和接收者間傳輸。接收者對此交易進行驗證後,不需要像比特幣主網一樣實現全網節點的同步,記錄網路中所有的交易資料。接收節點只需記載和該筆交易相關的數據,已達到上鍊驗證的需求即可,這項改進大大提高了網路的可拓展性與隱私性。

客戶端驗證,來源: Kernel Ventures

免一次密封條

在實際生活的材料上交過程中,材料往往要經過多次的轉手,這對材料的真實性和完整性都構成極大威脅。現實生活中為了防止材料在提交驗證前受到惡意篡改,人們採用了添加封條的方法,透過封條的完整性判斷裡面的內容是否被篡改。 RGB 網路中一次性密封條的作用與此類似,其具體體現是比特幣網路中天然具有一次性屬性的電子封條- UTXO。

類似以太坊上的智慧合約,RGB 協定下發行Token 也要指定發幣的名稱和總量。不同之處在於RGB 網路並不存在一條特定的公鏈作為載體,RGB 中的每一個Token 必須指定比特幣網路上某個特定的UTXO 與之對應。某人擁有了比特幣網路中的某個UTXO,也就擁有了RGB 協定中所記錄的該UTXO 對應的RGB Token 。如果想完成對RGB token 的轉移,持有人就需要花費該UTXO 。由於UTXO 的一次性,一旦花費就沒有了,在RGB 協定中對應的就是花費了這筆RGB 資產。這花費UTXO 的過程就是將一次性封條打開的過程。

一次性密封,來源: Kernel Ventures

UTXO 盲化

在比特幣網路中,每一筆轉帳都可以找到對應的輸入UTXO 與輸出UTXO。這提高了比特幣網路上UTXO 溯源的效率同時有效防止了雙花攻擊,但由於交易過程完全透明,雙方的隱私性便無法得到顧及。為了提高交易隱私性,RGB 協定中提出了盲源UTXO 的方案。

在RGB Token 的轉移過程中,Token 的發送方A 將無法得到接收UTXO 的具體位址,而只能得到一個接收UTXO 位址接上一段隨機密碼值後Hash 的結果。而接收方B 要對接收到的RGB 協定Token 進行使用時,則不僅需要告知接收者C 其UTXO 對應的位址,還要傳送給接收者C 其對應密碼值,以向接收者C 驗證,之前A確實是將RGB 協定Token 發送到了B 手上。

UTXO 盲化,來源: Kernel Ventures

3.2 RGB 與Ordinals 對比

  1. 安全性:Ordinals 智能合約的每筆交易或狀態轉移均需要透過一筆UTXO 花費實現,而在RGB 中這一過程大量借助閃電網絡或是鏈下RGB 通道實現。 RGB 交易過程中大量的資料儲存在了RGB 用戶端(客戶本地快取或雲端伺服器),這個過程存在高度中心化性,資料有被中心化機構利用的可能。同時一旦伺服器宕機或本地快取遺失將對客戶資產造成損失。從安全性方面來講,Ordinals 更有優勢。

  2. 驗證速度:由於RGB 採用客戶端驗證,所以每驗證一筆交易,在RGB 協議中都需要從頭開始,這將花費大量時間對交易過程中的每一步RGB 資產轉移進行確定,這大大延緩了驗證速度。因此驗證速度上Ordinals 更有優勢。

  3. 隱私性:RGB 資產的轉移和交易驗證過程均在區塊鏈之外進行,建立了一個發送者和接收者之間的特有通道。同時也以盲化UTXO 的形式使得即便發送者也無法對UTXO 的去向進行追溯。而ordinals 資產的轉移過程則是透過比特幣上的UTXO 花費記錄,UTXO 的輸入者和輸出者都可以在比特幣網路上進行查詢,無隱私性可言。故而隱私性角度RGB 協定更有優勢。

  4. 交易費用:RGB 中的轉帳大量借助客戶端的RGB 通道或閃電網路進行,此流程幾乎0 交易費用。無論中間有多少筆交易,最終只需要提交到區塊鏈上使用花費一個UTXO 進行確定。但是ordinals 的每一步轉帳都需要在tapscript 腳本中進行記錄,加上記錄銘文的成本,交易過程中將產生一筆不小的手續費。同時RGB 協議提出了批量打包交易的方法,在一個tapscript 腳本中可以指定RGB 資產的多個接收者,而ordinals 中默認輸出UTXO 的接收者為ordinals 資產的接收者,只能一對一轉賬,而RGB 透過分攤的方式大大降低了這個過程的成本。因此交易費用上RGB 協議更有優勢。

  5. 可拓展性:在RGB 的智慧合約中,交易驗證和資料儲存是由客戶端(接收節點)完成的,不在BTC 鏈上進行,不需要在主網上進行廣播和和全局驗證,每個節點只需保證對於某筆交易有關數據的確認。而ordinals 中的銘文資料都需要進行上鍊操作,鑑於比特幣網路本身的處理速度和可拓展性,對於交易量的承受能力將受到極大限制。因而在可拓展性上RGB 協定更有優勢。

4. RGB 生態項目

RGB v0.10.0 版本發布後,為開發者在RGB 網路上的開發提供了一個相對先前版本更友善的環境。因此RGB 協定生態大規模開發距今僅半年時間,下列RGB 生態專案大多數也仍在發展初期:

  1. Infinitas Infinitas 是一個圖靈完備的比特幣應用生態系統,結合閃電網路和RGB 協議的優勢,並相互支持和補充,實現了更有效率的比特幣生態系統。值得一提的是,Infinitas 也提出了遞歸零知識證明的方法來解決客戶端驗證的低效問題,如果該方法有效實施,將很大程度解決RGB 網路驗證速度上存在的問題。

  2. RGB Explorer RGB Explorer 是最早支援RGB 資產查詢及資產(Fungible token and None Fungible token) 發送的瀏覽器,支援的資產有RGB20,RGB21,RGB25 三種標準資產。

  3. Cosminmart Cosminimart 本質是一個可以兼容RGB 協議的比特幣閃電網路。嘗試打造一個可以部署智能合約的比特幣全新生態。不同於上述項目單一的功能,Cosminmart 提供了錢包,衍生性商品交易市場和早期專案發掘市場。它為比特幣網路的智能合約開發到產品推廣及交易提供了一站式服務。

  4. DIBA DIBA 借助了閃電網路和RGB 協議,致力於打造比特幣網路的NFT 市場。目前也在比特幣測試網上運行,預計不久將在主網上線。

5. RGB 未來展望

伴隨著RGB v0.10.0 版本的問世,協議程序的整體框架趨於穩定,版本更新時可能的大規模不相容問題正在逐漸改進。同時,開發者工具和各式API 介面趨於完善,開發者使用RGB 進行開發的難度也可以大幅降低。

Today #Tether announces the ending of the support of 3 blockchains $USDt: OmniLayer, BCH-SLP and Kusama. Customers will be able to continue to redeem and swap $USDt tokens (to another of the manchay supported blockn’ t issue any new additional $USDt on those 3 blockchains.

最近Tether 官方發文,將比特幣二層網路上USDT 合約的部署從OmniLayer 轉移至RGB 。 Tether 的這項舉措被視為Crypto 巨頭嘗試進軍RGB 的訊號。 RGB 現在已經有了成熟的開發協議,龐大的開發者社群以及Crypto 巨頭的認可。最後,RGB 開發者現在在嘗試使用遞歸零知識證明對客戶端驗證的體積進行壓縮,如果能完成這項改進,RGB 網路的驗證速度將大大提高,從而緩解在大規模使用時面臨的網路延時問題。

Total
0
Shares
Related Posts