CKB Stablecoin Payment 的實現

2024-10-31 15:45 字節元CKB


作者:Jimmie,來自 10K Ventures

1. 概述

CKB stablecoin payment 是一種基於 CKB 網絡的去中心化穩定幣支付解決方案,允許用戶通過 CKB 和比特幣的聯合網絡,利用如 RGB++ 和 Fiber Network 等 Layer 2 擴展,生成並管理與美元掛鉤的穩定幣 RUSD,實現快速、低成本、安全的跨鏈穩定幣支付。

2. 核心組件介紹

2.1 CKB(Common Knowledge Base)

2.1.1 CKB 是什么

CKB 是 Nervos Network 的 Layer 1 區塊鏈,其主要功能可以總結爲共識與執行(Consensus & Execution) 以及數據可用性(Data Availability),通過建立在其之上的支付通道、RGB++ 提升可擴展性。

它基於 PoW 共識機制,類似於 BTC,並採用了升級版的 BTC 算法 NC-MAX,該算法通過加快交易確認時間和降低孤塊率,提升了網絡的效率和響應能力,與 BTC 每 10 分鐘一個區塊的固定間隔不同,CKB 會根據網絡活動動態調整區塊間隔(大約每四小時調整一次),從而優化性能。

CKB 採用了 Eaglesong 哈希函數,這是一個專門爲 Nervos Network 定制的哈希函數,作爲 SHA-256 的替代,它提供了相同的安全性。

CKB 採用了 Cell模型作爲其數據結構的核心,是 BTC 的 UTXO 記账模型的改進版本:

通過雙腳本系統,允許更靈活的數據存儲和驗證,支持資產發行和智能合約執行。提供數據存儲和狀態管理功能,確保所有鏈上資產和數據的長期可用性。

2.1.2 Cell 模型

Cell 模型及其特點:

Cell 模型類似於  BTC 的 UTXO 模型,但通過引入雙腳本實現了智能合約腳本的鏈上數據存儲和驗證。存儲任意類型的數據或資產:在 BTC 的 UTXO 模型中,每個交易輸出只能包含簡單的金額信息和所有權;而 CKB 的每個 Cell 都可以存儲智能合約代碼),並在交易中通過外部調用觸發這些腳本執行,這意味着每個 Cell 都能夠獨立執行與其相關的智能合約邏輯,具有可編程性。狀態與計算分離:因爲 Cell 存儲了智能合約的代碼和狀態,允許每個 Cell 獨立執行合約邏輯復雜的計算任務可以在 Layer 2 或鏈下執行,執行結果則通過交易同步回 Layer 1,確保網絡的安全性和數據的一致性。並行執行和打包交易:通過 Cell 模型,不同 Cell 中的智能合約可以實現並行執行,而同時,不同 Cell 的交易結果可以打包更新上鏈,這種方式使計算更加高效並且降低交易費用。

Cell模型的工作原理:

Cell 是由輸入和輸出組成的:類似於 BTC 的 UTXO 模型,Cell 通過輸入和輸出來執行交易和狀態更新每個 Cell 可以作爲交易的輸入被花費,並生成新的輸出,創建新的 Cell。Cell 的組成元素:每一個 Cell 包含 Capacity,Updated Data,Lock Script,Type Script。Capacity(容量):Capacity 記錄了 Cell 儲存空間的大小,也代表了 CKB 代幣的存儲價值用戶創建的 Cell 需要根據數據量分配一定的 Capacity,確保鏈上存儲空間得到有效利用。Data(數據):它是 Cell 模型的核心特性之一,可以存儲從簡單數字到復雜智能合約狀態的任意信息,允許在區塊鏈上存儲多樣化的數據。雙腳本系統:Lock Script 用於身份驗證,類似於 BTC 的籤名機制,防止未授權用戶訪問或修改 Cell 中的數據用戶必須提供正確的籤名或多重籤名才能解鎖並使用 Cell;Type Script 定義了 Cell 的數據驗證邏輯,用於設定在未來交易中如何使用或更改 Cell 的規則,通過執行智能合約或規則驗證來決定交易或狀態的合法性。Live Cell & Dead Cell:Live Cell 指的是當前仍然未被花費的 Cell,仍然可以用作輸入進行下一筆交易或狀態更新;當一個 Cell 被花費後,它就成爲 Dead Cell,不能再被使用,但其歷史記錄保留在鏈上以確保可追溯性。狀態租賃機制:用戶需要通過支付 CKB 代幣來租賃鏈上的存儲空間,從而保障長期的數據存儲,同時防止狀態爆炸(State Bloat)。

