公鏈終局會是區塊鏈模塊化么?——以太坊模塊化及Celestia學習

2024-04-15 21:04:21

作者: E2M 研究員,Steven

前言

以太坊 VS Celestia + Cosmos,大概取舍的就是以下這幾項: 正統性+安全性高+去中心化程度高 VS 可擴展性高(成本低+性能好+迭代容易)+可交互性好 為什么後者能夠被很多用戶認可,早期主要是體量較小、發展時間較短的項目方和用戶的雙邊需求決定的:

  • 用戶:在很多用戶的認知當中,因為很多泛用戶對於產品是否好用、價格是否實惠的需求大於安全性(無論是Web2還是Web3);

  • 早期項目方:需要好的擴展性以隨時進行战略調整,更低的成本來使項目有更長久的生命力。 因此很難直接說 Celestia 等模塊化區塊鏈是“以太坊殺手”,而是有很大一部分人群對於高性能、性價比高、可擴展性好的Web3公鏈有需求。以太坊的正統性、安全性、頭部效應等依舊是不可撼動的,但不妨礙用戶在一些特定場景會有其他的選擇。

1. 背景

馬上要坎昆升級了,EIP-4844 Proto Danksharding 後預期進一步降低 Layer 2 的 Gas Fee。

以太坊在未來幾年將會完成分片方案 DankSharding(坎昆升級、EIP-4844 只是其中一個)。

然而,隨着 23 年 10 月 31 日 2 點 Celestia 主網上线,以及今年第一季度大概率能夠看到 Avail(原 Polygon Avail,目前已經分離成為一個單獨的項目),第三方的共識層+DA 層完全了超車,提前實現了以太坊未來幾年才能實現的模塊化目標,在坎昆升級前先一步大幅度降低了 Layer 2 的成本,成為很多 Layer 2 DA 層的選擇,蠶食屬於以太坊 DA 層的蛋糕。

此外,模塊化區塊鏈為未來公鏈的提供了更加多元的服務,Altlayer、Caldera 等 Raas 服務商成為了其中的受益者,希望借此能夠有更多垂類公鏈(應用鏈)湧現出來,為 Web 3.0 應用創造更好的土壤。

本文主要對區塊鏈進行拆解,初步學習一下模塊化區塊鏈項目 Celestia,同時對於以太坊坎昆升級中 Blob 有更深刻的一個認知。

1.1 起源

模塊化區塊鏈最早的概念是由 Celestia 聯合創始人 Mustafa Albasan 和 Vitalik 於 2018 年共同撰寫的《數據可用性採樣和欺詐證明》( Data Availability Sampling and Fraud Proofs )。這篇論文主要討論如何在不犧牲以太坊安全性和去中心化的情況下解決可擴展性問題。令人沒想到的是,不光為以太坊,同時為其他第三方 DA 層提供了技術方案。

大體邏輯就是全節點負責生產區塊,而輕節點負責驗證。

什么是數據可用性採樣(Data Availability Sampling,DAS)?

PS:該技術是 Celestia 技術的核心,無意間為第三方 DA 層提供了解決方案。

內容翻譯並改編自:Paradigm-joachimneu 撰寫的《 Data Availability Sampling: From Basics to Open Problems

參考以下小黑屋模型:

暗室中有一個公告板(請參見下面的漫畫)。首先,區塊生產者進入房間並有機會在公告板上寫一些信息。當區塊生產者退出時,它可以為驗證者提供一小段信息(其大小不與原始數據线性縮放)。你帶着手電筒進入房間,手電筒的光束非常窄,而且電池電量很低,所以你只能閱讀布告欄上極少數不同位置上的文字。你的目標是讓自己相信區塊生產者確實在公告牌上留下了足夠的信息,這樣如果你打开燈並閱讀完整的公告牌,你就能夠恢復該文件。

這個模型對於以太坊來說是天然適合且不需要進行太多優化的,因為以太坊的驗證者(驗證節點)足夠多。但是對於其他驗證節點相對較少的公鏈而言則需要以更高的費用和更復雜的驗證方法來進行安全性的保障。

那么對於驗證節點較少的項目方而言,會面臨兩種情況要么生產者表現誠實並寫下完整的文件,要么生產者行為不當並遺漏了一小部分信息,導致整個文件不可用。通過僅檢查少數位置的公告板,無法可靠地區分這兩種情況。

其中一個解決方案是:Erasure Correcting Reed-Solomon codes(糾刪裏德所羅門碼)

糾刪碼的工作原理如下: k 信息塊被編碼成一個更長的向量 n 編碼塊。比率 r=k/n 代碼的冗余度衡量代碼引入的冗余度。隨後,從編碼塊的某些子集,我們可以解碼原始信息塊。

簡單來講,就像兩點確定一條直线,在最初的 r、k、n 都確定的情況下,這條直线就確定了,而後想要復原這條直线,就只需要知道直线上的兩點。

裏德-所羅門碼就是根據這種邏輯上進一步復雜化的,一旦知道多項式的評估不同的位置,可以在任何其他位置獲得其評估(通過首先恢復多項式,然後評估它)。

回到我們的數據可用性問題:不再要求區塊生產者在公告板上寫下原始文件,而是要求它將文件切入塊,使用裏德所羅門代碼對它們進行編碼,例如速率,並寫出將編碼塊發布到公告板上。現在讓我們假設區塊生產者至少誠實地遵循編碼——稍後我們將看到如何消除這個假設。再次考慮兩種情況:要么生產者行為誠實並寫下所有塊,要么生產者行為不當並希望保持文件不可用。回想一下,我們可以從任何在......之外編碼塊。因此,為了保持文件不可用,區塊生產者最多可以寫入大塊。換句話說,至少現在,超過一半的編碼塊,將會丟失!

但現在這兩種情況,一個寫滿了的公告牌,和一個半空的公告牌,很容易區分:你檢查公告牌上的數字很小隨機採樣位置,如果每個採樣位置都有其各自的塊,則認為該文件可用,如果任何採樣位置為空,則認為該文件不可用。

