如果不是因為這篇研究報告是受 MolochDAO 之托而作,我想 DAOSquare 應該不會翻譯如此“技術性”的學術論文(至少現(xiàn)階段不會)。不過,以太坊的擴展性的確是一個重要且熱門的話題,現(xiàn)有的解決方案包括 OptimisTIc Rollup、Zk Rollup,而 OpTImisTIc Rollup 則是一個提出時間并不長的新興方案,它被認為是最有前途的擴容方案。
以下報告由 MolochDAO 授權制作,John Adler 提供相關意見/復審;但此篇所有觀點均代表本人。此外,項目評估僅為該報告發(fā)稿時的狀態(tài)簡況(2020年2月)。事事均在變化,不做過度承諾。
籠罩以太坊擴容社區(qū)的陰霾--OpTImsitc Rollup
2019下半年,Optimistic Rollups (ORU或Optiroll) 作為以太坊 Layer 2 擴容協(xié)議迅速興起大熱。本文旨在概述新興 ORU 的開發(fā)生態(tài)系統(tǒng)至發(fā)稿時的簡況(2020年2月)。我們先將 ORU 理論屬性放于 Layer 2 設計空間大背景下,之后比較不同項目的方法和技術設計決策以及其中的各種取舍。9個項目包括:
Fuel Labs
ANON
Whitehat, Cellani, Lim ( hereby “WCL”)
Pinkiebell
Offchain Labs
Interstate Network
Optimism
IDEX
Celer
點擊此處回顧他們的差異性。最后,我們將深入探討一些定性問題,這些問題將圍繞以上項目如何在空間中發(fā)揮自己的作用。
背景 & 理論
盡管美名在外,但開放且未授權的區(qū)塊鏈也有很多問題:網(wǎng)絡中的所有完整節(jié)點必須可見,并驗證系統(tǒng)處理的每筆交易;超低效率(相較中心化數(shù)字支付系統(tǒng)而言)是加密貨幣備受爭論的擴容挑戰(zhàn)的核心。
Layer 2 協(xié)議是減輕此類負擔的一類方法。將所有的節(jié)點全部驗證所有交易,變?yōu)閮H由感興趣的各方(例如那些希望獲得自己資金的人)對交易的某些子集進行本地驗證,以此(以某種方式,形狀或形式)來轉移這種負擔 。重要的是,他們保留基本層無需信任的安全模型,同時無需依賴用戶自己運行的軟件以外的資源。
· 數(shù)據(jù)可用性:解決
在以太坊 Layer 2 研發(fā)的早期階段,研發(fā)人員計劃在隱含假設下運作,即基礎層“減輕驗證負擔”就是完全將(某些)交易數(shù)據(jù)隔離在區(qū)塊鏈之外。(請參閱 Josh Stark 2018年初的文章 Making Sense of Ethereum’s Layer 2 以了解當時的思維方式)。
加密貨幣協(xié)議有其內在的經(jīng)濟屬性,可以激勵區(qū)塊生產(chǎn)者及時地、廣泛地共享區(qū)塊(除非是自私挖礦等邊緣情況 selfish-mining edge cases);區(qū)塊鏈基礎層有時被稱為“數(shù)據(jù)可用性引擎”。確保數(shù)據(jù)是(完全)公開的,可以保證其能夠進行驗證,并且無效交易幾乎無法通過。
因此,在Layer 2的場景中,如果要將數(shù)據(jù)完全隔離在鏈外,將不再能保證我們有這種數(shù)據(jù)可用性;因為那些擔心數(shù)據(jù)有效性的人可能會隱瞞數(shù)據(jù)。因此,我們必須弄清楚,在這種極端情況下,如何以某種方式確保不會發(fā)生無效的狀態(tài)更新。對于Layer 2系統(tǒng),數(shù)據(jù)隱瞞問題始終是最難最壞的情況;因為最糟糕的就是在沒有信息的情況下去探尋事實。
如果我們的定義足夠寬松,針對該數(shù)據(jù)隱瞞問題的所有解決方案都可以分為兩大類:狀態(tài)通道和Plasma(channels and Plasma)。如果兩方在一個通道中,雙方一致同意后,鏈下數(shù)據(jù)的更新才真正有效。因此,如果 Alice 選擇保留 Bob 的數(shù)據(jù),Alice 將處于最新狀態(tài);保留數(shù)據(jù)對她沒有好處。相比之下,Plasma 則沒有雙方一致同意的這一要求。這直接導致在 Plasma 中,如果用戶沒有任何直接證據(jù),則可能發(fā)生無效更新。即使在這種情況下,Plasma 仍可以保證用戶持有必要的鏈下數(shù)據(jù),在交互質疑期中證明并確保其資產(chǎn)所有權。
就實際結果而言,狀態(tài)通道已成為第一個 Layer 2 構造。人們很容易理解,且狀態(tài)通道(可能)確實解決了一些基礎的研究挑戰(zhàn),我們的確也看到狀態(tài)通道在比特幣和以太坊上的應用。狀態(tài)通道具有一些實用屬性,例如即時交易,這些屬性非常契合一些特定應用程序的需求。盡管是較通用的擴容方案,但在某種程度上仍受限制。從本質上講,通道之間是彼此獨立的,且免信任的連接將導致資本效率低下,及/或受制于可用的流動路徑。(我之前在 Bitcoin’s Lightning Network 發(fā)表了相關限制以及解決策略。)
Plasma 有望提供一種用途更廣,側鏈式擴容方案,使參與者之間可以更輕松地進行信息交互,但是它的發(fā)展路程卻更艱難。有關 Plasma 技術挑戰(zhàn)的細節(jié)不在本文討論范圍之內。但是,(非常)簡單來說,不能保證數(shù)據(jù)可用性的這種特質,讓很多特性難以立刻保留,例如:支持任意計價支付,用戶的驗證/存儲要求最小化,避免大批量退出方案,以及支持智能合約邏輯 。雖然可以緩解這些問題,但是解決一個障礙的代價往往是加劇另一個障礙。簡而言之,很難做到完全正確,即使這些構造足夠可行,其復雜性也會讓實踐變得困難而緩慢。(我已在此處及此處發(fā)表分析了 Plasma Cash 及其變體的合理進展及其帶來的挑戰(zhàn)。
Plasma 的問題讓甚至一些人認為其會消失(declare its demise)。即使有人認為這種說法還為時過早(例如我),但是毫無疑問,Plasma 比預期設想的更加困難復雜,而且傳輸結果的空間速度比最初希望的要慢。隨著 Plasma 的停滯,以太坊社區(qū)渴望類似非監(jiān)管下的、具有側鏈特性的事物。此時,就研究和實施狀態(tài)而言,Optimistic Rollup 出現(xiàn)了。
· 數(shù)據(jù)可用性:讓步
我們可以在各種先前的提案中發(fā)現(xiàn)目前 Optimistic Rollup 的構造痕跡,比如 Shadowchains, Coinwitness, bulk validation with ZK-SNARKS (現(xiàn)在稱之為 ZK-Rollup), 以及2015年初的一場關于Arbitrum 的學生演講等。
就目前了解而言,John Adler 和 Mikerah Quintyne-Collins(又稱““Bad Crypto Bitch ”)將協(xié)議基礎稱為“合并共識 Merged Consensus”。先前的 Plasma Group 團隊(現(xiàn)為 Optimism,下文介紹)在一篇博客文章中描述了類似原理,并在 Optimistic Layer 2 游戲語義分析中將其定為框架,命名為 Optimistic Rollup(無論出于何種原因),并最終確定。
Optimictic Rollup 采用前一段中所述的框架并把它翻轉過來;ORU 并不打算在數(shù)據(jù)隱瞞的情況下保留非監(jiān)管性,而是采取了一種更直接的方法,即直接要求將交易數(shù)據(jù)發(fā)布在鏈上,更具體地說,要求將足夠的數(shù)據(jù)發(fā)布在鏈上,以便任何運行以太坊節(jié)點的人都可以重建 ORU 的狀態(tài)。擴容的好處在于,Layer 1 僅需發(fā)現(xiàn)數(shù)據(jù)并將其 Merkle 樹化為區(qū)塊根,無需執(zhí)行任何操作;(理想情況下)計算僅在 Layer 2 執(zhí)行。因此,交易數(shù)據(jù)作為呼叫數(shù)據(jù)發(fā)布在鏈上,并且不存儲在狀態(tài)中;因為狀態(tài)容量增長和計算成本(可能)是以太坊擴容的核心瓶頸,這具有不小的增長空間。
與 Plasma 一樣,基礎層無法直接驗證交易就意味著會有一些無效交易。在 ORU 下,任何當事方都將見證無效交易的更新,然后通過欺詐證據(jù)向基礎層展示欺詐證明,欺詐證明將還原欺詐性區(qū)塊以及及后續(xù)的區(qū)塊更新。一旦過了足夠的時間而沒有提交欺詐證明,就可以確定并匯總區(qū)塊,從這些區(qū)塊中啟動的提款就可以完成。為了抑制故意發(fā)布無效區(qū)塊的行為對社區(qū)的惡意破壞,區(qū)塊提交人會發(fā)布一個保證金,如果欺詐證明有效,將大幅削減保證金。這種防欺詐處理的精確方式是任何特定 ORU 結構的核心。
與 Plasma 相比,ORU 有一個不可避免的根本性缺點,那就是它的擴容性相對較低。假設鏈上數(shù)據(jù)與 ORU 塊中的數(shù)據(jù)成正比,則 ORU 構造會受到基礎層最大數(shù)據(jù)量的限制。不過在其他方面 ORU 也有很多益處,包括:
· 更輕松/更廣泛地支持智能合約
· 更容易地支持任意付款面額
· 無需許可的區(qū)塊生產(chǎn)
· 更簡單的博弈退出機制
· 相對簡單的操作
正如我們預料,即使是上述因素也需要在不同的 ORU 結構中相互權衡。(有關 ORU 背后的更多信息,請參閱 John Adler 的 “The Why’s of Optimistic Rollup”。)
Projects Overview 項目概覽
本報告采訪了9個使用 ORU 設計模式的項目,其中一個項目選擇在發(fā)布時保持偽匿名狀態(tài)(以下稱為“ ANON”)。
僅考慮 Optimistic Rollup 范圍內的項目,也就是說,它們必須都是 “Optimistic”,包括某種假設,即“假設有效,除非或者直到提交欺詐證明”(即,不是 ZK-rollup)并包括“Rollup”,即,鏈上發(fā)布了足夠的數(shù)據(jù),任何觀察者都可以重建狀態(tài)并檢測無效性(即,不是 Plasma)。大多數(shù)所討論的大多數(shù)項目都嚴格符合這些參數(shù),唯一的例外是 IDEX 2.0,其詳細信息將在下面討論?;?Plasma 或與 Plasma 相鄰的構建上工作的其他各種項目,都屬于研究 ORU 的初期階段,包括 Matic,LeapDAO 和 Cryptoeconomics Lab。
· 智能合約支持和欺詐證明互動性
ORU 項目之間的核心區(qū)別在于它們對智能合約腳本的支持程度,以及它們所需要的驗證和欺詐證明的性質。在本次調研的9個項目中,有5個項目在其 Rollup 中實現(xiàn)了完整的以太坊虛擬機功能,其中 rollup 側鏈具有 Solidity 智能合約支持,其支持程度(大致)與以太坊基礎層的智能合約支持程度相當,而其余項目則更偏向于支持更有限的、受限的功能。
廣義上講,除了智能合約功能本身之外,支持完整的 EVM 能夠保證 rollup 和主鏈之間的技術一致性,有望與基礎架構工具更輕松地集成,并且讓開發(fā)人員更容易過渡,他們已習慣在 Layer1 上使用 Solidity 編譯的智能合約。相反,那些更偏向于支持更有限的、受限的功能項目具有以下優(yōu)點:成本更低的(或多或少)欺詐證明,驗證更容易,可以針對特定用戶直接實現(xiàn)優(yōu)化以及總體上的簡化。





