在我們Layer-2 系列的第一篇文章裡,我們討論了比特幣鏈下可擴展性方案,也分析了閃電網絡和多種側鏈方案。當我們把目光轉向(以市場價值來衡量的)第二大密碼學貨幣,我們可以看到以太坊也有相當多的鏈下可擴展性方案。這些方案,大多都是為了應對以太坊區塊鏈在2017 年頻繁出現的擁堵情形而提出的。

以太坊協議本身的可編程性,讓開發者能夠設計出許多在比特幣上不可能實現的擴展方案。在過去,這種可編程性往往只意味著可以創建智能合約、團隊能夠快速獲得資金(通常是ERC-20 形式的token)然後全身心投入到可擴展性方案的開發中。好幾個這樣的方案都已經在一年以前甚至更早的時候發布了,但感興趣者寥寥無幾。慘淡的業績既是因為市場下行、興趣下降,也是因為他們無法在啟動之前造出一定的勢能。不過,到了2019 年末,趨勢開始變化。市場反彈、興趣漸旺、網絡利用率上升,多種技術的進步,使得Layer-2 項目回到大家的視野中。

- 2020 年以太坊交易的平均手續費成本(以美元計) -

以太坊網絡使用率的增加,再加上交易手續費的10 倍上漲,使得多支團隊正式啟動了他們已耕耘多時的項目。我們看到—— 過去幾個月間啟動了許多項目,都在爭奪社區的注意力和接受度。本文拿所有這些項目做成了一個圖表,準備從投資的角度看這些項目(迄今為止)成功與否。

- 鏈下擴展方案進入白熱化競爭階段-

以太坊Layer-2 方案的分類

以太坊Layer-2 項目很多,我們給它們分類如下:

第一類包括支付可擴展性方案,例如Raiden、Liquidity Network 和Spankchain(基於Connext)。大多數方案都用到了 狀態通道技術,受啟發於比特幣的閃電網絡。這些項目在2017 年乃至2018 年初通過ICO 成功籌集到了資金。

第二類方案則源於對更靈活擴展方案(不止於支付)的需要。這些解決方案能支持任意的智能合約交易和dApp,當然也包括DefI 應用。打頭陣的當屬 Plasma 鏈技術 —— 最終產生了包括Loom Network、OMG network 和Matic 在內的項目。因為Plasma 實現的複雜性(尤其是數據可用性問題),一類新的通用可擴展性方案獲得了大家的青睞:Rollup 方案。 Optimism/OVM 是這個方向的先驅,zk Rollup 方案也緊隨其後。第三類方案與前兩類方案不是同一個維度的,目的是增加額外的功能,尤其是隱私性。最有前景的項目包括Keep 和Aztec。

鏈下通用可擴展性方案

此類方案是當前最活躍、討論最充分的以太坊可擴展性方案。雖然“通用可擴展性” 一詞在技術上不夠準確,但這個詞確實反映了此類方案的目標:擴展任意以太坊交易(包括智能合約交易)的處理量。相較於簡單的、實現鏈下支付的方案,這類方案要解決的問題要難得多。從技術角度來看,此類方案可以叫做“承諾鏈”,可以擴展任意交易的吞吐量。

在這個領域內,雖然基於不同的技術維度可以細分為很多小類,但我們就簡單分類成:

Plasma 鏈交易分組及壓縮方案(Rollup)

抽像地來看,Plasma 方案就是(在主鍊網絡以外)創建了一個可以執行任意交易的空間。但是,在Plasma 方案中,因為鏈下交易的數據對以太坊主鍊是不可見的,這就使得用戶想 離開 側鏈、回到以太坊主鏈的時候,會遇上麻煩。這就是所謂的 數據可用性 問題。

- 以太坊側鏈的簡化圖示-

另一方面,Rollup 方案可以被認為一種壓縮技術。多筆交易可以壓縮在一起,既能減少 交易數據規模,又能降低 交易驗證負擔,因此使得以太坊區塊鏈能處理更多交易。此外,所有交易的收據都存儲在以太坊區塊鏈上,這就提升了Layer-2 交易的安全性。

競爭

在這兩個小類中,都有不同的項目,是向著不同的目標而且技術架構也不盡相同的。詳盡的項目比較得寫好幾篇文章,所以我們僅聚焦於大略的事項。

- 以太坊通用可擴展方案的分類-

(譯者註:雖然作者在這裡將zk rollup 也包括在內,但實際上,至少當前出現的zk rollup 方案,都不像以太坊那樣是通用的(general purpose),它們只能執行特定類型的交易,如需執行更多類型的交易,還得增加代碼。)

基於Plasma 的方案