什么是欺詐證明(Fraud Proofs)?

排除無效編碼的方法之一。這種方法依賴於這樣一個事實:一些採樣節點足夠強大,可以採樣如此多的塊,以至於它們可以發現塊編碼中的不一致,並發出無效的編碼欺詐證明,以將有問題的文件標記為不可用。這方面的工作旨在最大限度地減少節點必須檢查(並作為欺詐證明的一部分轉發)以檢測欺詐的塊數量

該方案最終還是犧牲了很小一部分安全性,極端情況下數據會丟失。

有意思的是,該方案為第三方 DA 層項目 Celestia、Avail 的誕生奠定了基礎,以太坊給自己創造了競爭對手。

2019 年,Mustafa Albasan 撰寫了《 LazyLegder 》將區塊鏈的職責進行了簡化,只需要排序和確保數據可用性,由其他模塊來負責執行和驗證(當時並沒有分成不同的層),從而使得區塊鏈的可擴展性問題得以解決。這篇白皮書應該算是模塊化區塊鏈的雛形。Mustafa Albasan 也是 Celestia 的聯合創始人之一。

Celestia 屬於第一個模塊化區塊鏈的解決方案,早期是作為一個執行層公鏈的存在,讓智能合約在其上面執行。Rollup 的擴容解決方案進一步明確了執行層的概念,鏈下執行智能合約,將執行結果批量壓縮成證明上傳到執行層。

關於 Rollup 證明的小補充

  • 欺詐證明 (fraud proof) 是一個接受計算結果的系統,你可以要求有質押存款的人籤署以下形式的消息:“我證明,如果使用輸入 X 進行計算 C,則會得到輸出 Y”。你會默認信任該消息,但其他有質押存款的人會有挑战計算結果的機會,他們可以籤名一條消息,稱“我不同意,輸出結果應該為 Z,而不是 Y。”僅發起挑战後,所有節點才會進行運算。這兩方中任何一方出錯都會失去保證金,並且所有基於錯誤計算的運算都會重新進行。

  • ZK-SNARKs 是一種密碼學證明形式,可以直接驗證“輸入 X 後,執行計算 C,會輸出 Y”。在密碼學層面,該驗證機制是“可靠”的,因為如果輸入 X 後,進行計算 C,結果不等於 Y,則無法通過計算生成有效性證明。即使運行計算 C 本身花費大量時間,該證明也可以很快得到驗證。 ZK 意味着可以更加具有效率的完成證明和驗證,所以 Vitalik 對於 ZK-Rollup 也是十分推崇,但是和分片一樣,技術難度遠遠大於欺詐證明,也需要多年的時間實現,同時更具有效率或許會帶來額外的成本。

1.2 區塊鏈不可能三角問題的權衡

區塊塊鏈不可能三角:可擴展性、去中心化、安全性。

簡單定義一個衡量標准的話,

  • 可擴展性:可擴展性(好) = TPS(高)+Gas fee(低)+驗證難度(低)

  • 去中心化、安全性:去中心化程度(高)+安全性(好) = 節點數量(多)+單個節點硬件要求(低)

這兩者一般只能選擇滿足一個條件,一定程度上犧牲另外一個,這也是為什么以太坊在可擴展性上的發展,是極為緩慢的;Vitalik 及以太坊基金會對於安全性和去中心化兩個特點有着最高優先級。

像一些傳統的高性能 Layer 1 ,例如:Solana(驗證者 1, 777)、Aptos(驗證者 127),在驗證者都不如以太坊節點數量(5, 000+)的情況下就开始追求可擴展性,代價就是對於節點的門檻要求高、運營成本貴;反觀以太坊在大幾十萬驗證者(目前 900 k+),確保了絕對的去中心化和安全性的情況下,才开始追求可擴展性,足以看出以太坊基金會對這兩個特性的重視程度。

Solana 驗證者數量:

數據來源: https://solanabeach.io/validators

以太坊驗證者數量:

數據來源: https://www.validatorqueue.com/

此外,相對於高性能 Layer 1 對於節點的嚴苛要求以及中心化的驗證者,以太坊未來的升級,還會進一步減少驗證者的驗證難度,從而使對於用戶成為驗證者的要求進一步降低。

1.3 數據可用性的重要性

通常,交易提交到鏈上,首先會進入 Mempool,由礦工“挑選”,打包成區塊,將該區塊拼接到區塊鏈上。包含這筆交易的區塊,會向網絡內全體節點廣播。其他全節點將下載這個新區塊,執行復雜計算,驗證其中每一筆交易,確保交易真實有效。復雜計算和冗余,是以太坊安全基礎,也帶來了問題。

1.3.1 數據可用性

節點通常有兩種:

  • 全節點——下載並驗證所有區塊信息及交易數據。

  • 輕節點——非完全驗證節點,易部署,只驗證區塊頭(數據摘要)。 首先,確保新區塊產生時,該區塊中的所有數據確實已發布,使得其他節點可校驗。若全節點未發布區塊中所有數據,則其他節點無法檢測,該區塊是否隱藏惡意交易。

節點需要獲取一定時間內的所有交易數據,並驗證,不存在已經確認但未驗證的交易數據。這便是通常意義上的數據可用性。若某個全節點隱瞞一些交易數據,其他全節點在校驗後,會拒絕跟隨此區塊,但僅下載區塊頭信息的輕節點則無法校驗,會繼續跟隨這條分叉區塊,影響安全。盡管通常區塊鏈會罰沒該全節點保證金,但這同樣會使質押給該節點的用戶受到損失。且當隱瞞數據的收益,超過罰沒成本,節點有動機隱瞞,屆時實際受損的,只會是質押用戶和該鏈其他使用者。

另一方面,若全節點部署逐漸中心化,節點間存在串通可能,會危及整條鏈的安全。