2.1.3 可編程性 & CKB-VM

Cell 模型是 CKB 可編程性的基礎:支持在每個 Cell 中存儲智能合約的狀態和執行腳本,使合約的執行和資產的管理緊密結合

通過圖靈完備的 RISC-V 虛擬機(CKB-VM),开發者可以在鏈上執行自定義的智能合約。RISC-V 指令集的靈活性賦予开發者更多編寫合約的自由,使 CKB 能夠支持復雜的合約邏輯。

CKB-VM支持多種語言:包括 C 和 Rust 等流行語言。這種廣泛的兼容性使 CKB-VM 有別於通常僅限於特定語言的其他區塊鏈的虛擬機,向更廣泛的开發者社區开放。CKB 網絡還支持 JavaScript、Rust、Go 和 Java 等主流語言的 SDK,方便开發者使用熟悉的工具進行开發。

兼容性與擴展性:CKB-VM 的設計確保了與 BTC 的 UTXO 模型和其他區塊鏈兼容,同時支持高度擴展的智能合約和復雜應用。

2.1.4 PoW 共識機制

CKB 採用類似於 BTC 的 PoW 共識機制,保障網絡的安全性和去中心化,與BTC類似,礦工通過競爭計算哈希值來打包區塊,從而保障網絡的不可篡改性和抗審查性。

NC-MAX 算法:相比 BTC,CKB 引入了改進的 NC-MAX 算法。這個改進允許更高的吞吐量並優化了區塊打包效率,降低了孤塊率,並提升了交易確認速度,使其適合大規模的應用場景,如資產存儲和支付結算。

Eaglesong 哈希函數:Eaglesong 哈希函數的定制設計通過 ASIC 中立性、高效性、安全性 和 網絡公平性,爲 Nervos CKB 網絡提供了性能和安全方面的優勢,確保去中心化的同時,提升了挖礦效率和網絡擴展性。

2.1.5 多層次安全架構

CKB 採用了多層次的安全架構::Layer 1 專注於數據的最終結算和狀態的安全保存,Layer 2 則用於擴展交易處理能力。

分離的架構確保了主鏈(Layer 1)的安全性:減少了處理交易時的負載,提高了整體網絡的穩定性

2.1.6 與 BTC 的聯系及正統性

UTXO 模型的跨鏈互操作性:

CKB 的 Cell 模型是 BTC UTXO 模型的擴展。BTC 用戶能夠將其資產映射到 CKB 網絡,借助 CKB 網絡的靈活性進行存儲、智能合約操作和去中心化金融(DeFi)應用。由於 Cell 與 BTC UTXO 在結構上相似,且 CKB 可以兼容 BTC 籤名算法,用戶可以用 BTC 錢包操縱 CKB 鏈上資產,對於其他 UTXO 公鏈同理。

正統性:CKB 通過採用 NC-Max(Nakamoto Consensus Max)與 BTC 保持理念上的一致性,NC-Max 是中本聰共識的改進版本,提供了更好的安全性和性能。

社區支持:Nervos 社區由衆多區塊鏈技術愛好者、开發者和礦工組成,並得到了部分 BTC 社區的支持,正統性在於它繼承了 BTC 的去中心化思想,並通過擴展功能滿足了更廣泛的需求。

2.1.7 CKB 在穩定幣支付中的角色

存儲與管理穩定幣余額:CKB 的 Cell 模型 是穩定幣存儲的基礎,用戶的 RUSD 等穩定幣余額存儲在鏈上的 Cell 中。每個 Cell 包含完整的余額信息,確保了資產的安全性和可追蹤性。

記錄交易狀態:CKB 支持在鏈上記錄交易的每一個狀態變化,所有的支付流程都可以通過 Cell 模型透明化地記錄並追蹤。這種機制在穩定幣支付中至關重要,確保了交易的安全性和可驗證性。

