研究:各Rollup 解決方案的權衡

原文標題:《干貨 | 各 Rollup 解決方案的權衡研究》

撰文:Trong Nguyen & Loi Luu

翻譯 & 校對:閔敏 & 阿劍

隨著以太坊生態的發展拉動人們對區塊空間的需求增長,以太坊基礎層上的交易變得極其昂貴,然而,區塊空間供應量仍保持不變,與 DeFi 應用交互需要支付價值數百美元的 gas 費,讓許多終端用戶望而卻步,Rollup 旨在用戶的交易轉移到成本較低的 Layer 2 上執行,然后再將這些 L2 交易的證明批量打包到一個 L1 交易中并提交到 Layer 1 上進行結算,從而大幅減少對區塊空間的占用,緩解對 Layer 1 的需求壓力。

Rollup 分為多種類型,在吞吐量、延遲、安全性、通用性和運行成本上有著不同的權衡關系,本文圍繞這些權衡關系制定了一個 Rollup 分析框架,并分析了這個框架為何適用于不同的 Rollup 實現,我們希望這個框架能為項目方按需選擇 Rollup 方案提供基本參考,

介紹

自以太坊誕生以來,其吞吐量限制就已是眾所周知的問題,采用權益證明和分片機制的 ETH 2.0 一直被視為可擴展性問題的解決方案,雖然 ETH 2.0 在 2020 年 12 月就啟動 Phase 0 并上線信標鏈,但是在 Phase 2 啟動之前還無法有效緩解可擴展性和吞吐量問題,

與此同時,Rollup 實際上已經成為緩解可擴展性問題的短期解決方案,在最近的一篇文章中,Vitalik 提出了一個基于 Rollup 的以太坊路線圖,稱 「以太坊生態有可能在短期和中期完全依賴 Rollup 方案(以及一些 plasma 和狀態通道)來實現可擴展性」,很多團隊已經開始努力實現該路線圖。點擊此處,閱讀 Vitalik 對 Rollup 的全面解析,

Rollup 在 2020 年取得了巨大發展:Fuel Labs 和 Optimistic 在主網發布了第一版 Optimistic Rollup;Loopring 的 ZK-Rollup 的總鎖倉量已超過 1 億美元;Starkware 推出了 Cairo 工具鏈,方便開發者使用零知識證明技術,我們看到 rollup 技術有了很多突破,包括 AztecZkSync 通過改進 PLONK 引入遞歸計算能力。在 2021 年,我們還將看到更多進展。

在以太坊的基礎上構建一個單獨的層非常復雜,而且分析現有的 Rollup 實現并非易事,Rollup 團隊都在大力宣傳其解決方案在理論上的最佳性能和功能,但是其風險和權衡的相關資訊卻鮮為人知。讓我們來深入研究如何分析 Rollup 的權衡關系和風險,以及現有實現與這些風險模型的相符程度。

分析框架

我們定義并解釋了 Rollup 的主要考量因素——安全性、通用性、成本、延遲、吞吐量、資本要求和用戶體驗——并在此基礎上構建了權衡關系的分析模型,我們可以用這些特征來評價現有實現,這樣不僅可以從微觀上了解每個 Rollup 的風險和權衡關系,還能從宏觀上把握 Rollup 的總體情況。

Rollup 的衡量標準:

安全性

Rollup 的安全性(即,用戶和運營者存放在 Rollup 中的資產的完整性和安全性)依托于底層 Layer 1 區塊鏈(本文特指以太坊),但是,一些 Rollup 方案的某些假設及其構建方式也關系到安全性。

  1. 誠實暸望塔假設

該假設認為至少有一個誠實的 「暸望塔」 可以在挑戰期內成功將欺詐證明提交給 Layer 1 智能合約。這種假設引入了安全性和延遲之間的權衡,因為挑戰期越長,誠實的暸望塔提交欺詐證明的可能性就越高;反之,挑戰期越短,這一可能性就越低,

  1. 批量退出假設