數據可用越來越受到關注,一方面因為以太坊 PoS 合並,另一方面則是 Rollup 發展。當前 Rollup 會運行中心化定序器(Sequencer)。用戶在 Rollup 上交易,定序器為交易排序、打包、壓縮,發布到以太坊主網,由主網全節點通過欺詐證明(Optimistic)或有效性證明(ZK)驗證數據。只要定序器提交的區塊所有數據真實可用,以太坊主網才可據此跟蹤、校驗、重建 Rollup 狀態,保證數據真實和用戶財產安全。

1.3.2 狀態爆炸與中心化

狀態爆炸是指,以太坊全節點積累的歷史和狀態數據越來越多,運行全節點需要的存儲資源越來越大,運行門檻提高,致使網絡節點中心化。

圖片來源: https://etherscan.io/chartsync/chainarchive

因此,需要某種方式,使全節點在同步以及驗證區塊數據時,無需下載所有數據,只需要下載區塊的部分冗余片段即可。

至此,我們明白了數據可用性很重要。那么,如何避免“公地悲劇”產生?即大家都清楚數據可用的重要性,但仍需要一些切實的利益驅動,讓大家使用單獨數據可用層。

就像每個人都知道保護環境很重要,但看到路邊的垃圾,“我”為什么要把它撿起來?為什么不是別人?“我”把垃圾撿起來,能得到什么好處?

1.4 簡單拆分區塊鏈

當發生鏈上行為時(例如:Swap、Stake、Transactions...)都要經過以下 4 個步驟

  • 執行:开始交易

  • 結算:驗證數據,處理問題

  • 共識:全都節點同意

  • 數據可用性:將數據同步到鏈上

以此為基礎,《LazyLedger》提出將區塊鏈模塊化,Celestia 則是將模塊化區塊鏈標准化:

執行層,Execution Layer

  • 職責:負責執行智能合約和處理事務所需,將執行結果以證明的形式交給結算層;同時也是面向用戶的各種應用部署的地方

  • 對應項目:各種 Stack,Op stack、ZK Stack、Cosmos Stack、以太坊上的 Layer 2

結算層,Settlement Layer

  • 職責:負責提供全局共識和安全性,驗證L2執行結果的正確性,更新用戶狀態;例如:用戶账戶的資產情況變動;鏈本身狀態狀態的更新(Token 轉账、新合約部署)

  • 對應項目:Ethereum、BTC

  • PS:節點越多,安全性越高

共識層,Consensus Layer

  • 職責:負責全節點的一致性,確保將新添加的區塊有效以及確定 memepool 裏的交易順序

  • 對應項目:Ethereum(信標鏈)、Dymension

數據可用性層,Data Availability Layer

  • 職責:負責保證數據的可用性,使得執行層和結算層能夠分別運行;執行層的所有原始交易確保在這裏進行存儲,結算層通過 DA 層驗證

  • 對應項目:Celestia、Polygon Avail、EigenDA(Eigenlayer 做的 DA)、Eth Blob+未來的 Danksharding、Near、中心化 DA

像 Celestia 是專注於數據可用性和共識層的 Layer 1 區塊鏈;Optimism 和 Arbitrum 是專注於執行層的 Layer 2 區塊鏈;Dymension 是專注於結算層。

2. 以太坊模塊化進展

2.1 當下架構

一圖概括,不多贅述。

2.2 長期發展——分片成多個工作鏈

以太坊從巴黎升級(及 Merge)开始,就在將自身逐步模塊化。

  • 共識層/結算層:信標鏈

  • 執行層:(完全外包給)Rollup

  • DA 層:Calldata(現在)/Blob(坎昆升級後)/Danksharding(未來/終局)

Vitalik 當下對於未來以太坊擴容方案核心之一就是 Rollup-Centric,潛在的終局可以參考以下這個圖:

分片成多個不同擅長的工作鏈,共識、安全性和結算層都繼承以太坊,每個鏈有對應的 Rollup 負責執行層。

目前研究下來,對於分片的技術難度這一部分公开資料較少,以太坊基金會認為需要未來幾年的時間完成完全的分片。

2.3 分片的過渡方案——EIP-4844 Proto-Danksharding/坎昆升級

Dencun 硬分叉已經確定將在 2024 年 3 月 13 日,具體對於 Gas fee 的降低和 TPS 的提升大致就可以有了結論。

坎昆升級最重要的就是加入了一種新的交易模式 Blob。

  • Blob 的一些特點:

  • 一個交易 2 個 Blob, 258 kb

  • 一個 block 最大可以有 16 個 blob, 2 mb,但是以太坊有一個 gas fee 基准线,大於 1 mb 的時候,這會導致下一個區塊鏈費率上升;理想狀態是 8 個 blob,即 1 mb

  • Blob 安全性等同於L1,因為也是全節點存儲和更新

  • 30 天後會自動刪除

  • Blob 用 KZG Hashmmitment 作為 Hash,用於數據驗證,類似 Merkle。理解為就是一個下載證明狀態的

  • 緩存空間佔據網絡資源相對較少,通過以太坊基金會通過 EIP-1559 (對不同類型的交易分开 gas fee)為 blob 設了一個相對較低的 Gas fee Blob 可以理解為在以太坊每個區塊上外掛幾個緩存包,交易數據都存到裏面供全節點驗證和挑战,然後 30 天後就會消失,最後傳一個 KSG 證明它被驗證並達成共識了。

  • 數據來源:https://etherscan.io/chart/blocksize

如何理解?

一個區塊現在是 150 kb 左右,一個 Blob 128 kb, 8 個 blob 大概 1 M 的空間,擴大了 6、 7 倍,此外 gas fee 通過 EIP-1559 降低;單筆交易要上傳的交易數據變少,單個區塊承載交易數量變多,最終達成了 TPS 上升和 gas fee 降低。

  • KZG 證明(KZG Commitments)

KZG 證明和默克爾樹(記錄以太坊的狀態)有點像,是記錄交易數據的狀態。