智能合約的執行:穩定幣支付過程中的條件支付、鎖定等復雜操作都可以通過 CKB-VM 支持的智能合約實現。

2.2 RGB++

2.2.1 RGB++ 是什么

RGB++ 是一種去中心化的資產發行和智能合約協議,適用於 Bitcoin UTXO 模型和其他 UTXO 公鏈。

RGB++ 協議繼承了 RGB 協議的將鏈上和鏈下分別創造一個交易並進行綁定的思想,不同之處在於 RGB 利用客戶端驗證,將更多 BTC 網絡無法存儲的數據和無法實現的智能合約移到鏈下,並創建對應的交易與鏈上進行綁定,而 RGB++ 將這些無法存儲的數據和無法實現的智能合約移到 CKB,使 CKB 成爲 BTC 的智能合約結算層。

2.2.2 基本功能

通過 RGB++,將 CKB 作爲 BTC 的影子鏈:作爲 BTC 的補充鏈,承擔 BTC 原生無法處理的包括在圖靈機中的復雜邏輯和智能合約操作。

與 BTC 網絡交互:

交易發生:在 BTC 網絡中,用戶通過常規的 UTXO 模型完成交易,而涉及智能合約執行的部分則通過 RGB++ 將合約狀態和數據綁定到 CKB 上。驗證邏輯:在 BTC 網絡上進行的交易記錄將通過 RGB++ 與 CKB 上存儲的合約狀態同步,通過特定的驗證邏輯來確保交易的合法性,每當網絡發生交易,RGB++ 會觸發 CKB 上的合約執行,通過鏈上合約邏輯檢查交易是否符合預定的規則,例如余額是否充足、籤名是否有效、合約條件是否滿足等。

RGB++ 使用客戶端驗證(Client-Side Validation)的模式來確保鏈下數據的私密性和完整性,只有在鏈下驗證通過時才會將數據提交至 CKB 進行最終結算。

資產發行與管理:RGB++ 允許用戶通過鏈下協議發行資產(如穩定幣、代幣等),並使用 CKB 來管理這些資產的生命周期(不僅包括資產的發行和流通,還包括更復雜的操作,如時間鎖、條件支付等功能)。

RGB++ 實現了 BTC 的高安全性與 CKB 的可編程性結合。

2.2.3 同構綁定(Isomorphic Binding)

資產&狀態跨鏈同步:同構綁定是指在 BTC 和 CKB(或其他 UTXO 公鏈,如 Cardano)之間,將資產和狀態通過一種綁定機制保持同步。每當 BTC 鏈上發生資產交易時,RGB++ 會在 CKB 上映射出與之對應的合約狀態或資產變動。

擴展 UTXO:在同構綁定中,BTC 鏈上的每個 UTXO 會在 CKB 上有對應的 Cell(UTXO 容器),並記錄與之對應的資產狀態和智能合約條件。

資產綁定:當用戶在 BTC 鏈上持有某種 RGB++ 資產時,CKB 上的 Cell 會存儲相應的資產狀態,兩條鏈之間通過同構綁定確保這些資產信息的一致性。

交易的同步:當 RGB++ 代幣交易發生時,同構綁定機制會在 BTC 網絡生成 Commitment,在 CKB 鏈上,對應的 Cell 會被消耗,而新的 Cell 會生成用來分配資產。

同構綁定的優點 - 賦能 BTCFi

智能合約支持:BTC 無法原生支持圖靈完備的智能合約,而通過同構綁定,CKB 可以作爲智能合約的執行層,管理 BTC 資產的復雜交易條件,如時間鎖、條件支付等。資產管理的靈活性:同構綁定允許在 CKB 上管理 BTC 網絡中流通的資產,用戶可以通過 CKB 的靈活編程能力執行復雜的金融操作,而無需改變 BTC 的底層協議。

2.2.4 Leap

RGB++ Layer 升級提出: 將 CKB 與 BTC 之間的綁定關系擴展到所有 UTXO 鏈,通過 “換綁” 實現資產跨鏈。

