作者:Trustless Labs;原文链接:https://www.chaincatcher.com/article/2137941
比特幣是目前流動性最好且最安全的區塊鏈。 在銘文爆發後,BTC 生態吸引了大量開發者湧入,他們很快關注到了 BTC 的可編程性問題與擴容問題。通過引入不同的思路,如 ZK、DA、側鏈、rollup、restaking 等方案,BTC 生態的繁榮正迎來全新高點,俨然已經成為本輪牛市的主線劇情。
然而,在這些設計中,許多都延續了 ETH 等智能合約的擴容經驗,且必須依賴一個中心化的跨鏈橋,這是系統的薄弱點。 少有方案是基於 BTC 本身的特點設計的,這與 BTC 本身的開發者體驗並不友好有關。由於一些原因使得它沒法像以太坊一樣運行智能合約:
- 比特幣的腳本語言為了安全性而限制了圖靈完備性,這使得沒法像以太坊一樣執行智能合約。
- 同時比特幣區塊鏈的存儲是針對簡單的交易而設計,沒有對複雜的智能合約進行優化。
- 最重要的是比特幣沒有虛擬機來運行智能合約。
2017 年隔離見證 (SegWit) 的引入增加了比特幣的區塊大小限制;2021 年的 Taproot 升級使得批量簽名驗證成為可能,從而更輕鬆、更快速地處理交易(解鎖原子交換、多重簽名錢包和有條件付款)。這都使得比特幣上的可編程性成為可能。
2022 年,開發者 Casey Rodarmor 提出了他的 “Ordinal Theory”,概述了聰的編號方案,可以將圖像等任意數據放入比特幣交易中,為直接在比特幣鏈上嵌入狀態信息和元數據開闢了新的可能性,這對於需要可訪問和可驗證狀態數據的智能合約等應用程序來說,開闢了一條新的思路。
目前,大多數擴展比特幣編程性的項目依賴於比特幣的二層網絡(L2),這使得用戶必須信任跨鏈橋,成為 L2 獲取用戶和流動性的一大挑戰。此外,比特幣目前缺乏原生的虛擬機或可編程性,無法在無需額外信任假設的情況下實現 L2 與 L1 的通信。
RGB、 RGB++ 和 Arch Network 都嘗試從 BTC 原生屬性出發,增強比特幣的可編程性,通過不同的方法提供智能合約和複雜交易的能力:
- RGB 是一種通過鏈下客戶端驗證的智能合約方案,智能合約的狀態變化被記錄在比特幣的 UTXO 中。雖然具有一定的隱私優勢,但使用起來繁瑣,且缺乏合約的可組合性,目前發展非常緩慢。
- RGB++ 是在 RGB 思路下的另一條擴展路線,依然基於 UTXO 綁定,但通過將鏈本身作為一個具備共識的客戶端驗證者,這提供了一種元數據資產跨鏈的解決方案,並允許其支持任意 UTXO 結構鏈的轉移。
- Arch Network 為 BTC 提供了一個原生的智能合約方案,創建了一個 ZK 虛擬機和對應的驗證者節點網絡,通過聚合交易將狀態變化與資產階段記錄在 BTC 交易中。
RGB#
RGB 是 BTC 社區早期的智能合約擴展思路,其通過 UTXO 封裝的方式記錄狀態數據,為後續 BTC 原生擴容提供了重要思路。
RGB 採用鏈下驗證方式,將代幣轉移的驗證從比特幣的共識層移到鏈下,由特定交易相關的客戶端進行驗證。這種方式減少了對全網廣播的需求,增強了隱私和效率。然而,這種隱私增強方式也是一把雙刃劍。通過僅讓和特定交易相關的節點參與驗證工作,雖然增強了隱私保護,但也導致第三方不可見,使得實際操作過程複雜且難以開發,用戶體驗較差。
並且,RGB 引入了單次使用密封條的概念。每個 UTXO 只能被花費一次,相當於在創建 UTXO 時上鎖,在花費它時解鎖。智能合約的狀態通過 UTXO 封裝並通過密封條管理,從而提供了一種有效的狀態管理機制。
RGB++#
RGB++ 是在 RGB 思路下的另一條擴展路線,依然基於 UTXO 綁定。
RGB++ 利用圖靈完備的 UTXO 鏈(例如 CKB 或其他鏈)來處理鏈下數據和智能合約,進一步提升了比特幣的可編程性,並通過同構綁定 BTC 來保證安全性。
RGB++ 採用圖靈完備的 UTXO 鏈。通過使用像 CKB 這樣的圖靈完備 UTXO 鏈作為影子鏈,RGB++ 能夠處理鏈下數據和智能合約。這種鏈不僅可以執行複雜的智能合約,還可以與比特幣的 UTXO 進行綁定,從而增加了系統的編程性和靈活性。此外,比特幣的 UTXO 和影子鏈的 UTXO 同構綁定,確保了狀態和資產在兩條鏈之間的一致性,從而保證了交易的安全性。
除此之外,RGB++ 還可以擴展到所有圖靈完備的 UTXO 鏈,不再局限於 CKB,從而提升了跨鏈互操作性和資產流動性。** 這種多鏈支持允許 RGB++ 與任何圖靈完備的 UTXO 鏈結合,增強了系統的靈活性。** 同時,RGB++ 通過 UTXO 同構綁定實現無橋跨鏈, 與傳統的跨鏈橋不同,這種方式避免了 “假幣” 問題,確保了資產的真實性和一致性。
通過影子鏈進行鏈上驗證,RGB++ 簡化了客戶端驗證過程。用戶只需檢查影子鏈上的相關交易,即可驗證 RGB++ 的狀態計算是否正確。這種鏈上驗證方式不僅簡化了驗證過程,還優化了用戶體驗。由於使用圖靈完備的影子鏈,RGB++ 避免了 RGB 複雜的 UTXO 管理,提供了更加簡化和用戶友好的體驗。
推薦閱讀:RGB++ Layer:為比特幣生態系統開創新時代
Arch Network#
Arch Network 主要由 Arch zkVM 和 Arch 驗證節點網絡組成,利用零知識證明 (zk-proofs) 和去中心化驗證網絡確保智能合約的安全和隱私,比 RGB 更加易用,並沒有像 RGB++ 一樣需要另一條 UTXO 鏈進行綁定。
Arch zkVM 使用 RISC Zero ZKVM 執行智能合約並生成零知識證明,由去中心化的驗證節點網絡進行驗證。該系統基於 UTXO 模型運行,將智能合約狀態封裝在 State UTXO 中,以提高安全性和效率。
Asset UTXO 則用於代表比特幣或其他代幣,並可通過委託的方式進行管理。Arch 驗證網絡通過隨機選出的 leader 節點對 ZKVM 內容進行驗證,並使用 FROST 簽名方案聚合節點簽名,最終將交易廣播到比特幣網絡。
Arch zkVM 為比特幣提供了一個圖靈完備的虛擬機,能夠執行複雜的智能合約。每次智能合約執行後,Arch zkVM 會生成零知識證明,這些證明用於驗證合約的正確性和狀態變化。
Arch 也使用了比特幣的 UTXO 模型,狀態和資產被封裝在 UTXO 中,通過單次使用的概念進行狀態轉換。智能合約的狀態數據被記錄為 state UTXO,而原數據資產被記錄為 Asset UTXO。Arch 確保每個 UTXO 只能被花費一次,從而提供安全的狀態管理。
Arch 雖然沒有創新區塊鏈結構,但也需要一個驗證節點網絡。 在每個 Arch Epoch 期間,系統會根據權益隨機選擇一個 Leader 節點,Leader 節點負責將收到的信息傳播到網絡內的所有其他驗證者節點。所有 zk-proofs 都由去中心化的驗證節點網絡進行驗證,確保系統的安全性和抗審查性,並生成簽名給 Leader 節點。一旦交易由所需數量的節點簽署,就可以在比特幣網絡上進行廣播。
結論#
在 BTC 可編程性設計方面,RGB、RGB++ 和 Arch Network 各有特色,但都延續了綁定 UTXO 的思路,UTXO 的僅一次使用的鑑權屬性更適合智能合約用於記錄狀態。
但其劣勢也非常明顯,即糟糕的用戶體驗,與 BTC 一致的確認延遲與低性能,即只擴展了功能,但沒有提升性能,這在 Arch 與 RGB 中較為明顯;而 RGB++ 的設計雖然通過引入更高性能的 UTXO 鏈提供了更好的用戶體驗,但也提出了額外的安全性假設。
隨著更多開發者加入 BTC 社區,我們會見到更多的擴容方案,如 op_cat 的升級提案也在積極討論中。切合 BTC 原生屬性的方案是需要重點關注的,UTXO 綁定方法是不升級 BTC 網絡的前提下,擴展 BTC 編程方式的最有效方法,只要能解決好用戶體驗問題,將是 BTC 智能合約的巨大進步。