該假設認為所有 Layer 2 用戶都能在批量退出期內成功執行退出事務。該假設引入了資本效率的權衡,因為運營者的資金在批量退出期內處于鎖定狀態。

  1. 起步設置(Setup)

每個 ZK-Rollup 方案都使用零知識證明協議來創建有效性證明。零知識證明系統將一個證明需要檢查的邏輯和關系封裝成一個能滿足所有約束條件的電路,零知識證明協議要求在證明器(Layer 2 運營者)和驗證器(智能合約)之間進行名為 「起步設置」 的預定義配置。

Zk-Rollup 主要有三類設置:可信設置(Trusted Setup)、可更新設置(Updatable Setup,CRS)和透明設置(Transparent Setup)。

  • 可信設置:在該設置下(如 Groth16),gas 成本較低,最大吞吐量較高。但是,每個電路只支持某些固定功能,另外,每次電路升級時,都需要完成可信設置流程。
  • 可更新設置:在該設置下(如遞歸的 Plonk),gas 成本較高,最大吞吐量較低。但是,該設置最主要的優點是,無需修改電路即可引入自定義智能合約,這都得益于遞歸性,
  • 透明設置:在該設置下(如 Stark),當 Layer 2 區塊被填滿時,gas 成本很低,但是在類似空塊這種非理想情況下,gas 成本會變得異常高,

通用性

  1. 完全兼容 EVM

完全兼容 EVM 指的是 Layer 2 系統完全兼容以太坊主網上已有的智能合約。

  1. 自定義智能合約

Layer 2 客戶端可以自定義并引入有限的智能合約。Layer 2 用戶和合作伙伴可以通過各種工具以 zk-SNARK 電路(代表智能合約的邏輯)的形式引入其智能合約,不過電路會帶來局限性(電路可能不支持無限迭代的循環)。

  1. 固定功能

可以加入一些 dApp 或智能合約,但是必須通過系統升級來實現,

運營者的成本

  1. gas 成本
  • 最優 gas 成本:取決于 call data 成本和固定成本。
  • 次優 gas 成本:取決于最優 gas 成本、固定成本和實現最優 gas 成本的概率。
  • 固定成本:包括 Layer 2 區塊頭、Layer 2 區塊根的存儲量和零知識證明的成本。當需求較低時(在次優情況下),固定成本將占交易成本的絕大部分,
  1. 計算成本
  • 證明器時間:在 Zk-rollup 中,證明器需要大量時間來生成證明,證明過程中需要進行大量計算,來驗證證明中的數百萬個限制條件。一般而言,零知識證明的證明器時間取決于電路大小和證明過程中使用的硬件的容量。如果是 Plonk,證明器時間可能是 2 至 14 分鐘;如果是 Loopring v3.0,證明器時間可能是 7 至 10 分鐘;如果是 Stark,證明器時間可能是 3 至 5 分鐘。這是 Zk-rollup 的硬終局性延遲的主要決定因素。
  • 證明器成本:證明器生成證明所消耗的資源,取決于證明器時間和實證吞吐量,

終局性延遲

  • 硬終局性:敲定 Layer 2 區塊所花費的時間。對 Optimistic Rollup 來說,這個時間就是挑戰期的時長;對 Zk-rollup 來說則是證明器時間,
  • 軟終局性:將 Layer 2 區塊提交到 Layer 1 上所花費的時間。
  • 取款時間:一些快速交易方案需要先提交 Layer 2 區塊,再作進一步處理。

吞吐量

  • 理論最大吞吐量:基于鏈上操作的 gas 成本和以太坊上每個區塊的最大 gas。
  • Zk-rollup 的實證吞吐量:

1)實證吞吐量取決于證明器時間,

2)證明成本、實證吞吐量和資本要求之間存在權衡關系。更高的吞吐量需要更高的證明成本和資本要求,