BTC 與其他 UTXO 鏈之間的無橋跨鏈:它的核心目的是讓 BTC 鏈上的 RGB++ 資產能夠無縫轉移到其他 UTXO 鏈上,它通過切換資產綁定的 UTXO,支持在多個區塊鏈上管理和轉移資產。

無橋技術:Leap 通過同構綁定(Isomorphic Binding)技術,以及切換不同鏈上的 UTXO,而不依賴傳統的 Lock-Mint 跨鏈橋,實現資產的跨鏈轉移。

操作流程:例如,用戶可以通過 Cardano 鏈來控制原本在 BTC 鏈上的 RGB++ 資產,並在 Cardano 鏈上進行資產的拆分和轉移。

發布 Commitment:首先,用戶需要在 BTC 鏈上發布一個 Commitment,聲明要將 BTC UTXO 綁定的資產解除綁定。Cardano 鏈綁定:接下來,在 Cardano 鏈上發布一個新的 Commitment,將該 RGB++ 資產與 Cardano 的 eUTXO 綁定。修改鎖定腳本:然後,修改 RGB++ 資產在 CKB 鏈上的鎖定腳本,將解鎖條件從 BTC UTXO 切換爲 Cardano 鏈上的 eUTXO。這一步允許資產持有人通過 Cardano 鏈控制原本在BTC鏈上的資產。

CKB 在 Leap 中的作用:

CKB 扮演了類似索引器和數據可用性(DA)層的角色。所有的 RGB++ 資產數據仍然存儲在 CKB 鏈上,CKB 作爲第三方見證人來處理 Leap 請求,並確保跨鏈資產的安全性。CKB 提供了安全性和可信度:相比傳統跨鏈橋中常見的多籤或 MPC(多方計算)機制,CKB 的安全性和去中心化屬性更爲可靠。

2.2.5 RGB++ 在穩定幣支付中的角色

穩定幣的發行和流通:通過 RGB++ 在 BTC 鏈上發行穩定幣,借助 CKB 實現資產的智能管理。

跨鏈資產管理:通過 RGB++ Layer和 CKB 的結合,確保穩定幣支付在不同 UTXO 鏈上無縫操作。

智能合約支持:爲穩定幣支付提供復雜的支付條件、時間鎖等功能,提升支付的靈活性和安全性。

橋梁作用:RGB++ Layer 充當BTC(以及其他 UTXO 鏈)和 CKB 之間的橋梁,擴展了 BTC 的可編程性和資產管理能力,使 BTC 的穩定幣支付功能更加多樣化和靈活。

2.3 Fiber Network

2.3.1 Fiber Network 簡介

Fiber Network 是 CKB 上類似於 BTC 閃電網絡的 Layer 2 擴展方案:它專門爲提升 CKB 的鏈下支付能力設計,允許用戶在鏈下進行快速、低成本地支付。通過支付通道實現鏈下交易,減少主鏈的壓力,提升交易速度。

鏈下支付的特點:Fiber Network 通過支付通道實現了鏈下的快速轉账,降低了對 CKB 主鏈的依賴,並提升了交易的吞吐量。

現狀:截至 2024 年 9 月,根據 mempool 的數據,當前 BTC 閃電網絡中安置了 3 億多美元的資金,節點數量約爲 1.2 萬個,彼此之間構建了近 5 萬條支付通道。基於 Nervos CKB 的 Fiber Network 已經上线測試網。

2.3.2 技術要點

鏈下支付通道(Fiber Channels):Fiber Network 通過創建支付通道,允許用戶在鏈下直接交換資產,直到通道關閉時才將最終狀態提交到 CKB 主鏈進行結算。

鏈上合約(HTLC):

類似於 BTC 閃電網絡,Fiber Network 現在也使用哈希時間鎖合約(HTLC) 來保障鏈下交易的安全性;如果鏈下交易在約定時間內沒有被確認,可以通過 HTLC 自動退回資產。PTLC:Fiber Network 在 HTLC 的基礎上改良,避免整條支付路徑圖使用同一加密值,將使用 PTLC 來防止對交易關聯性的隱私泄漏。

多跳路由(Multi-Hop Routing):Fiber Network 和 BTC 閃電網絡一樣,支持通過多個節點進行支付路徑的跳轉,基於 Dijkstra 算法來搜索支付路徑,從而降低路由費用並提高多跳路徑支付的成功率。