KZG 多項式承諾(KZG Polynomial Commitment)也被稱為卡特多項式承諾方案,是 Kate,Zaverucha 和 Goldberg 一起發表的。在一個多項式方案中,證明者計算一個多項式的承諾,並可以在多項式的任意一點進行打开,該承諾方案能證明多項式在特定位置的值與指定的值一致。

FRI 是 Starkware 採用的多項式承諾方案,可以實現量子級別的安全,但證明的數據量卻是最大;IPA 是 Bulletproof 和 Halo 2 零知識算法默認的多項式承諾方案,驗證時間相對較長,採用的項目有門羅幣,zcash 等,前兩者是不需要初始可信設置的。

在證明大小與驗證時間上,KZG 多項式承諾的優勢比較大,KZG 承諾也是目前應用最廣的一種多項式承諾方式。

2.4 小結

流程前後的變化 Rollup 原本要將打包壓縮好的交易:最重要的就是原本佔空間比較大的交易數據,變成了一個空間佔比很小、驗證時間很快的 KSG 證明。

2.5 其他觀點

以下引自: https://twitter.com/0x Ning 0x/status/1758473103930482783

坎昆升級之後 以太坊L2的 Gas 費真的會降低 10 倍以上嗎?

如今的市場有一個共識:在坎昆升級之後,以太坊L2的平均 Gas 費將降低 10 倍甚至更高。

在坎昆升級的核心協議 EIP 4844 的部署之後,以太坊主網將新增 3 個專門保存L2交易和狀態數據的 Blob 空間,且這些 Blob 擁有獨立的 Gas Fee 市場。預計 1 個 Blob 空間存儲的狀態數據最大規模約等於 1 個主網區塊,即~ 1.77 M。

目前以太坊主網每日 Gas 消耗為 107.9 b,其 Rollup L2們的 Gas 消耗佔比~ 10% 。

根據經濟學的供需曲线:

價格=需求總量/供給總量,

假設坎昆升級之後 Rollup L2們 Gas 需求總量不變,而以太坊可以出售給L2的區塊空間從現在 1 個區塊的~ 10% 變成 3 個完整的 Blob 區塊,這相當於區塊空間的供應總量擴展了 30 倍,那么 Gas 的價格將降低為原來的 1/30 。

但這個結論並不靠譜,因為其預設太多线性關系假設,並且抽象掉了太多應該納入計算和考量的細節因素,特別是 Rollup L2們之間對 Blob 空間的競爭與博弈策略對 Gas 價格的影響。

Rollup L2們的 Gas 費消耗,主要由數據可用性保存費用(狀態數據保存費)+數據可用性驗證費用兩部分組成。其中數據可用性保存費用,目前佔比高達~ 90% 。

坎昆升級之後,對於 Rollup L2們來說,新增的 3 個 Blob 區塊,相當於新增的 3 塊公地。按照科斯的公地理論,在以太坊 Blob 空間完全自由競爭的市場環境下,大概率會出現目前處於領先地位的頭部 Rollup L2們濫用 Blob 空間的現象。這樣可以一方面確保他們的市場地位,另一個方面可以擠壓競爭對手的生存空間。

下圖是 5 家 Rollup L2 1 年的利潤統計情況,可以發現他們月度利潤規模呈現明顯季節性變化特徵,而沒有明顯的整體增長趨勢。

在這樣一個有天花板限制的內卷市場,Rollup L2們處於一直高度緊張的零和博弈狀態,對开發者、資金、用戶和 Dapp 進行着激烈競爭。坎昆升級之後,他們激烈競爭的對象,又多了 3 塊新增的 Blob 空間。

在“肉就這么多,別人多喫一口,你就少喫一口”的市場情況,Rollup L2們之間很難帕累托最優的理想局面。

那處於領先地位的頭部 Rollup L2們,將如何濫用 Blob 空間呢?

個人猜測,頭部 Rollup L2們將修改序列器(Sequencer)的 Batch 頻次,將現在幾分鐘 1 次的 Batch 縮短到~ 12 秒 1 次,與以太坊主網出塊速度保持同步。這樣既可以提升自家L2上交易的快速確認性,還可以佔據更多的 Blob 空間以壓制競爭對手。

在這種競爭策略下,Rollup L2們的 Gas 費消耗結構中驗證費用和 Batch 費用將激增。這將限制新增的 Blob 空間對L2 Gas 費降低的積極影響。

結果如上圖所示,當 Blob 空間增加對L2 Gas 費降低的積極影響,會邊際遞減。而且達到某個閾值之後,將幾乎失效。

基於以上分析,個人判斷坎昆升級之後以太坊L2的 Gas 費將有所下降,但下降幅度會不及市場預期。

以上。拋磚引玉,期待更多討論。

3. Celestia

Celestia 為其他 Layer 1、Layer 2 提供可接入的數據可用層和共識,基於 Cosmos Tendermint 共識及 Cosmos SDK 構建。

Celestia 是 Layer 1 協議,兼容 EVM 鏈及 Cosmos 應用鏈,未來將支持所有類型的 Rollup,這些鏈可直接使用 Celestia 作為數據可用層,區塊數據將通過 Celestia 存儲、調用、校驗,再回到自有協議清算。

Celestia 也支持原生 Rollup,可直接在其上構建 Layer 2 ,但不支持智能合約,所以無法直接構建 dApp。