用戶體驗

  • 使用體驗是否與使用以太坊相仿。

資本

  • 資本要求:運營者存儲在智能合約內用來保障系統安全性的資金,
  • 資本效率:流動性提供者 / 運營者在 x 時間內鎖定在智能合約里的資金,

(1)所有使用欺詐證明的 Rollup 必須接受活性假設。該假設引入了安全性和延遲的權衡(體現在挑戰期的長短上),Arbitrum 的測試網案例將挑戰期設為 30 分鐘,非常短而且實際上并不安全,這意味著,惡意運營者可以對以太坊發起 30 分鐘的網路擁堵攻擊,然后竊取 Layer 1 上的 Rollup 智能合約中的所有資金。

(2)每當 Loopring 改變其功能或數據結構時都需要新的設置。(最新版本的 Loopring 使用內部的臨時起步儀式。)

(3)就每 30 萬筆交易生成一個證明的電路而言,Stark 的驗證者需要 500 萬 gas。但是,deversiFi 使用的 Stark 電路是每 150 筆交易生成一個證明,需要超過 200 萬 gas。(相比之下,Plonk 是每 300 筆交易生成一個證明,需要 50 萬 gas;遞歸 Plonk 是每 3000 + 筆交易生成一個證明,需要 90 萬 gas;Groth16 是每 2000 筆交易生成一個證明,需要 30 萬 gas),

(4)常規 Plonk 的證明器時間是 2 至 14 分鐘(取決于區塊中的交易數量)。如果是遞歸 Plonk,證明器時間會翻一番,但是生成一個證明需要 5 至 10 倍數量的證明器。如果是 Loopring 中使用的 Groth16,證明器時間約為 7 分鐘。

(5)最優 gas 成本還取決于 Rollup 的功能(轉賬、交易或多用途),因此它并不一定能正確反映 Rollup 的費用,

(6)在 1.0 版本中,Loopring 需要更多時間來收集足夠多的交易打包成一個區塊,因為存款、取款和結算都是相互獨立的。

(7) StarkWare 的一個解決方案不提供鏈上數據,而是引入數據可得性委員會,數據可得性委員會的確認會上鏈。

(8)為了解決證明器成本問題,Zksync 開發了新的硬件(FPGA)。為了提高最大吞吐量,Zksync 和 Aztec 改進了 Plonk 中的遞歸電路。

(9) StarkWare 專門為證明器打造了硬件,同時也致力于開發基于 Stark 的解決方案,

(10) Plonk 的 tps 為 300,遞歸 Plonk 的 tps 為 800 至 3000。

(11) Zk-rollup 的實證吞吐量取決于證明器時間,例如,假設有 50 個證明器:在 Plonk (Zksync)中,證明器時間約為 720 秒(每 300 筆交易生成一個證明),因此實證吞吐量不可能超過 50 x 300 / 720 ~20 tps。在 Loopring 中,證明器時間為 420 秒(每 2048 筆交易生成一個證明),因此實證吞吐量為 50 x 2048/ 420=244 tps,

(12)在 Optimism 的首個 Rollup 主網版本中,每筆 Layer 2 交易需要消耗 2.1 萬 gas。但是, 該團隊承諾會提供一個優化版本,將 gas 成本降至 5000,

(13) Aztec 提供的隱私交易需要更多調用數據,

各 Rollup 方案已公開的理論性能

StarkWare

–判斷標準–已公開最優吞吐量3000 tps已公開單個證明所能容納的交易筆數300.000已公開證明器時間3 – 5 分鐘未公開固定成本200 – 500 萬 gas未公開延遲6 – 12 小時

備注:由于固定成本很高,Stark 的 Rollup 方案需要收集到足夠多交易才會對其進行批處理并生成證明,因此,在 StarkEx 的早期階段,延遲主要取決于交易收集時間。

Zksync