監控服務-瞭望塔(Watchtower Service):用戶可以利用全天候監控服務來監控支付通道的狀態,防止惡意節點嘗試進行雙重支付或作弊行爲(防止交易參與者把過期的 Commit 提交上鏈),該服務可以自動追蹤交易並報警。

2.3.3 Fiber Network 與 BTC 閃電網絡的不同

多資產支持:

BTC 閃電網絡之前僅支持 BTC 的鏈下支付,現在可通過 Taproot Asset 升級支持其他資產。Fiber Network 支持多種資產,包括 CKB、BTC、RGB++ 穩定幣等。

手續費和交易速度:

BTC 閃電網絡由於在 BTC 鏈上運行,打开和關閉通道時需要支付較高的 BTC 手續費,尤其當 BTC 交易費用上漲時,通道操作成本大幅增加。Fiber Network 由於依賴 CKB,擁有更高的 TPS 和更低的交易費用,這使得打开和關閉通道的操作成本更低,提供了更好的用戶體驗。

跨鏈互操作性:

BTC 閃電網絡主要用於 BTC 網絡內的支付,尚不支持其他 UTXO 鏈的跨鏈支付。Fiber Network 支持多種資產的流通包括:BTC 原生資產(包括銘文、符文等)、CKB 、RGB++ 原生資產(包括RUSD等)。跨鏈資產鏈下支付:借助 RGB++ Layer,所有 UTXO 鏈的資產,都可以進入閃電網絡。Fiber Network 與 BTC 閃電網絡可以互聯:實現跨鏈支付(只能 Fiber Network 發出,BTC 閃電網絡接收),用戶可以通過 Fiber Network 使用 CKB 或 RGB++ 資產購买 BTC 閃電網絡上的資產,並確保跨鏈交易的原子性(不會出現部分資產成功/失敗跨鏈的情況)。

2.3.4 Fiber Network 在穩定幣支付中的角色

Fiber Network 用於支持鏈下的穩定幣轉账,確保支付的即時性和低成本。

Fiber Network 通過創建鏈下支付通道,讓用戶能夠在鏈下進行高頻交易,減少對主鏈的壓力。

Fiber Network 支持跨鏈原子支付,使得穩定幣支付可以安全地跨越多個鏈。

2.4 Stable++

2.4.1 Stable++ 簡介

Stable++ 是一個 CKB 生態的去中心化的超額抵押穩定幣協議,允許用戶通過抵押 BTC 或 CKB 來鑄造與美元掛鉤的 RUSD。

RUSD 理論上是第一個基於 RGB++ 協議直接在比特幣網絡上發行的穩定幣,利用 CKB 的能力提供更本地化和高效的解決方案。

手續費:用戶抵押 BTC/CKB 鑄造 RUSD 和歸還 RUSD 贖回 BTC/CKB 都需要收取手續費。

RUSD 質押:用戶可以通過借出的質押 RUSD 獲得治理代幣 STB。

治理代幣 STB:用戶可以通過質押 STB 參與抵押物的清算獲得收益;用戶可以通過質押 STB 參與手續費分成。

跨鏈互操作性:RUSD 可以通過 RGB++ 的同構綁定和 Leap 功能實現 UTXO 鏈账戶之間的轉账。

較低的最低質押比例(MCR):得益於高效清算,降低了協議和穩定性提供者面臨潛在損失的風險,從而降低了對於抵押物價值的需求

去中心化:Stable++ 是完全去中心化、獨立運行的協議,無需任何實體的控制或許可,用戶可自由、安全地與系統交互。

2.4.2 清算機制 - 雙重保險

概述:清算機制是在抵押品價值下降至某個臨界點(最低質押比例借出 RUSD)時觸發的保護措施,確保生成的 RUSD 穩定幣始終有足夠的抵押品支持,系統會自動清算那些抵押不足的用戶,以維持整體系統的穩定性

穩定池(Stability Pool):