3.1 發展歷程

  • Mustafa Al-Bassam — 聯合創始人兼 CEO,倫敦國王學院計算機科學學士學位,倫敦大學學院計算機科學博士學位。Al-Bassam 16 時就是著名黑客組織 LulzSec 的創始人兼核心成員,並且長期從事黑客活動。2018 年 8 月,Al-Bassam 參與創辦了區塊鏈拓展研究團隊 Chainspace, 2019 年該團隊被 Facebook 收購。

  • 19 年 5 月,發表了《LazyLedger》論文,並於同年 9 月創辦了 LazyLedger(後改名 Celestia),擔任 CEO 至今。

  • 2021 年 3 月 3 日種子輪融資 150 萬美元,資方包括 Binance Labs 等。

  • 2021 年 6 月 15 日更新為 Celestia,並發布最小可行性產品,一個數據可用性採樣輕客戶端;2021 年 12 月 14 日开發網上线;2022 年 5 月 25 日,Mamaki 測試網上线

  • 2022 年 8 月 3 日推出 Sovereign rollup 方案 Optimint

  • 2022 年 10 月 19 日融資 5, 500 萬美元,Bain Capital 和 Polychain Capital 領投,Placeholder、Galaxy、Delphi Digital、Blockchain Capital、Spartan Group、Jump Crypto 等參投。

  • 2022 年 12 月 15 日推出新开發測試網 Arabica 和測試網 Mocha。

  • 2023 年 2 月 21 日推出模塊化 Rollup 框架 Rolkit。

  • 2023 年 2 月 28 日推出激勵測試網嘉華 Blockspace Race;7 月 5 日推出新測試網 Oolong。

  • 2023 年 9 月 26 日發布治理代幣 TIA。

3.2 Celestia 構成

Celestia 主要包含三個組件; Optimint、Celestia-app 和 Celestia-node。

Celestia-node 組件的任務是為此區塊鏈達成共識和聯網。 該組件確定輕節點和完整節點如何生成新區塊、從區塊中採樣數據以及同步新區塊和區塊頭。

使用 Optimint,Cosmos Zone 作為 Rollup 直接部署在 Celestia 上。Rollup 將交易收集到區塊中,然後將它們發布到 Celestia 以獲得數據可用性和共識,鏈的狀態機位於 Celestia 應用程序中,它是處理交易處理和質押的應用程序。

在 Optimint 上,將在同步區塊、數據可用性層集成、通用工具和索引事務方面進行改進。 在 Celestia 應用程序中,團隊將致力於交易費用的實施,並評估對 ABCI++ 的升級。 最後,該團隊希望使其網絡服務在 Celestia 節點上更加健壯,並完善輕節點和不良編碼欺詐證明。

  • 如何與 Rollup 交互?

Celestia 把 Rollup 分成了自己原生的,和以太坊原生的。前者非常簡單,Rollup 可以直接和 Celestia 打交道,先上傳數據,然後讓 Celestia 查看數據可用性,最後 Rollup 在看到新狀態之後再去自己做驗證,整個過程裏 Celestia 可以說十分清闲,它甚至連 Rollup 上傳的數據代表了什么都不知道(因為只有切片樣本),而 Rollup 找它來做數據可用性,也只是因為它更便宜,性能更好。

交互案例:

有一個堆棧,其中執行層不直接將塊數據發布到結算層,而是直接發布到 Celestia。在這種情況下,執行層只需將其塊頭發布到結算層,然後結算層將檢查某個塊的所有數據是否包含在 DA 層中。這是通過結算層上的合約完成的,該合約從 Celestia 接收交易數據的 Merkle 樹。這就是我們所說的數據證明。

而在以太坊當中,情況就復雜了一些,首先以太坊目前還沒有分片和 DAS,但 Rollup 們即便承受不住鏈上處理成本,也可以轉战鏈下,讓業內名氣最大的第三方審計機構做數據可用性,這成本甚至可以低到忽略不計。事實上,ZK 2.0 已經在這么做了,StarkEx 和 Plasma 這類更不用提。當然在 Celestia 看來,鏈下驗證畢竟是中心化的,不能排除作惡的可能。可即便是這些機構作惡,這些鏈下驗證者能做的也僅僅是把交易凍結住一段時間。

ZK 2.0 的計劃是為用戶提供更多選擇,如果用戶能忍受高成本,就是還是把數據可用性放到以太坊上做,如果用戶能接受交易在最壞情況下被凍結的假設,那 ZK 2.0 可以給一個超低 gas 出來。

  • 整體架構

Celestia 將作為模塊化堆棧中運行的所有各種類型的 rollup 之間的共享共識和數據可用性層。結算層的存在是為了促進其上各個 rollup 之間的橋接和流動性。還可能會看到主權匯總獨立運作,沒有結算層。

3.3 如何實現輕節點驗證的同時保證安全性

其 DA 層的兩個關鍵功能是數據可用性採樣(data availability sampling ,DAS) 和命名空間默克爾樹(Namespaced Merkle trees,NMT)。

DAS 使輕節點無需下載整個區塊的情況下能夠驗證數據可用性。輕節點因僅下載區塊頭無法驗證數據可用性,Celestia 使用二維 RS 糾刪碼編碼方案(2-dimensional Reed-Solomon encoding scheme)對區塊數據進行重新編碼以實現輕節點的 DAS。數據可用性採樣(DAS)的工作原理是讓輕節點對小部分塊數據進行多輪隨機採樣。隨着輕節點完成更多輪的塊數據採樣增加數據可用的信心。一旦輕節點成功達到預定的置信水平(例如 99 %)就認為數據可用。

NMT 使 Celestia 上的執行層和結算層僅下載與其相關的交易。Celestia 將區塊當中的數據劃分為多個命名空間,每個命名空間都對應構建在 Celestia 上的 rollup 等應用,每個應用僅需下載和自己相關的數據從而提高網絡效率。

Celestia 可以輕節點進行驗證,我們都知道節點越多,網絡越安全;輕節點還有優勢就是節點越多,網絡速度越快,成本越低等好處。

Celestia 通過主要通過數據可用性和糾刪碼識別隱瞞交易數據的區塊,同時也是 Celestia 能夠降低成本的關鍵。

3.3.1 數據可用性採樣(Data Availability Sampling,DAS)和糾刪碼(Erasure Coding)

該技術方案解決數據可用性的驗證問題,使得 Celestia 可以輕節點驗證。

同時使得 Celestia 的成本是亞线性的。

一般來講,區塊鏈網絡中的輕節點僅會下載包含區塊數據(即交易列表)承諾(即默克爾根)的區塊頭,這使得輕節點無法知曉區塊數據的實際內容,從而無法驗證數據可用性。

但是在應用**二維 RS 糾刪碼編碼方案(2-dimensional Reed-Solomon encoding scheme)**之後,利用輕節點進行數據可用性抽樣成為了可能:

  1. 首先每個塊的數據將被分成 kk 的塊,排列在 kk 的矩陣當中,然後通過多次應用 RS 糾刪碼就可以將這樣一個包含區塊數據的 kk 的矩陣擴展成為一個 2 k 2 k 的矩陣。

  2. 然後 Celestia 將為這個 2 k* 2 k 的矩陣的行和列計算出 4 k 個單獨的默克爾根作為區塊頭當中的區塊數據承諾。

  3. 最後在驗證數據可用性的過程當中,Celestia 的輕節點將對 2 k* 2 k 的數據塊進行採樣,每個輕節點會在這個矩陣當中隨機選擇一組唯一坐標,並在全節點中查詢該數據塊內容以及坐標處對應的默克爾證明,若節點收到了每個採樣查詢的有效響應,則證明了該區塊大概率具備數據可用性。

此外,每個收到正確默克爾根證明的數據塊都會被傳播到網絡當中,因此只要輕節點能夠一起採樣足夠的數據塊(即至少 k*k 個獨特的數據塊),完整的區塊數據就可以由誠實的全節點來進行恢復。

二維 RS 糾刪碼編碼方案

數據可用性抽樣的實現,保證了 Celestia 作為數據可用性層的可拓展性。因為每個輕節點將僅需採樣區塊數據的一部分,這降低了輕節點和整個網絡運行的成本。同時參與採樣的輕節點越多,他們可以共同下載和存儲的數據就越多,而這意味着整個網絡的 TPS 也將隨着輕節點數量的增加而提高。

  • 通過輕節點實現可擴展性

更多輕節點參與數據可用性採樣,網絡可以處理的數據就越多。這種可擴展性特徵對於網絡增長時保持效率至關重要。

可擴展性的決定性因素有兩個:集中採樣的數據量(可以採樣的數據量)和輕節點目標塊頭大小(輕節點的塊頭大小直接影響整體網絡的性能和可擴展性)。

針對以上兩個因素,Celestia 利用集體採樣的原理,即通過許多節點參與數據的部分採樣,可以支持更大的數據塊(即更高的每秒交易處理量,tps)。這種方法可以在不犧牲安全性的情況下擴展網絡容量。此外,在 Celestia 系統中,輕節點的塊頭大小與塊的大小的平方根成正比增長。這意味着,如果要保持與全節點幾乎相同的安全性,輕節點將面臨與塊大小的平方根成比例的帶寬成本。

Rollup 驗證區塊的成本增長為线性,成本會隨以太坊交互需求情況,上升會下降。

而 Celestia 的成本則是亞线性,成本最終會趨近於一個值,一個遠低於以太坊現有成本的值。在 EIP-4844 升級部署後,Rollup 數據存儲會從 Calldata 變為 Blob,費用降低,但仍舊比 Celestia 貴。

此外,糾刪碼的特性,使得萬一 Celestia 全節點發生大規模故障,輕節點們手中的若幹枝幹數據,可恢復交易數據,確保數據仍可訪問。

3.3.2 命名空間默克爾樹(Name-Spaced Merkle Tree)

該技術方案降低執行層和結算層的成本。

簡單理解 Celestia 通過命名空間默克爾樹排序,可以使得使得 Celestia 上的任何 rollup 都只能下載與其鏈相關的數據,而忽略其他 rollup 的數據。

命名空間默克爾樹 (NMT) 使匯總節點能夠檢索它們查詢的所有匯總數據,而無需解析整個 Celestia 或匯總鏈。此外,它們還允許驗證節點證明所有數據已正確包含在 Celestia 中。

Celestia 將區塊當中的數據劃分為了多個命名空間,每個命名空間都對應着正在使用 Celestia 作為數據可用性層的執行層和結算層,這樣每個執行層和結算層僅需下載和自己相關的數據就能夠實現網絡的功能。形象點說,就是 Celestia 為每個使用它作為底層的用戶都建了一個單獨文件夾,然後使用默克爾樹來為這些用戶做文件夾索引來幫助這些用戶找到並且使用自己的文件。

而這種能夠返回給定命名空間所有數據的默克爾樹就被稱作命名空間默克爾樹。這株默克爾樹的葉子將按照命名空間標識符來進行排序,並且修改了哈希函數,以便樹上的每一個節點都包含着其所有後代的命名空間範圍。

命名空間默克爾樹示例

當中的命名空間默克爾樹示例來看,包含八個數據塊的默克爾樹被劃分為了 3 個命名空間。

當命名空間 2 的數據被請求時,數據可用性層,也就是 Celestia 將會把 D 3 ,D 4 ,D5和 D 6 數據塊提交給他,並且讓節點 N 2 ,N 7 和 N 8 來提交相應的證明,從而來保證所請求數據的數據可用性。此外應用程序也可以來驗證是否收到了命名空間 2 的所有數據,因為數據塊必須和節點的證明相對應,其可以通過檢查對應節點的命名空間範圍來識別數據的完整性。 當中的命名空間默克爾樹示例來看,包含八個數據塊的默克爾樹被劃分為了 3 個命名空間。

當命名空間 2 的數據被請求時,數據可用性層,也就是 Celestia 將會把 D 3 ,D 4 ,D5和 D 6 數據塊提交給他,並且讓節點 N 2 ,N 7 和 N 8 來提交相應的證明,從而來保證所請求數據的數據可用性。此外應用程序也可以來驗證是否收到了命名空間 2 的所有數據,因為數據塊必須和節點的證明相對應,其可以通過檢查對應節點的命名空間範圍來識別數據的完整性。

3.3.3 Sovereign Rollup

基於 Celestia 的 Rollup 基本都算是 Sovereign Rollup。

  • 定義:只把材料上傳到L1(把L1當作數據庫)的 Rollup 叫做 Sovereign Rollup。換句話說,傳統 Rollup 是只負責執行,結算、共識、數據可用性都交給L1,Sovereign Rollup 是組分執行、結算,將共識、數據可用性將給L1。

  • 優勢——升級自由

由於和 Layer 1 沒有互通訊息或者資產,所以 Rollup 不會受L1的影響(例如L1的升級或者被攻擊),同時自身的拓展和升級也不再用顧慮L1(例如,硬分叉)

  • 劣勢——安全成本

有更高的安全風險,例如 DA 層偷懶

  • 此外,Sovereign Rollup 的成本更低,採納輕節點驗證(上一部分剛講)

以下部分具體參考: An introduction to sovereign rollups 一文了解 Rollup 的分類

  • 智能合約 rollup

像 Arbitrum、Optimism、StarkNet 等 Layer 2 我們稱之為智能合約 rollup,他們將所有的區塊數據都發布到結算層(像以太坊),把L2的狀態(L2各地址的余額)寫到L1上。結算層的任務就是給區塊排序、檢查數據可用性、驗證交易正確性。

例如以太坊:模塊化棧、智能合約 rollup 的職責是執行,然後將其他的工作卸給以太坊(包括共識、數據可用性、結算)。

這樣做的目的是L2 和 L1 就能互通訊息、互通資產:L1/L2 的 dApp 能同步訊息並合作、L1 的 ETH 能安全地在 L1/L2 之間流轉、L2 的 ARB/OP 也能安全地在 L1/L2 之間流轉。

智能合約 rollup 依賴於在結算層的合約從而驗。結算層上的智能合約成為了驗證 smart contrct rollup 上新交易正確性的依據。

因此智能合約 rollup 與結算層有最小程度的信任。

  • Sovereign rollup

Sovereign Rollup 便是拿掉 Settlement Layer(或是說將自己變成 Settlement Layer),單純將 L1 作為 Data Availability Layer 使用。

Sovereign rollup 將交易發布另一條公鏈上,這條鏈負責 DA 和排序,然後自己掌握結算層。

所以 sovereign rollup 取決於鏈本身的正確性,而不是 DA 層,因此需要有更強的信任。

  • 對比

  1. 驗證方式不同:智能合約 rollup 的交易是通過結算層的智能合約進行驗證;Sovereign rollup 的交易是通過自身的節點進行驗證。

  2. 具有升級的主權:智能合約 rollup 的升級取決於結算層的智能合約,升級 Rollup 需要更改智能合約(Arbitrium 的升級需要依賴於以太坊智能合約的迭代),團隊用多籤控制升級是很常見,因此束縛很多。

  3. L1本身能力有限:可能 L1 本身不支援復雜的運算來做到紀錄 Rollup 狀態並利用這個狀態進行訊息資產的互通等功能,例如像是在 Celestia 上只能單純放資料上去,或像是在 Bitcoin 上只能進行能力有限的運算,這樣的 L1 也就沒辦法成為 Settlement Layer;或許該 Rollup 本身就不需要另外一條鏈來作為 Settlement Layer,它有自己的原生代幣、生態,不需和 L1 互通資產。

  • 拓展-Sovereign Rollup 運作方式,為什么硬分叉等升級更加便利

Sovereign Rollup 單純將 L1 作為 Data Availability Layer,把資料上傳到 L1,仰賴 L1 確保資料可得且資料排序不會改變。

圖片來源: https://www.maven11.com/publication/the-modular-world

Sovereign Rollup 的節點則靠著讀取 L1 上的資料並進行解讀,來算出該 Sovereign Rollup 當前的最新狀態(智能合約 Rollup 可以直接獲得狀態)。「解讀、算出」代表的其實就是 Sovereign Rollup 的共識規則。(State Transition Function:怎么從 L1 資料中篩選出符合該 Sovereign Rollup 格式、規則的區塊和交易、篩選後怎么驗證這些區塊和交易、驗證後怎么執行這些交易來算出最新的狀態。)

Sovereign Rollup 節點從 L1 資料中篩選出自己的區塊,並解讀、算出最新狀態

如果兩個 Sovereign Rollup 的節點是不同版本,就可能會解讀出不同資料、或是算出不同的最新狀態,也因此這兩個節點就不會在同一條鏈上,它們各自所看到的其實就是兩條分岔的鏈的其中一條。(例如:以太坊硬分叉前和後成為了 ETC 和 ETH)

不同版本的節點可能會得到不同的狀態,也就分岔到不同的鏈上

這其實就和你跑不同版本的 Ethereum 節點一樣,兩個版本有可能不會是同一條鏈。例如硬分叉後,忘記更新節點版本、不愿意更新節點版本的人就會自然地留在原本的鏈上(例如 ETC、ETHPoW),而更新節點版本的人就會在新的鏈上(ETH)。

因此,Sovereign Rollup 中大家可以各自按照自己群體的(社會)共識,去選擇節點版本、去解讀資料。如果今天該 Sovereign Rollup 社群出現像是 ETHPoW v.s. ETH 的分歧,那就是大家各走各的,選擇不同的節點版本去解讀資料,但資料還是原本那一份,沒有改變過。

當然分叉後,各自版本的節點就會上傳符合自己規則的資料到 L1,屆時兩邊都會直接過濾掉對方上傳的資料。

在中間的時間點下面的節點分岔到了 v1.1.2 版,之後彼此的區塊就完全區分开來。

3.3.4 節點要求

受益於 Celestia 的網絡架構,Celestia 的輕節點運營硬件要求較低,最低僅需配置一個 2 GB RAM 的內存,單核的 CPU,超過 25 GB 的 SSD 硬盤以及上傳下載 56 Kbps 的帶寬。除了輕節點以外,Celestia 的橋節點,全節點,驗證節點以及共識節點的要求相較於其他公鏈來講也不算高。因此未來 Celestia 主網上线後,預計網絡的各類型節點數量將進一步上升,網絡的去中心化程度也將得到進一步的提升。

3.4 經濟模型

從代幣經濟學來看,Celestia 的代幣分配投資人和團隊將分得超過一半的代幣,且這些代幣當中的 33% 將在一年以後得以解鎖。

Celestia 的代幣需求基本符合一個正常的公鏈代幣的設計思路,TIA 將承擔共識,費用和治理的職能,同時以通脹的形式增發。

目前看起來這種代幣的設計較為中性,代幣本身無法為網絡提供更多的賦能。

3.5 商業模式

Celestia 主要通過兩種方式獲得收入:

  • 支付 blob space 費用:Rollup 使用$TIA 付費,將數據發布到 Celestia 的 blob space。

  • 支付 gas 費用:开發人員使用 TIA 作為 Rollup 的 gas 代幣,類似於基於以太坊 Rollup 的 ETH。

3.6 數據成本對比

Numia Data 最近發布了一篇名為《 The impact of Celestia’s modular DA layer on Ethereum L2s: a first look 》的報告,其中比較了過去六個月內,不同 Layer 2 (L2) 解決方案在以太坊上發布 CallData 所產生的成本,以及假如它們使用 Celestia 作為數據可用性(DA)層可能產生的成本(在此計算中,將 TIA 價格假設為 12 美元)。這份報告通過比較這兩種情況下的成本差異,明顯展示了像 Celestia 這樣的專用 DA 層對於降低 L2 Gas 費用的巨大經濟效益。

Rollup 成本拆解:

固定成本

  • 證明成本(在 zk rollups 的情況下)= Gas 範圍,通常基於 rollup 提供商

  • 狀態寫入成本 = 20, 000 Gas

  • 以太坊基礎交易成本 = 21, 000 Gas

可變成本

  • 將 calldata 發布到以太坊的每筆交易的 Gas 費用 =(每字節數據 16 Gas)*(平均交易大小(以字節為單位))

  • L2 Gas 費=通常相當便宜,在 Gas 單位的一小部分範圍內。

數據來源:https://medium.com/@numia.data/the-impact-of-celestias-modular-da-layer-on-ethereum-l2s-a-first-look-8321 bd 41 ff 25

4. 其他

4.1 Celestia 生態

4.2 不同項目構成

  • Celestia = Tendermint (cosmos) + 2d 糾刪碼 + 欺詐證明 + Namespace merkle tree + IPFS 基礎設施(數據存儲用的 IPFS Blockstore,傳輸網絡用的 IPFS 的 Lib p2p 與 bitswap,數據模型用的 IPFS 的 Ipld)

  • Polygon Avail = Substrate(Polkadot) + 2d 糾刪碼 + KZG 多項式承諾 + IPFS 基礎設施

  • ETHprotoDankSharding = Blobs 數據(數據可用性的存儲,替換現有的 calldata)+ 2d 糾刪碼 + KZG 多項式承諾(未定,方案目前仍在討論)+ ETH 基礎設施

5. 思考

整體看下來 Celestia 非常注重可擴展性、可交互性和靈活性。以太坊像一家龐大的上市公司,無法做到像 Celestia 這種初創企業的隨心所欲,只能如履薄冰,緩慢的迭代;而模塊化區塊鏈給了很多垂類項目後來者居上的機會。

但是和很多公鏈一樣,目前加密世界的創新屬於停滯的一種狀態,絕大多數項目方都依賴於經濟模型,或許對於產品底層的性能如何需求不夠,導致大家對於 Celestia 沒有足夠需要,自身經濟模型無法正向循環也是潛在的風險,最終成為個鬼鏈。

附錄

https://mirror.xyz/0x1c4ff7B151009a2C2B92BF60F91b5b836d1586A6/_VqqbsalP4lg3VSIsAnCnxmJy7yWXZvfp4TbfTPCC-c

https://celestia.org/learn/sovereign-rollups/an-introduction/

關於 E2M Research

From the Earth to the Moon

E2M Research 聚焦投資和數字貨幣領域的研究與學習。

文章合集 : https://mirror.xyz/0x80894DE3D9110De7fd55885C83DeB3622503D13B

關注推特 : https://twitter.com/E2mResearch

音頻播客: https://e2m-research.castos.com/

小宇宙鏈接: https://www.xiaoyuzhoufm.com/podcast/6499969a932f350aae20ec6d

DC鏈接: https://discord.gg/WSQBFmP772

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

推薦文章

動區週報:比特幣新高後回落、鮑爾不急降息 市場情緒轉變、迷因幣火熱…

本週(11/10-11/16)重要大事速覽 比特幣動態 :鮑爾放鷹「 不急降息 」,比特幣價格一度...

Arthur Wang
4 2小時前

繼LTC降級memecoin後,“誰是meme”遊戲开始流行?

隨着美國大選結束,比特幣 Meme 熱潮正在加速蔓延,吸引了大量資金和社區的關注。從特朗普宣布馬斯...

星球日報
4 2小時前

復盤DEXX用戶資金大規模被盜事件,鏈上安全非兒戲

今晨,本應結束一晚上忙碌“打狗”工作的各大 Meme 社區成員因為一則消息瞬間炸开了鍋。 鏈上交易...

星球日報
6 2小時前

SUI新高之際,從用戶角度談談三大Move公鏈區別

11 月 14 日,SUI 升破 3.5 USDT,幣價再創歷史新高;Bitwise 將在瑞士證券...

星球日報
4 18小時前

Hack VC:模塊化是個錯誤嗎?以數據為依據審視以太坊的這一战略

撰文:Alex Pack 及 Alex Botte,Hack VC 合夥人 編譯:Yangz,Te...

TechubNews
4 18小時前

除了 TON, 哪些公鏈在爭奪 Telegram 用戶?數據表現如何?

作者:Stella L ( [email protected] ) 在 2024 年...

陀螺財經_Footprint_Analytics
4 18小時前