–判斷標準–已公開最優吞吐量Plonk 的 tps 是 300;遞歸 Plonk 的 tps 是 800 至 3000,已公開單個證明所能容納的交易筆數Plonk 是大約每 100 筆交易生成一個證明;遞歸 Plonk 是每 315 筆交易生成一個證明。未公開固定成本Plonk 的 gas 成本約為 50 萬;遞歸 Plonk 的 gas 成本約為 90 萬,未公開證明器時間Plonk 的證明器時間是 4 至 12 分鐘。未公開證明器成本無法通過鏈上數據推出,未公開實證吞吐量未公開,

Loopring

–判斷標準–已公開最優吞吐量2150tps已公開單個證明所能容納的交易筆數2048已公開證明器時間7 分鐘已公開固定成本30 萬 gas未公開實證吞吐量未公開未公開可信設置新版本缺省了一次公開的儀式未公開驗證者成本無法通過鏈上數據推出

備注:使用 zk-SNARK 技術就意味著接受可信起步設置假設,即,該設置中的所有參數都應該永久隱藏。如果我們通過流程生成可信起步設置,則只要流程的至少一個參與者完全銷毀了其 toxic waste,這個假設就不會被打破。

Arbitrum

–判斷標準–已公開最優 gas 成本~ 2000 gas已公開最優吞吐量390 tps已公開挑戰期在測試網上是 30 分鐘未公開受保護的資金上限未正式公布

備注:在 Optimistic Rollup/Arbitrum 方案中,如果 Layer 2 運營者對以太坊發起網路擁堵攻擊,就可以盜走資金。因此,該 Rollup 方案保護的資金上限不能超過該攻擊的成本。挑戰期越長,攻擊成本越高,

Optimism

–判斷標準–未公開最優 gas 成本~ 5000 – 21000 gas未公開最優吞吐量50 – 200 tps未公開挑戰期未公布未公開受保護的資金上限未正式公布

備注:Optimism 沒有提供任何關于其 Rollup 方案的具體分析。

Fuel

–判斷標準–已公開最優 gas 成本~2000 gas已公開最優吞吐量500 tps已公開挑戰期2 周未公開受保護的資金上限未正式公布

備注:主網 Rollup 瀏覽器停在第三個 Layer 2 區塊上,該版本暫無后續資訊,

挑戰

用戶采用率:對于像 Rollup 這樣未經過測試和驗證的新技術,用戶通常持有謹慎態度。不明確的權衡關系和復雜性限制了主流采用,

安全性:零知識證明協議的選擇和挑戰期等因素都對 Rollup 方案的安全性有著極大影響,分析和理解這些選擇并非易事,雖然沒有嵌入零知識證明電路所帶來的復雜性,但是對常規的智能合約進行審計本身就很有挑戰性。對 Zk-rollup 方案進行審計是很艱巨的任務,只有非常優秀的安全專家才能勝任。

資金要求:在早期階段,Rollup 的成本很高,采用率卻一直很低,為一小部分用戶創建并定期運行 Rollup 需要投入大量資金,在某些情況下,資金要求直接影響 Layer 2 系統的安全性。因此,為了保障 Rollup 的健康運行,建立一個經濟系統是必不可少的。

總結

Rollup 技術是以太坊可擴展性問題的可行解決方案之一。目前有多種實現并部署 Rollup 的方法。鑒于該技術的復雜性和多種權衡關系,我們需要了解相關風險,對于那些部署 Rollup 的團隊和在 Rollup 上部署 dApp 的團隊來說,安全性、可用性、成本和吞吐量都是在設計解決方案時需要考慮的因素。

在這個大背景下,Kyber Network 認識到為用戶提供經濟快捷的交易方式的重要性,因此,我們投入了大量資源來研究并構建 Rollup 解決方案,以便更好地服務于我們的未來計劃。我們將適時公布更加詳細的資訊,希望本文能助你理解并評估 Rollup 技術,

0 条回复 A文章作者 M管理員
    暫無討論,說說你的看法吧