詳解Cosmos 的垂直擴展之路

總覽

我們已經多次介紹過Cosmos, 和Polkadot 類似,Cosmos 這種Chain Agnostic Layer0 解決方案主要致力於解決其上搭建各種區塊鏈的水平擴展問題, 相較於以太坊, Solana 這種垂直擴展解決方案,Cosmos 可以理解為由各個獨立的zone 組成的水平擴展框架, 而Zone 可以理解為Cosmos 框架中各種驗證節點,安全假設,並且通過IBC 進行通訊的主權區塊鏈。

當然相較於以太坊這種節點參與驗證所有issue 的單片鏈(驗證者的容量緊張)而言,應用特定鏈的網絡更具有可擴展性,那麼具體怎麼理解呢?如果Zone 發生擁堵,或者區塊空間滿了,那麼另一條區塊鏈可以接入進來,實現水平化擴展。比如Osmosis 上應用百花齊放,導致鏈的擴展性遇到了瓶頸,那麼可以接入新的鏈進來,新的鏈可以有自己的驗證節點,也可以以消費鏈的形式,借用OSMO 現有節點安全性的方式接入。注意這里水平性擴展和IBC 的理解,IBC 解決了鏈與鏈,Zone 與Zone 間的通信問題,而不是水平性擴展。比如他們可以通過使用Rollups, 這些Rollups 通過Zone 作為結算層,實現相互通信。

如果一個Zone 開始擁堵,那麼他們也可以在執行層引入Rollups, 並且使用Celestia 作為數據可見層。如果某個區域開始過於擁擠,他們可以在執行層實施匯總,並讓他們使用Celestia 作為DA 層。除了可擴展性,其設計框架和開發者友好的模塊化框架也是其核心特色之一。開發者可以使用各種語言(Cosmos SDK 使用的Go 語言開發,合約卻是Rust;Goland 作為Cosmos SDK 的分叉,使用Go 語言的智能合約), 目前主要語言包括Rust, Golang, CosmWasm, JavaScript 和Solidity 也即將接入。 Cosmos SDK, Tendermint,IBC,CosmWasm 這些Cosmos 的核心技術堆棧方便了開發者,讓開發者可以專注於以應用為導向的特定區塊鏈的開發。

相較於以太坊的可組合性和可編程性,其強調了互操作性和主權性,應用鏈可以有更多靈活性和選擇性定制其性能,運行等參數。同時相較於POW 等概率性確認出塊模型,TendermintBFT 為主導的確定性確認機制下,其抗MEV 的設計也引入了交易排序機制(Tranasaction order mechainism, Osmosis 是這個機制的先行者),感興趣的朋友可以看加密經濟的MEV 博弈:Osmosis 的閾值加密技術vs Flashbot 的SGX?。

當然其設計的trade off 也體現在以下問題,在跨鏈安全正式上線之前(Q3,2022), 目前所有Zone 都獨立負責其安全性,而以太坊上的應用都依賴於其安全性。而我們之前也提到過,一個網絡的安全一定程度上取決於其質押代幣維護其網絡的價值,而當TVL 大於這個價值時會給網絡帶來潛在風險,所以對於一些長尾/新的應用鏈來說,如何找到合適的安全驗證節點,以及維持相對穩定的幣價,顯得尤為重要。

因此,跨鏈安全,Osmosis 的超流體質押,以及Celestia DA,共識以及共享安全都在試圖解決這個問題,對這塊感興趣的可以看 Cosmos 技術原理,設計框架以及生態全覽。同時,IBC 目前僅支持同構鏈的跨鏈通信,並且鏈內部可以支持同步交互,而對外,目前IBC 也正在接入其他以Polkadot, Near, EVM 等為代表的異構鏈,對內,IBC 上跨鏈賬戶模塊的上線也將支持不同鏈間的同步交互(目前Juno v8.00,Osmosis,Cosmos Hub 等為代表的鏈已經接入跨鏈賬戶模塊)。

所以儘管Cosmos 的設計存在一些問題,但目前都已經有了不錯的解決方案。既然水平化擴展得益於Cosmos 天然的“完美” 架構,我們本文將著重於其垂直擴展性的解決方案,其中包括Celestia,跨鏈安全,Dymension 等,部分內容來源於我們與相關的團隊的交流。

Celestia

Celestia 是目前模塊化區塊鏈中最引入註意的項目,致力於解決數據可見性的問題,我們也認為其提出的解決方案(Celestia 是否會一統天下不好說, 但選擇的方向是很有前景的)很有可能會成為以太坊和Cosmos 生態中的中流砥柱。那麼Celesita 究竟解決了什麼問題。