Plasma 方案是最早出現的,以Vitalik 的Plasma 論文為標誌。 Plasma 實現也因應用場景不同而大不相同。第一個Palsma 的產品級實現是Loom Network 於2018 年使用Plasma 的變種 Plasma Cash 做出來的。 Plasma Cash 主打非同質代幣(NFT)和遊戲。這個項目最終離開了以太坊生態,創建了一條獨立的區塊鏈,而且轉變方向做起了企業性應用。 Loom 是一個很有趣的案例,顯示了Layer-2 項目所面臨的艱難,尤其在他們所瞄準的主要應用場景(比如游戲)並沒有與ETH(作為一種金融資產)深度綁定的時候。

另外兩個項目,Matic 和OMG Network 加入了“Plasma in the Production-Stage” 俱樂部,各自成功地啟動了主網。兩個項目都致力於擴展通用的以太坊交易。 Matic 在側鏈上使用了PoS 共識機制(以他們項目的token 為權益)。 OMG network 在方向上與Matic 相似,不過當前的網絡依賴於一組固定的驗證者。

Rollup 方案

Rollup 可擴展性方案算是初出茅廬。 Rollup 方案通過把所有交易數據 以打包/壓縮過的形式 存儲在以太坊區塊鏈上來解決數據可用性問題。交易合併為組的主要目的是節省驗證成本。這些成組的交易不會由以太坊共識機制來直接驗證,而是用另一種機制來證明這些交易的有效性。 Rollup 方案有兩大子類:Optimistic Rollup 和zk Rollup,證明有效性的方法也不同。 Optimistic Rollup 方案使用 錯誤性證明(Fraud Proof) 來揪出無效的交易、懲罰允許通過這些交易的驗證者。 zk Rollup 使用零知識證明(例如SNARKs)來證明所處理Layer-2 交易的有效性。證明本身也會跟交易數據一起存儲在臉上。

Optimistic Rollup(OR)領域的一個主力是Optimism。 Optimism 正在開發Optimistic Virtual Machine (OVM),意在使用Layer-2 擴展任意的以太坊交易。他們團隊近期跟Synthetix 項目一同推出了一個擴展DeFi 應用的demo。這個demo 實在是令人鼓舞。另一股開發OR 的力量是IDEX 的可擴展性方案。 IDEX 團隊也在去年的10 月公開了一個他們方案的demo。

另一種選擇,zk Rollup,用意則是實現以太坊Layer-2 的更大規模可擴展性(更高的Layer-2 交易TPS)。不過,這門技術還是僅限於特定的應用場景,例如,支付或者交易所,被零知識證明在構造上的複雜性給限制住了。這個領域有兩個項目在激烈競爭:Loopring 和Matter lab 的zkSync 項目。 Loopring 一開始使用zk Rollup 來實現一個Layer-2 上的去中心化交易,而且已經殺入Layer-2 支付領域、啟動了Loopring Pay。但zkSync 一開始是瞄準Layer-2 支付方向的。他們最近也正式啟動了產品。

其它可擴展性技術

還有其它可擴展性技術是放不進這個Plasma/Rollup 的分類裡面的。一個例子是Starkware 團隊,他們實現了一種可擴展性方案,既將交易數據放在鏈下(類似於Plasma),又使用零知識證明來將鏈下交易打包在一起,而且,他們所用的零知識證明方案叫STARKs,是一種不需要可信任啟動設置(trusted setup)的方案。 Starkware 和Vitalik 管這種方案叫 Validum。

以太坊鏈下支付方案

支付擴展方法最早是在2017 年和2018 年提出的,而且都深深地受影響於比特幣的閃電網絡。這些方案旨在擴展支付交易的吞吐量,但並不允許在鏈下任意執行智能合約交易。因此,它們是不支持DeFi、dApp 和遊戲的。這在以太坊生態中是個致命缺陷,可能也正因此,這類解決方案沒能成功獲得牽引力。這些方案共有的主要底層技術就是 狀態通道。雷電網絡、Connext/SpankChain 和Liquidity Network 都在嘗試開發鏈下支付網絡。

雷電網絡

Raiden Network 被認為是最接近閃電網絡的方案。類似於閃電網絡,它也是通過在網絡上的不同節點間實現1 對1 的通道來創造一個運行在以太坊基礎上的微支付網絡。雷電網絡第一次在主網發布產品是在2020 年5 月。使用雷電瀏覽器可以看到,截至本文撰寫之時,網絡中只有25 個賬戶和大概50 條通道。因為整個以太坊生態的注意力已經在很大程度上被更靈活的擴展方案吸引過去了,所以很難相信點對點的支付通道網絡(比如雷電網絡)有什麼光明未來。

Liquidity Network

