引言
隨著區塊鏈技術的發展,可擴展性和可程式性仍然是關鍵挑戰,尤其是採用UTXO 模型的區塊鏈。 Kaspa 作為一個利用BlockDAG 結構的一層公共區塊鏈,實現了高吞吐量,但缺乏原生智慧合約功能,這是其他UTXO 系統(如比特幣)也面臨的限制。為了解決這個問題,Kaspa 生態開發了Kasplex L2,一種透過基於Rollup 架構來實現與以太坊虛擬機(EVM)相容智慧合約的二層解決方案。
在本文中,我們將從安全與研究機構的視角,對Kasplex L2 進行技術分析。我們的目標是可觀評估其設計、技術實現及其對UTXO 區塊鏈的影響。我們將探討Kasplex L2 的工作原理,將其與比特幣的Inscriptions(如BRC-20)進行對比,並討論其優點與限制。此分析旨在為UTXO 模型區塊鏈的可擴展性解決方案提供更廣泛的討論參考。
了解Kaspa 一級鏈:高吞吐量的UTXO 區塊鏈
Kaspa 是一個採用BlockDAG 結構的一級區塊鏈,允許多個區塊並行產生。該設計由GHOSTDAG 協定驅動,使Kaspa 實現了10 BPS的高吞吐量。與基於帳戶的區塊鏈(如以太坊)不同,Kaspa 使用UTXO 模型,交易透過消耗未花費輸出並創建新輸出來進行驗證,從而保證了高效的驗證過程。
雖然這種架構在支付場景中表現出色,但它在可編程性方面存在挑戰。 UTXO 模型天生是無狀態的,缺乏維護持久狀態或執行複雜運算的能力——這些正是智慧合約所需的關鍵功能。因此,Kaspa 的功能僅限於簡單的轉賬,這也促使了二層解決方案的發展,以擴展其能力。
Kasplex L2:用於智能合約執行的基於Rollup
Kaspa 生態探討了三種二層(L2)方案:Sparkle、Igra L2 和Kasplex L2。 Sparkle 仍處於理論階段,Igra L2 仍處於開發階段。我們的分析重點放在Kasplex L2 上,因為它是迄今為止最接近成熟的實現。
Kasplex L2 是一種基於Rollup 的二層擴展解決方案,它依賴一級鏈進行交易排序和資料可用性,同時將計算負載轉移到二層。在這種設計中,Kaspa 的一級鏈負責確定交易的標準順序並確保其資料公開可查,而Kasplex L2 則執行EVM 字節碼以實現智慧合約功能。
技術設計與工作流程
Kasplex L2 的核心機制是在Kaspa 一級鏈交易的負載中嵌入EVM 字節碼。其流程可分為以下幾個步驟:
交易提交:使用者向Kaspa 一級鏈提交交易,其中負載包含EVM 字節碼。例如,負載可能編碼一個對HelloWorld() 智慧合約函數的呼叫。
一級鏈排序:Kaspa 的BlockDAG 在其DAG 結構內對交易進行排序,提供一個確定性的交易序列。
二層執行:Kasplex L2 作為索引器運行,掃描一級鏈上的帶負載交易,提取EVM 字節碼,按照指定順序執行它,並更新其狀態。無效或衝突的交易(例如試圖雙重支付的交易)將被丟棄。
交易提交機制
Kasplex L2 支援兩種交易提交方式,各有不同的影響:
規範提交(Canonical Submission):交易透過Kaspa 相容錢包直接提交到L1,這種方式無需中繼節點,符合區塊鏈系統的去中心化原則。
代理提交(Proxied Submission):交易透過中繼器(Relayer)提交,以相容於像MetaMask 這樣的EVM 工具。中繼者將交易轉送到Kaspa L1,確保其記錄後再由L2 處理。這種方式以使用者便利性為優先,但引入了對中繼者的依賴。
代理提交機制透過要求所有二層交易都必須錨定在L1 鏈上,從而保證了原子性。如果某筆交易在L2 上產生但尚未在一級鏈上有記錄,中繼者會將其提交到L1 鏈進行確認。此設計防止了繞過L1 鏈共識的「原生」的L2 交易,避免了潛在的安全風險。下圖說明了兩種提交路徑:
規範路徑:錢包→ Kaspa L1 → Kasplex L2
代理路徑:MetaMask → 中繼器→ Kaspa L1 → Kasplex L2
您可能會注意到,交易實際上是先在L1 上完成,然後再由L2 索引器進行解讀。這正是Kasplex L2 的工作原理:L1 先最終確定數據,然後L2 才讀取該交易並更新狀態。
與比特幣Inscriptions 的比較
為了更好地理解Kasplex L2,將其與比特幣Inscriptions(特別是BRC-20)進行比較非常有幫助。兩者都旨在透過利用L1進行資料儲存和排序,來擴展UTXO 模型區塊鏈的功能,但在實現方式和目標上存在差異。
相似點
L1中嵌入資料:Kasplex L2 和BRC-20 都將在一級鏈交易中嵌入資料。 BRC-20 使用比特幣的Tapscript(由SegWit 升級啟用)存儲代幣元數據,通常透過「提交(commit,數據哈希)→揭示(reveal,數據本身)→花費(spend,代幣轉移)」三步驟流程實現。 Kasplex L2 則將EVM 字節碼嵌入Kaspa L1交易的負載中,實現了類似的L2操作錨定。
L1作為可信資料來源:在兩種情況下,L1都提供了操作的排序。 BRC-20 依賴比特幣區塊鏈為代幣轉移排序,而Kasplex L2 則使用Kaspa 的BlockDAG 為智慧合約執行排序。
對索引器的依賴:兩者都依賴鏈下索引器進行處理。 BRC-20 的索引器解析比特幣交易以追蹤代幣餘額,而Kasplex L2 的索引器則執行EVM 位元組碼以維護智能合約狀態。
差異點
實現效率:BRC-20 的三步驟流程是對比特幣僵化協議的變通,而Kasplex L2 得益於Kaspa 更具合作性的L1,能夠在單筆交易負載中嵌入數據,從而減少了複雜性和系統開銷。
效能考量:比特幣的吞吐量約為每秒7 筆交易,平均每10 分鐘產生一個區塊,使得Inscriptions 過程既緩慢又昂貴。 Kaspa 的10 BPS 升級則提供了顯著的效能優勢,使Kasplex L2 能夠更有效率地處理更大規模的交易。
範圍與功能:BRC-20 主要聚焦於代幣發行和轉移,而Kasplex L2 支援完整的EVM 相容性,允許運行諸如DeFi 協議或NFT 市場等複雜智能合約。
協議彈性:比特幣的設計強調不可竄改性,迫使L2 解決方案必須繞過其限制。 Kaspa 儘管同樣採用UTXO 模型,但其L1 設計更為靈活,能夠與Kasplex 等L2 解決方案實現更緊密的整合。
這個比較凸顯了一個關鍵見解:儘管兩者在利用L1 進行資料儲存和排序的概念上相似,但Kasplex L2 利用Kaspa 的架構優勢,實現了比銘文更高的效率和更廣泛的功能。
評估Kasplex L2:優點與限制
從技術研究的角度來看,Kasplex L2 展示了以下幾個方面的顯著優點和限制。
優點
功能擴展:Kasplex L2 透過支援與EVM 相容的智能合約,成功擴展了Kaspa 的能力,使其能夠承載去中心化應用和代幣化等在一級鏈上無法實現的用例。
有效利用L1:Kasplex L2 借助Kaspa 的BlockDAG 實現交易排序和資料可用性,將二層的運算負擔降至最低,僅專注於執行層面。這種設計與Kaspa 的高吞吐架構高度契合。
公開可驗證性:由於所有交易都記錄在L1 上,Kasplex L2 上智能合約的執行可以透過按標準順序重新運行EVM 字節碼來獨立驗證,從而保證了透明度。
侷限與風險
索引器信任問題:L2 索引器在執行字節碼和維護狀態方面承擔關鍵角色,但存在索引器惡意行為的風險,例如在對外提供的Merkle 根的同時,私下維護偽造的狀態。解決這個問題需要建立去中心化的索引器網絡,並引入經濟誘因或懲罰機制。
重組挑戰:Kaspa 的BlockDAG 雖然高效,但因平行出區塊機制可能導致近期區塊的重組。這會迫使L2回溯並重新執行交易,增加了系統複雜性,同時在L2產生一定的零確認雙花風險。
對UTXO 模型區塊鏈的啟示
Kasplex L2 為UTXO 模型區塊鏈的可程式性擴展提供了一個案例研究,對比特幣等系統具有借鑒意義。 Kaspa 和比特幣在智慧合約支援方面都受限於UTXO 設計,但Kaspa 更高的吞吐量和更靈活的L1架構,為L2解決方案創造了更有利的環境。
對於比特幣而言,Kasplex L2 的設計提出了以下可探索方向:
中繼器集成:代理提交機制展示瞭如何將EVM 工具與UTXO 區塊鏈集成,這一理念可應用於比特幣的BitVM 等二層方案。
基於索引器的執行:利用索引器在鏈下執行計算並將資料錨定在L1 上的方式,與比特幣Inscriptions 模型相契合,或可啟發新的可編程性擴展思路。
從研究角度來看,Kasplex L2 是一次有價值的實驗,它顯示了UTXO 區塊鏈在吞吐量和協議靈活性方面的差異,對L2 解決方案的可行性產生了何種影響。其研究成果可為整個區塊鏈生態中,尤其是那些以去中心化和安全性為優先而非原生可程式性的系統提供設計參考。
結論
Kasplex L2 是一種技術上可靠的基於Rollup 的實現,透過利用Kaspa 的L1進行交易排序和數據可用性,實現了對EVM 相容智能合約的支援。我們的分析突顯了其在利用Kaspa 高吞吐量BlockDAG 方面的效率,以及透過EVM 相容性擴展功能的能力。我們認為Kasplex L2 對於UTXO 模型區塊鏈的L2解決方案研究具有實用的貢獻。與比特幣Inscriptions 的比較揭示了兩者在共用原則上的相似性,以及L1 設計對L2 可行性的影響。對於研究人員和開發者而言,Kasplex L2 提供了一個觀察可擴展性、可編程性與去中心化在區塊鏈系統中交匯的視角。
參考
Kasplex Github. [Online]. Available: https://github.com/kasplex/indexer-executor
Kaspa Research, “On the Design of Based zk-Rollups over Kaspa's UTXO-Based DAG Consensus,” 2024. [Online]. Available: https://research.kas.pa/t/on-the-design-of-based-zk-rollups-over-kas.pa/t/on-the-design-of-based-zk-rollups-over-kas .
特別鳴謝我們BitsLab 的研究員@ZorrotChen,感謝你為本文的貢獻!