我們認為有幾個方向,1)擴展性,通過將數據可見層,共識層與執行層分離,通過數據可見採樣的方法,讓輕節點在無需執行交易的情況下可以確保生產者已經發布了全部的數據。這裡要理解的是Celestia 的輕節點不參與驗證交易,而只是需要確保數據可見並且參與數據排序。所以相較於其他L1 的鏈,Celestia 節點僅確保數據可見,並且通過Tendermint 共識協議進行交易排序。而無需像其他L1 一樣參與交易的驗證和執行。這個驗證交給Rollups 所依賴的結算層的驗證節點,而執行則在Rollups 的客戶端執行。

2)解決Rollups centric 的擴容路線,目前最大的問題就是calldata 上鍊太貴了,儘管目前以太坊的L2 垂直化擴展解決方案將交易搬到鏈下,並且通過壓縮數據和calldata 的方式將數據發送至L1(當然該壓縮技術相較於直接發送至L1,成本降低了不少),但是成本仍然很高,因此Celestia 試圖解決這個問題。舉個例子來說,對於以太坊Rollups 來說,他們可以選擇將Celestia 作為DA 層。 Celestia 會將這些處理證明(而非壓縮數據本身,這些證明可以理解為比上傳數據便宜的多的一籃子簽名和默爾克根,)發送至以太坊,並且通過批量處理的方式優化燃料費用,所以這比Rollups 將壓縮數據直接上傳以太坊要便宜的多,整個流程可以理解為以太坊Rollup -> Celestia -> 以太坊主網。當然這個問題也在以太坊2.0 中有相關的解決方案(EIP-4884), EIP-4844 引入了和調用數據不一樣的一種交易格式,帶有數據碎片的交易,從而進行存儲。數據碎片可以承載125KB 的數據,同時在和同等數據量的調用數據相比,便宜很多。這些數據碎片通常在一個月之後會被刪除,從而降低了存儲要求。而這一個月的時間足夠讓驗證者去完成數據採樣中的安全假設。具體可以看以太坊擴容終極解決方案- Danksharding(一),以太坊擴容終極解決方案- Danksharding 與MEV 設計(二)。

3)多虛擬機部署的靈活性,和以太坊上的Rollups 不同,Celestia 上的Rollups 不一定專門為EVM 兼容的欺詐證明/有效性證明實現。據我們所知,Celestia 已經和很多團隊開展了合作(還未官宣)。這打開了Celestia 可支持的虛擬機的設計空間,並且開放給更多的開發者。我們看到了Starkware、LLVM、MoveVM、CosmWasm、FuelVM 等擁有可支持操作,數據庫結構,交易格式,軟件語言的自定義虛擬機,在處理特定應用場景的同時也能夠實現最優的性能。針對於FuelVM, 我們可以關注最近上線的Fuelv1, Fuel 與今天的ORus 的最大區別在於,它運行一個全新的VM 架構,即FuelVM 及其工具鍊和語言。 FuelVM 具有WASM、EVM 和Solana 的SeaLevel 的特徵。 FuelVM 最引人注目的潛在方面是它在基於UTXO 的數據模型上執行。

關於未來多VM 的格局的想法我們也在 CosmWasm:進化的虛擬機與智能合約一文中進行了描述。當然還有輕鬆部署,有效資源定價等優勢,這裡我們就不一一討論了。

Celestia 中最核心的設計是其數據可見採樣(DAS),這也是欺詐證明/有效證明的前提。而DAS 的關鍵在於抹除碼技術,這意味著任何數據通過抹除碼技術,可以實現數據大小的翻倍,並且可以通過擴展數據的任何一定百分比的數據,對原有數據進行恢復。通過這種方式,Celestia 上的輕節點可以以數據採樣的方式,獲取小塊數據,並且基於較高的概率,保證數據的可見性。

當然為了確保足夠的數據樣本,從而用於恢復數據,這個抽樣過程應該保證參與節點的數量。 DAS 的一個核心特點是當參與節點採集的數量越多,採集的數據越多,那麼基於同樣的概率假設下,更多的數據可以被驗證。所以理論上,當參與的節點數量越多,區塊的大小可以更大,支持更多TPS,這個和單片鏈的設計不同,在單片鏈中,節點數量越多(全節點驗證),為了確保去中心化的實現,區塊大小/燃料限制的設置抑制狀態的增長,從而降低了全節點的成本。

當然這個設計的trade off 問題就是儘管輕節點可以享有與全節點同等的安全性,但是其受限於O(√n) 的帶寬成本,其中n 為區塊大小。所以Celestia 數據可見的吞吐量主要受限於以下兩點:

  1. 可以集體採樣的數據量

  2. 輕節點的目標塊頭大小

目前Celesita 上的節點類型包括兩種:

共識節點

