CKB Stablecoin Payment 的實現

WEEX 唯客博客, 作者: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 Scripti,Type Script Capacity(容量):Capacity 記錄了 Cell 儲存空間的大小,也代表了 CKByte 代幣的存儲價值用戶創建的 Cell 需要根據數據量分配一定的 Capacity,確保鏈上存儲空間得到有效利用 Data(數據):它是 Cell 模型的核心特性之一,可以存儲從簡單數字到複雜智能合約狀態的任意信息,允許在區塊鏈上存儲多樣化的數據 雙腳本系統: Lock 腳本:用於身份驗證,類似於BTC的簽名機制,防止未授權用戶訪問或修改 Cell 中的數據用戶必須提供正確的簽名或多重簽名才能解鎖並使用 Cell Type 腳本:定義了 Cell 的數據驗證邏輯,用於設定在未來交易中如何使用或更改 Cell 的規則,通過執行智能合約或規則驗證來決定交易或狀態的合法性 Live Cell & Dead Cell: Live Cell指的是當前仍然未被花費的 Cell,仍然可以用作輸入進行下一筆交易或狀態更新 當一個 Cell 被花費后,它就成為 Dead Cell,不能再被使用,但其歷史記錄保留在鏈上以確保可追溯性 狀態租賃機制:用戶需要通過支付CKByte代幣來租賃鏈上的存儲空間,從而保障長期的數據存儲,同時防止狀態爆炸(State Bloat) 資料來源:  https://medium.com/nervosnetwork/https-medium-com-nervosnetwork-cell-model-7323fca57571 https://docs.nervos.org/docs/tech-explanation/cell-model#first-class-assets 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 模型和其他區塊鏈兼容,同時支持高度擴展的智能合約和複雜應用 資料來源: https://mp.weixin.qq.com/s/SU4ur-54yae7lqGif8704g https://medium.com/nervosnetwork/an-introduction-to-ckb-vm-9d95678a7757 2.1.4 PoW共識機制 CKB採用類似於BTC的PoW共識機制,保障網路的安全性和去中心化,與BTC類似,礦工通過競爭計算哈希值來打包區塊,從而保障網路的不可篡改性和抗審查性 NC-MAX 演算法:相比BTC,CKB 引入了改進的 NC-MAX 演算法。這個改進允許更高的吞吐量並優化了區塊打包效率,降低了孤塊率,並提升了交易確認速度,使其適合大規模的應用場景,如資產存儲和支付結算。 Eaglesong 哈希函數:Eaglesong 哈希函數的定製設計通過 ASIC 中立性、高效性、安全性 和 網路公平性,為 Nervos CKB 網路提供了性能和安全方面的優勢,確保去中心化的同時,提升了挖礦效率和網路擴展性 資料來源: https://docs.nervos.org/docs/tech-explanation/consensus#nc-max-consensus-algorithm 2.1.5 多層次安全架構 CKB採用了多層次的安全架構: Layer 1專註於數據的最終結算和狀態的安全保存,Layer 2則用於擴展交易處理能力 分離的架構確保了主鏈(Layer 1)的安全性: 減少了處理交易時的負載,提高了整體網路的穩定性 2.1.6 與BTC的聯繫及正統性 UTXO模型的跨鏈互操作性: CKB 的 Cell 模型 是BTC UTXO 模型的擴展,這種相似性使得BTC UTXO 模型上的資產可以通過 Force Bridge 等跨鏈橋接工具在 CKB 上進行跨鏈操作。BTC用戶能夠將其資產映射到 CKB 網路,藉助 CKB 網路的靈活性進行存儲、智能合約操作和去中心化金融(DeFi)應用 由於 Cell 與BTC UTXO 在結構上相似,且 CKB 可以兼容BTC簽名演算法,用戶可以用BTC錢包操縱CKB鏈上資產,對於其他UTXO公鏈同理 正統性:CKB通過採用NC-Max(Nakamoto Consensus Max)與BTC保持理念上的一致性,NC-Max 是中本聰共識的改進版本,提供了更好的安全性和性能 社區支持:Nervos社區由眾多區塊鏈技術愛好者、開發者和礦工組成,並得到了部分BTC社區的支持正統性在於它繼承了BTC的去中心化思想,並通過擴展功能滿足了更廣泛的需求 資料: https://medium.com/@NervosCN/%E7%A7%91%E6%99%AE-%E4%BB%80%E4%B9%88%E6%98%AF%E4%B8%AD%E6%9C%AC%E8%81%AA%E5%85%B1%E8%AF%86-92ffe0886104 2.1.7 CKB在穩定幣支付中的角色 存儲與管理穩定幣餘額:CKB 的 Cell 模型 是穩定幣存儲的基礎,用戶的 RUSD 等穩定幣餘額存儲在鏈上的 Cell 中。每個 Cell 包含完整的餘額信息,確保了資產的安全性和可追蹤性。 記錄交易狀態:CKB 支持在鏈上記錄交易的每一個狀態變化,所有的支付流程都可以通過 Cell 模型透明化地記錄並追蹤。這種機制在穩定幣支付中至關重要,確保了交易的安全性和可驗證性。 智能合約的執行:穩定幣支付過程中的條件支付、鎖定等複雜操作都可以通過 CKB-VM 支持的智能合約實現。 2.2 RGB++ 2.2.1 RGB++是什麼 一種去中心化的資產發行和智能合約協議,適用於Bitcoin UTXO模型和其他UTXO公鏈 RGB++協議由RGB協議發展而來,繼承了RGB協議 的將鏈上和鏈下分別創造一個交易並進行綁定的思想,不同之處在於RGB利用客戶端驗證將更多BTC網路無法存儲的數據和無法實現的智能合約移到鏈下,並創建對應的交易與鏈上進行綁定,而RGB++將這些無法存儲的數據和無法實現的智能合約移到CKB,使CKB成為BTC的智能合約結算層 資料: https://mp.weixin.qq.com/s/ZNWNaklx3gGpizxCfoVEmw https://mp.weixin.qq.com/s/3DoTPEqcFbcTJUhwQ2N52Q https://mp.weixin.qq.com/s/PD0_cz8b-Sv00CMS2qww-w https://mp.weixin.qq.com/s/PICDyVGufLgsPz1AnuKIbQ https://hackernoon.com/utxo-stack-the-complete-edition-of-the-rgb-protocol-charting-bitcoins-course https://www.nervos.org/knowledge-base/Understanding_Bitcoin_layer2_%28explainCKBot%29 https://medium.com/@utxostack/the-magic-of-rgb-bridgeless-cross-chain-leap-70ed82bed3ab 2.2.2 基本功能 通過RGB++,將CKB 作為BTC的影子鏈(Shadow Chain):作為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會被消耗,而新的Cells會生成用來分配資產 同構綁定的優點 – 賦能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萬條支付通道 資料: https://mp.weixin.qq.com/s/RSgzJeGnOdkqi8BQoW6xqw https://mp.weixin.qq.com/s/SFIsmjf2CDWJvSDbi5unmA https://mp.weixin.qq.com/s/roWA-DlD0H-wlvmyaY9vgA https://hackernoon.com/fiber-network-a-lightning-network-based-on-ckb 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 升級支持其他資產,但目前只能原生支持BTC; Fiber Network 支持多種資產,包括 CKB、BTC、RGB++ 穩定幣等 手續費和交易速度: BTC 閃電網路由於在BTC鏈上運行,打開和關閉通道時需要支付較高的BTC手續費,尤其當 BTC 交易費用上漲時,通道操作成本大幅增加; Fiber Network 由於依賴 CKB,擁有更高的 TPS 和更低的交易費用,這使得打開和關閉通道的操作成本更低,提供了更好的用戶體驗 跨鏈互操作性: BTC閃電網路主要用於BTC網路內的支付,尚不支持其他 UTX…

Previous:

Next: