全面對比四大 DA 層:Avail、Celestia、以太坊、EigenDA
撰文:Avail Team
編譯:Modular 101
不同的數據可用性層之間有什麼區別?在這篇文章中,我們將探討各種方式的優勢和劣勢。
在最近幾年中,由於對執行擴展(scaling execution)的關注增長,Layer2 開始得到關注到採用。與此同時,越來越多的參與者面臨著由於有限的區塊空間和高昂的成本帶來的增長挑戰。他們開始意識到,為了有效地擴大區塊鏈的規模,一個可以擴展的數據可用性層是非常關鍵的。這也意味著他們需要一個既能節省成本又有更大區塊空間的基礎技術層,以支持各種不同類型的 rollups。
Avail 和其他幾個團隊正在從零開始構建可擴展的數據可用性解決方案,而其他團隊,如 Ethereum,正試圖增加現有區塊鏈的數據可用性容量。不管採取什麼方法,都存在一個事實 ------ 開發人員今天選擇的基礎層將決定他們在未來幾年的競爭優勢。
Avail 是正在迅速發展的模組化生態的一個組成部分,它的目標是提高區塊鏈的數據可用性。除了 Avail 外,還有其他的數據可用性(DA)解決方案,如 Celestia 和 EigenDA,它們也在為相同的目標努力。各種解決方案都在採用不同的策略和技術路徑來實現區塊鏈的可擴展性。作為其中的一個例子,Ethereum 目前正在採用一種名為 Proto-Danksharding 的技術,這也被稱為 EIP-4844。這項技術是 Ethereum 向實現其長期目標 ------ 完全的 Danksharding 技術 ------ 邁出的一步。
這篇文章將評估每種方法的優勢和劣勢。我們將突出不同的設計選擇,以方便大家全面了解。並幫助開發者找到最適合他們的 DA 層。
讓我們先從概述開始,然後深入到每一個類別:
網絡安全
當考慮基礎層時,網絡的安全性和韌性是首先引起關注的事項。以下是檢查網絡強度時的關鍵因素。
共識機制
在共識機制中,活躍性和安全性之間存在一個基本的困境。活躍性確保交易迅速處理並且網絡保持運行,而安全性保證交易準確且安全。不同的區塊鏈系統為其獨特的用例作出不同的選擇,以達到適當的平衡。
Avail 使用了 Polkadot SDK 的 BABE 和 GRANDPA 兩種共識機制。BABE 主要用於生成區塊。為了確保網絡的活躍性,它與驗證節點協調,確定哪個節點將成為新的區塊生產者。GRANDPA 則主要負責區塊的最終確認。當超過三分之二的驗證者確認一個鏈包含特定的區塊時,GRANDPA 允許確認前面所有的區塊到這個特定區塊的區塊。通過結合這兩種機制,Avail 形成了一種混合型的帳本,這增強了其網絡的彈性,使其能夠在網絡臨時分區(temporary network partitions)或有大量節點故障的情況下仍然正常運行。
Avail 的設計選擇與 Ethereum中使用的 Casper 和 LMD GHOST 相似。LMD GHOST 是 Ethereum 的區塊生產引擎,它依賴於 BABE 那樣的概率性的終結性,而像 GRANDPA 那樣的 Casper FFG 是一個提供終結性保證的終結機制。
Celestia使用 Tendermint 的設計選擇使他們能夠在生成時確定區塊。然而,這樣的選擇的權衡是當超過三分之一的運營商或驗證者停機時,鏈存在可能會被停止的風險。同樣重要的是需要注意到區塊的終結性並不保證數據的可用性。Celestia 採用了一種基於欺詐證明(fraud-proof)的設計。在這種設計中,即使一個區塊已經迅速地獲得了終結性(也就是已被確認並且不會被更改),用戶仍然需要等待直到他們確信相關的數據是可用的。
數據可用性委員會(Data Availability Committees,簡稱 DAC)是一組負責確保數據可訪問或驗證數據可用性的組織或實體。當他們確認數據是可用的時,會使用特定的加密簽名來表示這一確認。這意味著,當超過大多數的委員會成員同意某數據是可用的時,他們會採用一個特殊的數字簽名來證明這一事實。
EigenDA 是這樣一個 DAC,它不直接存儲在 Ethereum 的主鏈上,因此被稱為「鏈下」(off-chain)DAC。Ethereum 網絡中的驗證者有選擇加入 EigenDA 的權利。當 DAC 成員確認某些數據的可用性時,他們會提供一種基於智能合約的證明或聲明。這種證明表明他們已經驗證了數據的真實性或完整性。除此之外,為了確保數據的順序或結構性,DAC 成員還依賴於一個外部的、獨立的服務來對數據進行排序或組織。
去中心化
當考慮到網絡的安全性時,有兩個關鍵因素需要考慮:總的質押金額和這些質押的分布。去中心化的程度,也就是質押金額如何均勻分布,直接影響了一個網絡的安全性。潛在攻擊的成本被用來評估網絡的安全性。這是因為,如果質押數額在更大的驗證者集合中均勻分布,那麼試圖攻擊網絡的破壞者就需要說服更多的節點來獲得同樣的質押數額。
Avail 從 Polkadot 繼承了提名權益證明(NPoS),這使得它能夠支持多達 1,000 個驗證者。由於其採用順序的 Phragmén 方法,一個多贏者的選舉方法,NPoS 具有有效的獎勵分配,可以減少質押中心化的風險。
Avail 在所有數據可用性的解決方案中是獨特的,因為它有能力從其輕客戶端的 P2P 網絡中進行數據抽樣,而不是像其他系統那樣在網絡出現問題或瓶頸時完全依賴於全節點來獲取數據。這一特點讓 Avail 與其他現有和即將推出的數據可用性解決方案產生區別。因為擁有這一特性,Avail 提供了一個高效且可靠的備份機制,即使在出現故障的情況下也能確保數據的可用性。這進一步增強了 Avail 數據可用性網絡的穩定性和抗干擾能力。
Celestia採用 Tendermint 作為其共識協議,驗證者集合最多可達數百。
而Ethereum作為一個單一的區塊鏈,以其超過 900,000 的驗證者節點作為安全性的黃金標準,但網絡的分布程度在這個數字中並沒有得到充分體現。
相比之下,DAC會通常只包括少數幾個負責確認區塊鏈數據可用性的節點。
重要的是要注意,重新質押的過程並不是依賴於從 Ethereum 獲得的安全性,它的安全性主要取決於在該平台上重新進行的 Ether 質押的總量。這也就是說,重新質押本身對於提高該平台的安全性並沒有直接的幫助,只是利用了鎖定在 Ethereum 上的一部分已有的質押。
EigenDA 從其全節點聚合簽名。然而,它通過智能合約進行驗證的聲明,在與數據可用性抽樣相比,不能提供同等級別的數據可用性(DA)保證。EigenLayer 採用了重新質押的策略,它使用了那些已經在 Ethereum 上被鎖定的資金或資產來進行質押,以支持其自身的網絡。但這種做法受到了一些批評,因為它可能會重複使用某些驗證者並導致共識機制的過載。
執行環境的額外消耗
過去十年,帶有智能合約功能的單一區塊鏈引入了突破性的創新。然而,即使是這個時代的尖端技術,如 Ethereum,其中數據可用性、執行和結算被合併為一體,也帶來了顯著的可擴展性限制。這些限制促使了 Layer2 技術的崛起,將執行轉移到鏈下,並促進了如 EIP-4844(也被稱為 Proto-danksharding 和 Danksharding)這樣的改進提議的發展。
神聖的智能合約定義了狀態,並充當著到 rollups 的橋樑。在這種方法中,Ethereum 作為驗證 rollups 準確性的權威和標準。
Avail 將執行和結算從基礎層分離,並允許 rollups 直接向 Avail 發布數據。該模組化方法的優勢在於,那些基於 Avail 的 rollups 可以利用 Avail 的 P2P 輕客戶端網絡來輕鬆地驗證其狀態。此外,如果這個網絡被用於傳遞執行證明,那麼 rollups 就有能力自行進行升級,而不必依賴於智能合約或基礎層來定義其狀態。這為 rollups 提供了更大的靈活性和自主性。這種新方法為開發者提供了一個可以根據需求進行擴展的基礎層,給予他們選擇任何執行支持層(supported layer)進行結算的橋接選項。
Celestia 採用了與 Avail 類似的方法。唯一的區別是其輕客戶端尚不能在全節點宕機時支持網絡。
EigenDA 也沒有一個固定的結算層。
發展潛力
除了數據可用性(DA)層的安全性和韌性外,容納在其上建設的 rollups 和區塊鏈的增加需求的能力對它們的成功至關重要。讓我們看一下需要考慮的一些關鍵因素。
有效性證明
當討論有效性證明時,理解數據可用性層中欺詐證明和有效性證明的權衡是至關重要的。Avail 使用的 KZG 承諾是一種用於確保 DA 的有效性證明,它減少了內存、帶寬和存儲需求,並提供了簡潔性,這意味著證明的大小不受多項式複雜性的影響而固定。這使 KZG 承諾成為基於零知識的區塊鏈的理想選擇,在這裡效率、隱私和可擴展性都很重要。
此外,Avail 的輕客戶端可以迅速訪問和抽樣數據,並確保正確的塊編碼,並在新塊最終確定時提供數據可用性保證,而欺詐證明則需要等待挑戰期結束。KZG 承諾和 Avail 的輕客戶端的結合加速了在 Avail 上的驗證過程,允許在其上建設的 rollups 或主權鏈利用其快速的驗證過程,並為未來數年的區塊鏈設計創造了可擴展性和靈活性。這種驗證方法是 Avail 與類似於 Celestia 的 DA 層區別開來的關鍵因素。
Celestia 使用安全的哈希函數,這比 KZG 承諾生成要快得多。這裡的權衡是他們必須依賴欺詐證明來確認擦除編碼的準確性,這引入了確保數據可用性保證的潛在延遲。
Celestia 的輕節點不能明確確認數據是否可用,或者是否還有尚未接收到的欺詐證明。換句話說,欺詐證明的使用降低了網絡的輕節點在抽樣後明確確認數據可用性的能力,因為樂觀驗證的一部分需要一個必要的挑戰期。
EigenDA 將使用 KZG 承諾並只下載少量數據,而不是完整的數據塊,並採用有效性證明。他們的方法是使用擦除編碼將數據分割成更小的塊,並要求運營商只下載和存儲一個塊,這是完整數據塊大小的一部分。
至於 Ethereum,雖然當前的版本並未使用有效性證明,但 EIP-4844 和完整的 Danksharding 在實施時將採用有效性證明。
擴展的能力
由於 Ethereum 上的限制,如昂貴的成本和慢速的交易,導致 L2s 的激增。它們已經成為 Ethereum 的執行層,推動對區塊空間的需求增加。目前,將數據發布到 Ethereum 的成本估計占 rollups 總成本的 70% 到 90%。這為在 Ethereum 上開發的驗證者和應用帶來額外的成本。
像 Avail 和 Celestia 這樣的基礎層旨在解決這個問題。它們針對數據可用性進行了優化,隨著需求的增加有能力動態地擴展區塊大小。通過結合輕客戶端和數據可用性抽樣(DAS),它們在應對其網絡需求增加時有擴展數據可用性區塊大小的優勢。這意味著,隨著區塊空間的增加,建立在其上的應用仍然不受影響,因為這些網絡內的輕客戶端可以執行 DAS,而無需下載整個區塊。這一獨特的能力使它們與單一區塊鏈區別開來。
到 2023 年 9 月為止,Ethereum 擁有最大的社區,市值為 1910 億美元。雖然建立在 Ethereum 上的協議享受規模經濟,但由於過去幾年區塊空間有限,它們也面臨著昂貴的交易成本。在 rollups 的增長中,用戶數量和交易量都已達到頂峰,rollups 已成為執行的最佳選擇。隨著區塊鏈技術變得更加普及,對區塊空間的需求將只會繼續增加。
雖然 DACs 由於其簡單的中心化方法可以擴展,一些 rollups 使用了 DACs 作為臨時措施,直到它們設計出一個去中心化的 DA 解決方案。
數據可用性抽樣
Avail 和 Celestia 都支持帶有數據可用性抽樣(DAS)的輕客戶端,允許輕客戶端提供最小信任的安全性。正如前面所提到的,主要的區別是如何進行驗證,以及在出現中斷或瓶頸的情況下,Avail 的輕客戶端 P2P 網絡如何替代完整節點以支持網絡。
相比之下,經過 EIP-4844 後的 Ethereum 將不配備 DAS。這意味著它的輕客戶端將沒有這種升級的、最小信任的安全功能。更進一步,Ethereum 的 DA 解決方案包括其智能合約環境。在完全的 danksharding 中,將實施 DAS 來擴展 blob 空間,預計這將在未來的幾年內實現。
EigenDA 的安全性建立在信任少數的完整節點或其他實體上,因為它沒有數據可用性抽樣(DAS)。協議的完整性依賴於委員會中的絕對多數是誠實的,以及至少還有一個實體擁有數據副本,類似於樂觀構造。儘管雙重法定數方法比單一法定數提高了安全性,但它仍未達到通過 DAS 進行獨立驗證的理想情況。
成本
與擁堵和需求相比,Ethereum 是最昂貴的解決方案。即使有了 EIP-4844,Ethereum 仍然會很昂貴,因為它只提供了一次性的區塊空間增加。DACs 是最便宜的,但這是以採取更中心的方法為代價的。
由於沒有執行層,Avail 和 Celestia 將能夠保持低成本。他們還可以輕鬆增加區塊空間,而今天的 Ethereum 在沒有 DAS 的情況下是不能的。
至於 EigenDA,它表示將引入一個靈活的成本模型,既有可變費用也有固定費用,但其實際成本尚未公布。
性能亮點
現在我們已經檢查了增長潛力,我們將看一下這些區塊鏈的性能。
區塊時間
請參閱上面的表格,查看每個所需的構建區塊的時間。
僅通過構建區塊所需的時間來衡量區塊鏈的性能是單一的,因為這個指標只涉及從區塊確認到驗證完成的過程的某一個方面。即使有一個提供即時確定性的共識機制,當使用基於欺詐證明的方法時,DA 驗證可能需要時間。
Ethereum 使用 Casper 每 64-95 個 slots 最終確定一個區塊,這意味著 Ethereum 區塊的確定性大約是 12-15 分鐘。
EigenLayer 不是一個區塊鏈,而是一組在 Ethereum 上運行的智能合約。這意味著它繼承了與 Ethereum 相同的確定性時間。所以,如果用戶向 rollup 發送一個交易,rollup 將需要將該交易的數據轉發給 EigenLayer 以證明數據是可用的。然而,只有當 Ethereum 區塊被最終確定時,交易才會被認為是完成的,即使 rollup 已經接受了交易,這也會導致延遲。通過提供更快的 DA 保證與加密經濟措施來規避問題的方法已經在討論中。
區塊空間
隨著 rollups 成為未來的執行層,對區塊空間的需求將只會增加。像 Avail 和 Celestia 這樣的 DA 層由於它們的模組化設計將能夠滿足需求,而 Ethereum 的區塊空間增長將受到限制。Avail 的 Kate 測試網已將塊大小配置為 2MB,該塊大小被複製並進行擦除編碼成 4MB。Avail 的獨特之處在於其使用高效的客戶端驗證技術增加區塊大小的能力。通過內部基準測試,Avail 已經測試了高達 128MB 的區塊大小,而沒有困難。
Celestia 也能隨著對區塊空間的需求增加而增加區塊大小,這得益於 DAS。
EigenDA 將通過解耦 DA 和共識、擦除編碼和直接單播來擴展吞吐量。然而,這是以構建在頂部的 rollups 無法繼承基礎層的抗審查性為代價的。
總結
選擇一個堅實的基礎層來構建可能是具有挑戰性的。我們希望這篇文章能幫助讀者更多地了解不同設計選擇的優缺點,並選擇適合您的 DA 層。