驗證節點:參與共識。

共識全節點:同步區塊鏈歷史的Celestia-App 全節點。

數據可用性節點

橋節點:在數據可用性網絡和共識網絡之間橋接區塊。

全存儲節點:存儲所有數據但不連接共識。

輕節點:輕客戶端在數據可用性網絡上進行數據可用性採樣。

Optimint 是允許鏈作為Rollups 部署於Celestia 的產品。這些鏈可以啟動自己的P2P 網絡,將交易數據收集到區塊中,並且將他們發佈到Celestia 主網,負責數據可見和共識。 Optimint 本質上是一個供開發人員使用的框架,基於其搭建的鏈無需尋找安全的驗證器,Celestia 會為他們處理工作。

Optimint 可以理解為Celestia 的共識層,它提供了一個交易排序框架,可用於數據可用性層和結算層(但是不參與交易的驗證)。這個似乎和我們下文將介紹的Cosmos Hub 即將上線的跨鏈安全的理念相似,而Optiminent 是否會對跨鏈安全造成威脅,我們也將結合他們共識的差異性來判斷。但儘管如此,我們認為Celestia 的先進理念,以及其在Cosmos 和以太坊生態中的重要性要等到上線後才能得知(2023 年)。對Celestia 感興趣的,可以看我們的 Celestia 的模塊化架構和 Celestia 2 – 技術實踐。

跨鏈安全

跨鏈安全本質上可以理解為租借安全性,目前V1 版本中僅支持Cosmos Hub 的全部節點。當然對於模塊本身,是一個可插拔,可選擇的模塊。對於選擇接入的消費鏈而言,在V1 版本中,消費鏈必須強制接入175 個驗證節點,並且需要治理通過, 本質上是一種帶有准入機制的產品。消費鏈需要提交團隊的核心產品,和理念,在確保足夠的Atom 持有者投票通過後,才可以接入。同時,消費鏈也需要支付一定的費用(% 通脹費用)給到驗證者節點,這個比例也需要在治理提案中明確,同時在V1 中,消費鏈將75% 的燃料費給到國庫DAO,又多簽錢包管理,而25% 的燃料費給到Hub, 激勵驗證節點和質押者。

在我們之前的文章中也提到過,團隊可以選擇創建(體現了靈活性和可選擇性)“自定義消費鏈” 或“合約消費者鏈(通過CosmWasm 實現)”。兩者之間的主要區別在於驗證節點運行的二進製文件。合約消費者鏈中的二進製文件是標準的,而自定義消費鏈中,團隊可以靈活地自定義二進製文件以適應不同的交易費用和交易組裝。 ICS 總共會有三個版本,第一個版本是消費鏈的安全完全由Cosmos Hub 節點維護。而這些消費鍊是否能夠接入需要Cosmos Hub 通過治理根據他們的風險概況最終決定(比如是一條基於Cosmwasm 開發的消費合約鏈還是一條SDK 無變化的消費自定義鏈)。

因此,Atom 質押者需要決定他們質押的驗證節點,因為在享受額外收益的同時,也會面臨和其他POS 鏈一樣消費鏈節點宕機和不當行為風險。第一個版本中,消費鍊和Cosmos Hub 享有了共同的安全保證。但這種情況下的參與ICS 的節點所質押的Atom 價值和這些節點會面臨的Slashing 風險。同時,對於驗證節點來說,需要額外的硬件要求,從而保證工作量。而第二個版本中,消費鏈可以將自己的質押代幣與Cosmos Hub 的Atom 代幣相結合,並最終確定消費鏈的驗證器集組成。而V3 版本中,這種關係會進一步擴大和加深,可以在雙向大型網絡間實現橫向共享安全協議,Cosmos Hub 可以和任何其他Cosmos SDK 項目的驗證集共享Atom 價值,反之亦然,可以將其理解為主權網絡的相互安全保險。而在V3 版本中,Hub 驗證節點可以有權停止驗證哪條鏈。第二,三個版本相較於第一個版本,網絡安全將最終取決於消費鍊和供應鏈共同的安全。

而對於Cosmos Hub 的部分參與的節點來說,如果消費鏈上的唯一驗證節點惡意進行攻擊,會有女巫攻擊的可能性。目前可以關注的項目包括Quicksilver 和Neutron(P2P,一個大節點搭建的自定義合約鏈)。對於跨鏈安全想要進一步了解的,可以看深度分析Cosmos 的開拓者- Osmosis,繼IBC 之後,看ICS, ICA 如何重構加密行業和 Cosmos Thessis- Osmosis 應用主權鏈的崛起。

dYmension