類似於雷電網絡,Liquidity Network 也嘗試在以太坊基礎上實現支付通道。不過,他們沒有跟隨閃電網絡和雷電網絡使用同樣的1 對1 通道模式,而是使用了1 對N 的通道模式。網絡基於大家都可連接的支付中心來運轉。因此,Liquidity 在分類上更接近於側鏈而不是支付通道網絡。這個項目是由幾位來自倫敦帝國學院的學術研究員來領導的,他們以在項目網站上展示自己的學術研究為榮。項目於2018 年在主網上啟動,但在吸引用戶上是一敗塗地,僅在當前以太坊網絡使用率和Gas 價格飆升的時候,人氣才有所回升。

- Layer-2 支付方案相關token 的投資回報率-

功能增強型鏈下方案

最後一類以太坊Layer-2 方案是為實現以太坊底層不能提供的功能而產生的。其中最流行的一個功能就是:隱私。隱私包括了隱藏交易的金額和完全隱藏參與交易的地址。這些隱私特性都不能在以太坊主鏈上直接實現,需要用獨立的Layer-2 方案來做。這個領域的兩個主要項目是Aztec 和Keep。

Aztec 的目標是在以太坊基礎上建立一個UTXO 層、使用零知識證明來提升交易的隱私性。這個項目使用一個公開的、大規模的多方計算(MPC)儀式來完成可信任初始化工作(trusted setup),並且開發了zk.money 來讓社區嘗試他們的產品。因為這些Layer-2 隱私方案跟可擴展性方案是沒有相關性的,所以Aztec 團隊正在努力將隱私增強型技術和zk Rollup 技術棧結合在一起,打造ZK² Rollup。

類似地,Keep Network 也在為以太坊開發鏈下隱私層。這個項目不想做隱蔽交易,想做的是為私密數據創建存儲空間(叫做Keeps),可以通過以太坊的智能合約來訪問和使用的那種。 Keep 主網在2020 年5 月上旬就啟動了,以支持該項目的龍頭產品TBTC。在上一篇文章中,我們說TBTC 幫助擴展比特幣網絡的可行備選方案。為實現TBTC 的高安全性保證,交易都僅由以太坊區塊鏈來處理。不過,也沒有根本性的問題讓這些交易不能在鏈下處理。

多Layer-2 方案的風險在哪?

在比特幣區塊鏈上,閃電網路是單一的一個Layer-2 方案,它為許多來自不同項目的比特幣開發者提供了統一的平台。來自Lightning Labs、ACINQ、Blockstream、Zap、Bitrefill 等等項目的日積月累開發工作都匯集到同一條河流中。但在以太坊上,情形就大不相同。不同的Layer-2 擴展方法都互不兼容,彼此之間有很多摩擦和競爭。這種競爭也有可能導致生態的分裂,進而延遲乃至阻礙Layer-2 方案的接受度,使得沒有一個方案能得到大規模接受。

但另一方面,以太坊生態中實驗的廣泛性,可能意味著大家能更快找出真正有用的防範。性能更強的可擴展性方案可能最終會打敗乃至吸收效率較差的方案。

有一些意見認為在不同Layer-2 鏈之間建立鏈下的橋接方案(也就是不需要回到以太坊主鏈的橋接方案)可以減少可能存在的摩擦。這讓人聯想到Cosmos 的鏈間通信協議(IBC)的願景。鏈下橋接也許能將不同的Layer-2 項目黏合在一起,實現以太坊網絡更大範圍的可擴展性,然而,現在大多數項目都還很稚嫩,關於Layer-2 橋接的討論也很少。

結論

以太坊Layer-2 可擴展性方案的第一波浪潮都集中在支付上,多數都是通過ICO 來募資,大多數也都失敗了。在2017 年、2018 年之間發布的、很流行的token,價格都一直在下跌,望也望不到盡頭。不過,對可擴展性方案的需求只增不減。這就推動大家提出了更新一代的解決方案(比如Rollup 方案),來提供更靈活的、不止於支付交易的框架。這些解決方案都嘗試著避免前輩的錯誤、根據生態中不斷成長的部分(比如DeFi)不斷改進自己的方案。 Optisism 和Synthetix 的demo 和Loopring 交易所就是這一趨勢的鮮明例子。因為這些項目大部分都是近期才在主網上發布產品,所以評估和預測它們的走勢都還太早了。更何況,這些項目之間還有強烈的競爭氛圍,也許會有人黯然離場。在評估這些方案的時候,最後一個要考慮的問題就是它們跟以太坊2.0 路線圖的兼容性。雖然功能完整的以太坊2.0 網絡可能還要幾年時間才能出現,但在根本上不兼容以太坊2.0 的方案肯定也更難吸引到開發者。

雖然沒人能言之鑿鑿說哪個Layer-2 方案能笑到最後,我們還是希望本文能成為一個可靠的指南,讓大家看到那些幫助以太坊成為更健壯網絡的項目。

感謝Georgios Konstantopoulos、Jing Wang、Hasu、Tony Sheng 和Anthony Sassano 對本文的富有教益的反饋。