區塊鏈將迎來Web3 的multi-rollup 未來,任何人都可以通過SDK 快速啟動他們的rollup,並以高性能和低成本在rollup 上運行應用程序。
原文標題:《DAOrayaki |Rollup 即服務(RaaS)的機會:從多鏈到multi-rollup》
撰文:nanfengpo
編譯:Xinyang
Cosmos 和Polkadot 採用多鏈結構的擴展方案。他們的區塊鏈SDK,Tendermint 和Substrate,被許多項目用於定制自己的區塊鏈。這些區塊鏈使用跨鏈協議,如Cosmos IBC[1]、Polkadot XCM [2] 和bridges[3] 來進行互動。然而,這些協議很難保證高安全性,這導致了頻繁的黑客竊取。因此,跨鏈協議沒有帶來預期的效果,區塊鏈之間仍保持相對獨立。
From Cosmos Network – Internet of Blockchains[4] and Getting Started · Polkadot Wiki[5]
後來,出現了一種更安全的擴展技術,稱為rollup。 rollup 將第2 層的交易壓縮成一個「批次」,上傳到第1 層,並通過欺詐證明(如Optimistic-rollup)或有效性證明(如ZK-rollup)證明第1 層的狀態轉換的有效性。由於數據的可用性和狀態的有效性在第1 層得到驗證,rollup 獲得了與第1 層相同的安全水平,確保資產可以在第1 層和第2 層之間安全轉移。
到目前為止,許多rollup 項目,如Arbitrum、Optimism、ZkSync 和StarkNet 都已經在使用。除了這些通用的rollup,還出現了一些特定應用的rollup,包括基於StarkEx rollup SDK[6] 的dYdX(訂單簿DEX)和DeversiFi(AMM DEX)等。雖然rollup 技術還沒有完全發展起來,掌握這種技術的團隊也不多,但市場上對這種技術的需求仍然很強烈。
通用型和特定應用型rollup 來自https://l2beat.com/[7]
rollup 提供了一個獨立的執行環境,具有高TPS、低Gas 和從第1 層訪問所有資產的能力,這有助於區塊鏈上的應用從DeFi 擴展到更普遍的領域,如游戲和社交網絡。我們預計rollup 將逐漸成為一種提供給Web3 應用程序的服務,即Rollup as a Service(Raas)。一些項目現在正朝著這個方向發展。以太坊以rollup 為中心的路線圖[8] 和StarkNet 的Layer 3[9] 架構都展示了特定應用的multi-rollup 未來。
StarkNet 的架構描述,採用了特定應用的multiple rollup 作為Layer 3,來源Medium [10]
建立RaaS 的挑戰
rollup 在提供RaaS 方面仍然面臨以下挑戰。
工程方面
首先,讓我們來談一談rollup SDK。人們可以在SDK 的基礎上快速部署一些配置和啟動rollup。為避免重新發明車輪,開源的rollup 是SDK 開發的更好選擇。對於Optimistic-rollup,Arbitrum 和Optimism 都是開源的。從L2beat 那裡,我們可以看到Metis 和Boba 都是在Optimism 的代碼基礎上開發的。相比之下,ZK-rollup 的開源程度不高。 ZkSync 發布了v1 版的完整代碼[11],但v2 版只有合約代碼[12](嵌入了zkEVM)。 StarkEx 只發布了合約代碼[13],並通過一個封閉的源代碼向第三方提供其他模塊。 StartNet 只提供Cairo 的代碼[14]。
儘管Optimistic-rollup 系統擁有更成熟的代碼庫和對EVM 更好的支持,但欺詐證明的固有特性使它們在最終性和安全性方面遠遠落後於ZK-rollup 系統。 ZK-rollup 第2 層的交易在第1 層被證明後立即完成,而Optimistic-rollup 第2 層的交易由於有挑戰期,需要幾天時間才能完成。另一方面,Optimistic-rollup 需要更多的安全假設:至少1-out-of-N 誠實操作者來保證欺詐證明提交,有一個抗審查的第1 層來保證欺詐證明接受。
總而言之,我們現在就可以在現有的開源代碼基礎上快速建立一個Optimistic-rollup SDK,但從長遠來看,ZK-rollup SDK 似乎更有吸引力。當然,除了代碼庫的問題,ZKVM 的設計,即ZKP 可驗證的智能合約,也是迫切需要的。目前,各種ZKVM 解決方案正在開發中。每個解決方案的方法仍然不統一。
一圖比較ZKVM,來源:Ye Zhang’s talk「An overview of zkEVM[15] 」
性能方面
如前所述,分批交易需要以rollup 方式發送到第1 層,因此rollup 的TPS 受限於第1 層的存儲空間,也就是數據可用性[16](DA)問題。以太坊已經提出了一系列的第1 層存儲擴展解決方案,包括EIP-4488、Proto-Danksharding 和完整的Danksharding(目前正在尋求提案[17])。除了第1 層的擴展,許多項目如Celestia 和Polygon Avail 也在嘗試擴大第2 層的存儲容量。然而,這些解決方案的安全性和易用性仍需進一步研究。
EIP-4488 和Proto-danksharding 將如何增加區塊大小,來源:Vitalik’s 「Proto-Danksharding FAQ[18] 」
在ZK-rollup 方面,TPS 還受到ZKP 計算速度的限制。 Paradigm 和6block 在GPU、FPGA 和ASIC 上有不同的硬件選擇來加速計算。此外,6block 比較了幾種ZKP 分佈式計算的軟件架構,包括礦池、證明聚合和DIZK。 ZPrize[19] ,一個即將到來的競賽,也激勵開發者找到有價值的解決方案來加速ZKP 計算。
確保rollup 服務的高可用性是另一個關鍵問題。目前市場上的rollup 服務幾乎都是中心化的,也就是說,只有特定的運營商可以向第1 層提交批次和證明。這是一個脆弱的設計,因為SPOF(單點故障)將很容易導致服務不可用。由於軟件錯誤[20]和硬件故障[21],Arbitrum 已經多次遭受了數小時的停機。許多項目都在致力於去中心化rollup 以避免SPOF,包括zkSync[22]、StarkNet[23]、Polygon Hermes[24]、PoVP[25] 和taikocha.in[26]。
經濟模式
RaaS 正在考慮應用一個好的經濟模式。目前,服務提供商的利潤主要來自於第1 層和第2 層之間的交易費差距,即從第2 層收取費用作為收入,向第1 層支付費用作為成本。 Optimism 已經發行了治理代幣[27],但收入仍不足以維持開支。
rollup 和它們的費用,來自https://l2fees.info/[28]
現有的大多數rollup 是建立在區塊鏈上的第三方服務,所以它們的主要收入僅僅來自於交易費。然而,我們可以跳出這種思維模式,將rollup 視為區塊鏈提供的原生服務。就像Cosmos 和Polkadot 的設計一樣,整個系統包含一個區塊鍊和附著在區塊鏈上的多個rollup,形成一個具有無限可擴展性的去中心化網絡。通過這種方式,網絡可以用相同的原生代幣獎勵第1 層區塊鏈驗證者和第2 層rollup 運營商。這個想法類似於Polynya 提出的shrined rollup[29],值得進一步研究。
功能方面
與Cosmos 和Polkadot 的跨鏈協議一樣,當一個區塊鏈上部署了多個rollup 時,cross-rollup 協議是必要的。用戶也可以從第1 層提取他們的資產,並將其存入另一個rollup,但這個過程需要在第1 層支付額外的費用和更多的操作步驟。一些第三方cross-rollup 橋[30]利用流動性池來幫助用戶在rollup 之間即時轉移,但這些橋和跨鏈橋一樣容易被竊取。
Vitalik 在《終局》[31]中描述的一個未來區塊鏈架構,當中有multiple rollup 和cross-rollup 橋
理想情況下,區塊鏈應該提供一個原生的cross-rollup 橋,由其驗證者維護以保證安全。此外,這樣的橋最好支持從一個rollup 到另一個rollup 的同步消息調用,也就是說,一個rollup 上的用戶可以直接調用另一個rollup 上的合約。這將最大限度地提高multi-rollup 架構中的用戶體驗。這裡的底層技術很複雜,但我們期待著它的出現。
結語
這篇文章描述了RaaS,即為DApps 提供rollup 服務。顯然,區塊鏈將迎來Web3 的multi-rollup 未來。任何人都可以通過SDK 快速啟動他們的rollup,並以高性能和低成本在rollup 上運行應用程序。在討論了RaaS 可能面臨的所有挑戰後,我們最終提出了原生rollup 的想法,這將有助於區塊鏈用其原生代幣獎勵rollup 驗證者,並提供一個由其驗證者維護的cross-rollup 橋。我們計劃進一步仔細研究,並在未來的文章中詳盡闡述。