dYmension 對於自己的定位,認為其對於rollups 的重要性類似於Cosmos 對於整個區塊鏈行業的重要性。 dYmension 是基於Cosmos 搭建的結算層和執行層,給Rollups 提供了靈活和可選擇的chain-agnostic 執行層環境。核心的產品(Rollups Development Kit) RDK 開發套件, 類似於CosmosSDK 模塊,目前除了dYmension, Celestia 和Cosmos 也在開發RDK。這個開發套件為開發者提供了在Cosmos 上輕鬆構建Rollups 的所有工具和基礎架構。 dYmension 目標為enshriend rollups,而非Discret Rollups。 Enshrined rollups 有更多的靈活性和選擇,為用戶提供了更多的靈活度,以及保證了最大化安全和穩定,而Arbitrum, Optimism, StarkNet, zkSync, Aztec etc. 等為代表的Disrete Rollups 則提供了好的技術路徑和品牌。 Polynya 認為短中期,discret rollups 會被大部分用戶接受,而長期來講,兩者方案可能可以實現共存。

同時,dyMension 也試圖在解決keeper 困境,女巫攻擊等問題。 Keeper 問題可以表現為,在某些情況下,套利者因為無利可圖,或者激勵不明確,所以針對某些倉位(比如MakerDAO 上120 美金的小倉位), 並不會進行清算,這導致了巨鯨可以將大倉位分散為不同倉位,通過付出一定成本,而保證倉位不受清算,影響網絡整體穩定性的可能性。當然對於這個門檻值,由於受到不同市場環境,時間等影響,並沒有辦法進行確認。儘管MakerDAO 清算2.0 升級有望使整個清算過程更加簡單和可預測。然但是實際情況要更為複雜,為了應對一些黑天鵝事件,這些清算者通常要提前幾個月準備複雜的交易和對沖系統,這對於散戶來說是無法想像的。

目前市場上大部分清算系統都是激勵給最快的清算者,這使得網絡暴露在大量的MEV 風險下,使得很多的收益給到了礦工,而不是真正的清算者,所以對於很多專業的做市商而言,他們也並沒有參與搭建相關的系統,並且參與整個清算過程。 Dymension 的具體解決方案目前還不能共享,但是我們在這個賽道也看到了很多其他的競爭對手,比如Kujira, 在脫離了Terra 生態的束縛後,在短短1 個月多的時間裡,完成了應用鏈的部署,並且迅速躋身於mapofzone 前十的位置。 Kujiara 的清算方法採用了不同的方法。平倉池由持有需要平倉頭寸的合約直接調用。確保可以在鏈上搜索可清算頭寸需要做更多的工作,但這意味著所有價值捕獲都交給了礦池參與者。

對於更複雜的頭寸,用戶可以輕鬆地在鏈上進行索引和搜索,Kujiara 會向機器人運行者提供一小筆“曲柄” 費用以幫助實際執行清算,但資金仍將來自清算池。所以它仍然是民主的,並且有足夠的規模來清算最大的貸款。項目的更多信息我們之後分享給社群小伙伴。 dYmension 仍然非常早期,我們將持續關注其之後的發展,本質上你可以理解為以太坊的執行層和結算層設計,但是他繼承了Cosmos 設計的精髓,比如Rollups 之間的互操作性(Thanks to the IBC and Cosmos 的原生互操作性)以及模塊化設計(可插拔以及輕鬆部署等開發者用好體驗)。當然還有可定制化執行環境的Saga,這裡我們就不詳細闡述了,各個解決方案的對比可以見下圖。

IjeqzxQlBMLzheOmJDXgLM1iM5TWaRKFAUhulfDf.png

總結

至此,我們梳理了市面上大部分的Cosmos 生態的垂直擴展性解決方案。當然我們目前以太坊-rollups centric 的地位仍然不可撼動,所以在我們關注Cosmos 的同時,我們也需要密切關注以太坊上的發展以及Solana 這種在執行層發力,創新(而非共識層)的公鏈。 Fuel V1 作為以太坊上推出的第一個ORUs,目前是唯一具有欺詐證明、不可變智能合約和無許可區塊生產, 為P2P 支付而設計的Rollups。而Fuel V2 將會是一個模塊化執行層,在UTXO 上提供以太坊式的智能合約,使用Ethereum/Celestia 進行結算、數據可用性和共識,切入多個應用場景。

我們看到共識層的創新很多,Bitcoin,EVM,Tendermint 他們都是建立底層共識算法維護網絡免受攻擊的系統。但是真正在現實工業應用中,執行層的需求量或許更大,用戶需要更便宜的燃料費用,網絡需要更高吞吐量和性能,Solana, Aptos/Sui 這種鏈也正試圖解決執行層問題。我們將在之後的文章中討論。

來源:mirror

Total
0
Shares
Related Posts