爲解決發生大面積清算時效率低下的問題,Stable++ 使用穩定池來代替大多數借貸協議通用的拍賣方式進行清算,無需在市場上尋找清算人。自動清算:穩定池需要 LP(用戶)預先存入 RUSD 來作爲儲備,當清算發生時,穩定池中與壞账等額的 RUSD 會被直接銷毀,同時抵押物會直接分配給 LP。通過穩定池自動清算的能力,用直接分配超額抵押物來代替傳統拍賣,提升了穩定幣在出現大面積清算的運行效率和穩定性。

重分配:

概述:當穩定池沒有足夠的儲備來完成壞账清算時,壞账與抵押物將通過充分配機制在借款人之間分配。債務重分配:當清算池無法覆蓋全部壞账時,剩余的債務會在所有借款人之間按比例重分配。抵押物分配:所有借款人共同消化壞账的同時,也會獲得按比例分配的超額抵押作爲獎勵。通過讓所有借款人共同承擔壞账,這個機制確保了系統中沒有未覆蓋的債務,避免了系統性風險的積累。2.4.3 Stable++ 在穩定幣支付中的角色

Stable++ 協議生成穩定幣 RUSD,作爲支付中使用的主要穩定幣。

Stable++ 通過創新的清算機制,改進了傳統的超額抵押方式,保證了 RUSD 價格的穩定性。

Stable++ 借助 RBG++ 的同構綁定和 Leap 能力,使 RUSD 成爲第一個真正能夠在任何支持 UTXO 的鏈上自由流通的穩定幣,進一步拓寬了穩定幣的流通性。

2.5 JoyID

2.5.1 JoyID 是什么

JoyID Passkey 錢包是結合 Passkey 密鑰管理的加密錢包。

在 Nervos 的生態系統中,JoyID 被設計爲一個跨鏈、去中心化的身份認證和管理工具,使用戶可以安全地存儲和使用加密貨幣以及其他去中心化應用。

2.5.2 主要功能

無需密碼和助記詞:通過生物識別即可訪問錢包,實現無私鑰登陸。

支持 BTC 和 Fiber Network:用戶可以更快、更高效地交易,並且可以幫助拓展 CKB 的應用場景。

多鏈支持:不僅支持 BTC 和 Nervos CKB,JoyID 也支持 ETH 和一系列 EVM 鏈。

通過 Passkey 獲得額外安全性:Passkey 通過與硬件設備相關聯的 secp256r1 籤名生成區塊鏈交易所需的 secp256k1 籤名,因爲 secp256r1 籤名不會在交易中暴露只會通過生物信息生成,所以給錢包增加了額外的安全性。

安全和易用的結合:

安全性:硬錢包 > Passkey錢包 > 軟件非托管錢包 > 托管錢包易用性:Passkey錢包 > 托管錢包 > 軟件非托管錢包 > 硬件錢包

2.5.3 JoyID 在穩定幣支付中的角色

JoyID 作爲用戶接口,允許用戶在 CKB 網絡中進行穩定幣支付,管理他們的 RUSD 資產和支付通道。

JoyID 通過其優秀的能力組合(安全性,易用性,多鏈支持),可以進一步賦能基於 CKB 的穩定幣支付與其他交易。

3. 支付鏈路

支付發起與接受:用戶可以通過 JoyID 錢包开設支付通道,進行穩定幣支付。穩定幣發行:RGB++ 和 Stable++ 協同工作,Stable++ 通過超額抵押 BTC 或 CKB 生成 RUSD,然後通過 RGB++ 在鏈上發行。跨鏈交易和流通:RGB++ 通過同構綁定和 Leap,將 BTC 鏈(以及其他 UTXO 鏈)和 CKB 鏈無縫連接,允許 RUSD 以及其他資產在多個 UTXO 鏈上進行跨鏈操作,擴展了資產流通範圍 ,並保證數據同步。交易記錄與結算:Fiber Network 與 CKB 的結合,支持了鏈下支付的快速處理,並且 CKB 作爲 L1鏈保障了交易的最終結算,確保所有交易狀態和資產的安全性。復雜交易的基礎:CKB 的虛擬機和 Cell 模型提供智能合約的執行環境,支持復雜的支付條件和自定義合約邏輯,同時也保證了 Stable++ 協議的去中心化。

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

標題:CKB Stablecoin Payment 的實現

地址:https://www.sgitmedia.com/article/44534.html

相關閱讀: