合併的影響,擴容的潛力

作者: echo_z

原定於今年 6 月的以太坊合併(The Merge)又一次推遲。儘管如此,合併作為以太坊升級進程上的重要里程碑,依然是今年最值得關注的事件之一。

有人可能會將「合併」與「擴容」混淆,但這其實是以太坊升級的兩個階段。「合併」解決的核心問題是將共識機制從 POW 切換到 POS,減少能源消耗,本身並不能帶來擴容;而擴容則是解決以太坊可擴展性問題、提升吞吐量的關鍵。

以太坊的可擴展性不足,歷來是其發展的最大掣肘,也給了其他公鏈充足的競爭窗口期。如果以太坊擴容成功,將會釋放巨大潛能,這一全球性基礎設施的進化也必然會影響公鍊格局,甚至孕育新的應用賽道。

那麼,以太坊擴容要解決的核心問題有哪些,目前的主流方案是什麼,又如何理解即將發生的「合併」、你方唱罷我登場的多種 Layer2 項目呢?鏈茶館梳理以太坊升級進程,匯總如下。

本文目錄:

1.「合併」的邏輯與影響 1.1 共識機制改變:從 POW 到 POS1.2 合併影響之一:TPS 與手續費基本不變 1.3 合併影響之二:ETH 將會微通縮

2. 以太坊的可擴展性困境

3. 以太坊擴容路線——Rollups+Sharding3.1 鏈下擴容:各類 Layer2 及 Rollups 的勝出 3.2 鏈上擴容:Sharding 的原理及意義 3.3 L2 龍頭項目一覽

4. 小結

5. 註釋

1.「合併」的邏輯與影響

1.1 共識機制改變:從 POW 到 POS

以太坊主網當前採取工作量證明(POW)共識機制,礦工們必須首先對一個特定值進行暴力求解,通過消耗的算力證明自己付出了代價,才有資格產出新的區塊。POW 會帶來大量的能源消耗,歷來為人詬病,而 POS 則通過驗證者的資產抵押來代替算力消耗,不會消耗過多能源。以太坊路線圖中最重要的兩個部分,一是從 POW 切換到 POS、避免過多能源消耗,二是上述的擴容路徑,而共識機制的改變將會優先落地。

在 2020 年 12 月,作為未來主網的「信標鏈」已經上線,獨立於主網運行。信標鏈穩定出塊,驗證者也可質押挖礦、獲得信標鏈增發的區塊收益,但還沒有承擔實際功能。「信標鏈」也將會是「擴容」路線中的重要組成部分,將在下文詳細介紹。

圖片
來源:https://beaconscan.com/c

「合併」的目標,是將以太坊主網的「共識」邏輯放在信標鏈上,而「執行」邏輯仍然在原來的主網運行。要理解這一變化對於以太坊運行而言意味著什麼,需要先理解以太坊的出塊流程。

以太坊的一個完整出塊週期,包含如下步驟:

1)「執行」:礦工在新的交易請求中挑選部分並執行交易,驗證交易是否均有效,更新本地的 EVM 副本,產生潛在區塊;

2)「工作量證明」:礦工完成本地的執行和驗證後,會開始進行工作量證明,以獲得出塊資格;

3)「共識」:最終會有一名獲得出塊資格的礦工,將已經執行完的交易廣播給全網節點,其他節點會在本地重新驗證和執行,確認區塊有效性;

4)「多方存儲」:完成共識後,所有節點都會更新 EVM 副本狀態,保存最新的交易歷史 [1]。

在合併之後,上述的「執行」和「多方存儲」維持不變,仍在原來的以太坊主網上運行,而礦工則會被信標鏈上的 ETH 質押者所替代,質押至少 32 個 ETH 即可參與出塊和驗證。在每個出塊週期內(設定為 12 秒),將會由算法選出一個區塊生產者,在區塊經過生產和廣播後,信標鏈將會分配一組驗證者,驗證區塊並完成共識 [8]。

對比原先的流程,礦工由質押者所替代,礦工的信任成本從消耗算力變成了質押資產。「工作量證明」被取消了,因此減少了~99% 的能源消耗。

由於出塊成本大幅下降,因此很多人誤認為這會帶來 ETH 手續費的下降甚至性能的提升,但這其實是一個誤解。接下來,我們將會介紹合併所帶來的影響。

1.2 合併影響之一:TPS 與手續費基本不變

可能和很多人的直覺相反,合併後雖然出塊成本降低,但是 TPS 和手續費基本保持不變,其核心原因在於區塊大小和出塊速度基本沒有變化。了解 TPS 的邏輯和手續費的定價機制,可以更好地理解這一點。

TPS 即每秒交易筆數,等於每個區塊能夠容納的交易筆數➗出塊時間。在去年 8 月實施 EIP-1559 後,單個區塊的基準空間為 1,500 萬 gas(gas 是以太坊上操作消耗的計量單位),當需求增加時,單個區塊的空間上限可以達到 3,000 萬 gas。

由於合併後的「執行」環節並沒有改變,因此單個區塊的空間大小也沒有改變,仍然遵循原先的 1,500 萬基準、3,000 萬上限。至於出塊速度,目前以太坊主網基本維持在~13 秒出一個區塊,合併後將會改變為每 12 秒出一個區塊。也就是說,TPS 最多可能會由於出塊速度提升~1 秒,帶來<10% 的提升。

以太坊的區塊大小和出塊速度之所以有局限,是為了保證節點可以全量驗證、並且即時同步,達到足夠的安全和去中心化。TPS 的局限是以太坊的可擴展性問題,並不能通過改變共識機制來解決。

理解了 TPS,手續費的邏輯也就顯然了。以太坊的手續費定價機制在去年 EIP-1559 實施後有重大變化,分為兩部分:基礎費用(Base Fee)和小費(Tips)。基礎費用完全按照供需關係來確定,需求即用戶提交的交易請求,供給則是以太坊能夠提供的計算空間。如果這一個區塊所收到的交易請求量大於上一個區塊實際處理的請求量,那麼下一個區塊的基礎費用就會最多增加 12.5%。小費則是給礦工的獎勵,本質上也是一種吸引礦工的競價機制,同樣由需求決定。

圖片
基礎費用攀升示例,來源:https://ethereum.org/en/developers/docs/gas/

由於 TPS 沒有本質變化,計算空間仍然受限,因此合併也並不能改變供需關係,無法對手續費產生影響。

1.3 合併影響之二:ETH 將會微通縮

ETH 當前同時具有增發和燃燒機制,整體而言呈微通脹;而在合併之後,由於增發率降低,整體將呈 1%~2% 的微通縮。

目前 ETH 的增發機制為:每個區塊產生 2 個 ETH 的礦工獎勵,根據當前出塊速度和流通總量估算,年增發率大約在 4.3%。其燃燒機制為:1.2 小節中所述的「基礎費用」均會燃燒,每年約燃燒 290 萬枚 ETH。綜合估算整體的通脹率在~2%。

合併之後,最大的變化在於區塊獎勵會大幅降低,約為原先的~90%,假定年燃燒量不變,整體將會達到~2% 的通縮。

圖片
POS 和 POW 兩種機制下的 ETH 通脹模型,鏈茶館製作

2. 以太坊的可擴展性困境

以太坊作為最主流的智能合約平台,以其安全和去中心化的特徵著稱,然而在可擴展性方面仍然落後:以太坊目前的 TPS(每秒可處理的交易筆數)在 10~15 之間,供給不足、需求旺盛,導致依靠競價確定的手續費居高不下,每筆交易需要花費數美元~數十美元。

圖片
以太坊近一周 TPS,來源:https://ethtps.info/Network/Ethereum

作為對比,BNB 的 TPS 在 40~50 之間,Solana 更是達到了 1,000+,和 Visa 在同一水平。

圖片
圖片
BNB、Sol 的 TPS,來源:https://bscscan.com/;https://explorer.solana.com/

去中心化(Decentralization)、安全(Security)、可擴展性(Scalability),三者只能擇其二,這也被稱為區塊鏈不可能三角。以太坊最初的選擇是放棄可擴展性,使之符合 Web3 最重要的價值觀。

如果以簡潔粗暴的方式實現可擴展性,那麼就會犧牲安全性或者去中心化。如下圖所示:第一種方法是擴大區塊容量,但這樣會導致驗證者的工作量也同樣擴大,最終能夠承受工作量的驗證者就會集中在數據中心,由巨頭把控,失去了去中心化特徵,這也是為什麼以太坊目前的區塊容量和出塊速度都是有限的,只有這樣才能讓普通人也可參與驗證;第二種方法即擁有更多的山寨幣(公鏈),但這樣會由於驗證分散、導致安全性也成比例降低。

圖片
圖片
來源:https://www.youtube.com/watch?v=OJT_fR7wexw

儘管如此,以太坊一直在積極尋找可擴展性的解決方案,並且在 2020 年就確定了以 Rollups(打包)+Sharding(分片)為中心的擴容路線 [2]。

3. 以太坊擴容路線

Rollups+Sharding

根據以太坊官網的現行分類,「擴容」分為鏈上和鏈下擴容,其中鏈上擴容即「分片」(Sharding),是對以太坊主網的變更;鏈下擴容即 Layer2 及其他各類獨立於以太坊主網的方案。

圖片
鏈茶館製作,依據:https://ethereum.org/en/developers/docs/scaling/#layer-2-scaling

由於鏈上擴容的 Sharding 是對以太坊主網的變更,將會對所有歷史數據進行遷移,因此進程緩慢,官方預期 Sharding 會在 2023 年實現;而鏈下擴容的多種方案已經落地,其中的 Rollups 是以太坊社區選定的主要路線、也是擴容路線圖的短期重點。下文將分別介紹鏈下和鏈上擴容。

3.1 鏈下擴容:各類 Layer2 及 Rollups 的勝出

以太坊官網的分類中,對 Layer2 的定義相對狹隘,僅僅將 Rollups 和 State Channels 這兩種通過主網來完成共識的方案稱為 Layer2。通常在廣義上,所有的鏈下擴容都可以稱為 Layer2。

簡單介紹下幾類方案:

1)Rollups:在以太坊主網之外(即鏈下)完成交易的執行,之後將多筆交易打包發佈到主網上,由主網完成共識。通過將計算執行放在鏈下、並打包壓縮部分數據返回鏈上,減少了對主網空間的利用。

需要注意的是,Rollups 打包發布的信息中必須包含:a) 狀態根(State Root),代表交易完成後的所有賬戶餘額,也就是交易結果狀態;b) 交易信息,即 A 給 B 轉賬多少的交易指令。通過這兩部分信息,主網節點可以對 Rollups 上的交易歷史做全量驗證,因此 Rollups 的安全性能夠得到主網的保證。這一點非常關鍵,也是 Rollups 區別於 Plasma/Validium、安全性得到認可的原因。

圖片
來源:https://vitalik.ca/general/2021/01/05/rollup.html

Rollups 中又分為兩類,一類是 Optimistic Rollups,採用欺詐證明(Fraud Proof),即設置挑戰機制,允許驗證者對有問題的交易進行挑戰,受到挑戰的交易需要在 L1 主網上重新執行,由於假定所有交易在正常情況下合法,因此稱為「樂觀 Rollups」;另一類是 ZK Rollups,採用有效性證明(Validity Proof),即所有提交到 L1 主網的交易都需要通過零知識證明。

Optimistic Rollups 的加密技術方案成熟,可以兼容 EVM,也是落地最早的 Rollups,典型項目為 Arbitrum 和 Optimism。ZK Rollups 需要打包上傳到 L1 的數據更簡潔,因此執行交易更為快速高效,但技術難度較大,並不天然兼容 EVM,對開發者來說遷移成本高

2)State Channels:參與者可以通過多簽合約在鏈下完成多筆交易,將金額累計,以最終的一筆交易記錄在主網上。但是這類方案的應用場景非常局限,只有網絡參與者能夠使用,而且在復雜交易中需要質押非常大量的金額。

3)Sidechains:獨立於主網的 EVM 兼容鏈,通過雙向橋可以和主網橋接,但是其共識邏輯、區塊參數均與主網無關。由於完全獨立,因此安全性無法得到主網的保證,典型項目如 Polygon。

4)Plasma:類似安全級別更低的 Optimistic Rollups。Plasma 本身是一個可以有無窮個子鏈的區塊鏈,每一個子鏈都類似一棵樹上的樹枝,執行部分交易,所有的交易狀態最終會匯總成一個 hash 值,發佈到 L1 上。但是通過這個 hash 值並不能複原所有的交易歷史,因為過程中的交易信息會存儲在各個子鏈、即各個樹枝上,而驗證節點無法確信子鏈上的所有區塊都有足夠的數據有效性證明。一旦有任何一個區塊的信息無法確認是否有效,那麼整條鏈上的交易歷史都會陷入危機,這也被成為數據可用性問題(The Data Availability Problem)[3]。

圖片
來源:http://plasma.io/plasma-deprecated.pdf, P10

Plasma 和 Optimistic Rollups 有兩個相似之處,一是都將計算放在了鏈下,二是都採取欺詐證明。但其中的關鍵區別在於,Rollups 壓縮後上傳的數據仍包含了全量交易歷史,Plasma 卻不包含。

5)Validium:類似安全級別更低的 ZK Rollups,同樣採取零知識證明,但是數據並不存儲在 L1 上,典型項目如採用了 StarkWare 技術的 Immutable X、DeversiFi。

整體上來看,Rollups 是安全性最高、且應用場景廣泛(不像 State Channels 那樣只允許網絡參與者使用)的鏈下擴容解決方案。因此,在分片實現之前,Rollups 被認為是最重要的擴容路徑。

下圖展示了部分主流 Layer2 項目,可以看到,事實上 Rollups 也是最廣為採用的技術,其中技術成熟的 Optimistic Rollups 應用場景更廣泛,可以面向任何智能合約;而 ZK Rollups 由於在兼容 EVM 方面的局限性,使用場景往往受限。

圖片
來源:https://l2beat.com/

值得注意的是,TVL 排名第 5 的 Metis,由於沒有將全部交易數據放在鏈上、而是通過鏈下的去中心化存儲項目 MEMO 來保存,在實現了超低手續費的同時犧牲了數據可用性,因此被排斥為「Optimistic Chain」而非「Optimistic Rollup」。

Metis 的取捨也反映了 Rollups 的一個問題:由於仍然需要在 L1 上發布交易數據,因此其可擴展性受限於以太主網的存儲空間。Rollups 所能做的,就是將盡可能少的數據壓縮上傳至 L1,以此來提升吞吐量。

在這一方面,ZK Rollups 比 Optimisitc Rollups 更具有優勢。由於 ZK Rollups 通過零知識證明解決驗證問題,所有發佈到 L1 的交易數據都已經得到了驗證,所以如果有部分交易信息僅僅是用來驗證、而非計算最新結果,那麼在 ZK Rollups 中這部分信息可以放在鏈下,但是在 Optimistic Rollups 中則必須放在鏈上,以便在欺詐證明中查詢 [4]。ZK Rollups 比 Optimistic Rollups 更節省鏈上空間。

下圖展示了多個 L2 的手續費對比(假設將 Metis 仍歸類為 L2),可以看到,除了主打隱私的 Aztec 和存在爭議的 Metis 相對特殊外,ZK 系的 Loopring/ZKSync/Polygon Hermez 手續費均低於 OP 系的 Optimism/Boda/Arbitrum。

圖片
來源:https://l2fees.info/

那麼,Rollups 到底能在多大程度上提升 TPS 呢?簡單來說,假設 Rollups 佔用了主網的全部空間,那麼理論上限大約能達到主網的 100 倍[5]。以 ZK 作為上限來估算,一筆發送 ETH 的交易大概需要~12 字節,而在主網則需要~110 字節,而 ZK 所需要的證明空間極少,單個 ZK 的打包數據在驗證上所需的額外空間只佔以太坊區塊空間的不到 5%,因此粗略來算 TPS 為主網的 100 倍。目前主網日常 TPS 約 15、理論上限 TPS 約 100,因此 ZK Rollups 的理論上限 TPS 約 10,000。

當然,10,000TPS 是一個非常理想的數字,幾乎不可能達到:首先,單個以太區塊內只存在單筆打包交易就很難實現,存在多筆則驗證所需的空間也會增加;其次,主網不太可能持續維持理論上限,因為在 EIP-1559 實施後,如果對區塊空間的需求持續攀升,那麼手續費就會不斷攀升,直到用戶無法承受 [6]。

從 Optimism 的近期轉賬數據來看,最簡單的 ETH 轉賬大約能提升 5~6 倍 TPS。以下是一筆最簡單的 ETH 轉賬交易,如果發生在以太坊主網需要消耗 21,000gas,通過 OP 則只消耗了主網~3,800gas。

圖片
來源:https://optimistic.etherscan.io/tx/10153071

總結而言,Rollups 理論上能將主網 TPS 提升 100 倍,但務實一些估算,Optimistic Rollups 大約能提升數倍,ZK Rollups 應該能提升數十倍。

有沒有一種方法,能夠在保持安全性和去中心化的同時,擴大以太主網的存儲空間,進一步提升 TPS 呢?這就是 Sharding 的意義。

3.2 鏈上擴容:Sharding 的原理及意義

要繼續突破 TPS,就需要擴充主網的存儲空間,Sharding 就是實現這一目的的技術方案。

在 Sharding 方案中,主網被稱為信標鏈(Beacon Chain),在主網之上有 64 個分片(Shards)用以產生區塊、存儲信息。在每個出塊週期內(Slot,設定為 12 秒),每個分片內都會隨機產生一個提議者(Proposer),產出一個分片塊(Shard blob)並廣播到主網 [7]。

圖片
來源:https://hackmd.io/@vbuterin/sharding_proposal

Sharding 的思想和 Rollups 有些類似,都是通過主網外的數據層來存儲數據,釋放空間,但是 Sharding 運用了兩個技術,使之有別於 Rollups,也實現了這樣一個目的:單一節點不需要下載全量數據來驗證交易歷史

第一個技術是驗證委員會的隨機選取。對於每個分片塊,都會將全量的驗證者隨機打亂,組成一次性的驗證委員會,來對這一個分片塊進行驗證。這一隨機性保證了作惡者難以將其買通的驗證者都放入同一個委員會進行驗證,除非作惡者掌控了 1/3 以上的驗證者。

圖片
來源:https://hackmd.io/@vbuterin/sharding_proposal

第二個技術是數據可用性的隨機抽取,即每個客戶端在驗證分片塊時,並不需要下載全量數據,而只需要隨機抽取分片塊的部分,來驗證至少 50% 的數據有效性。

圖片
來源:https://hackmd.io/@vbuterin/sharding_proposal

通過上述步驟,Sharding 實現了隨機抽樣的部分節點、對隨機抽樣的部分數據的驗證,而不再像目前一樣需要節點對主網的全量數據進行驗證,由此實現主網的擴容。

那麼,Sharding 能貢獻多少擴容呢?按照目前的設計,共有 64 個分片,每個分片在每 12 秒的出塊週期內會產出~250KB 的數據塊,也即每 12 秒能夠承載 16MB 數據、每秒能承載~1.3MB 數據。對比當前 ETH 主網狀態,每個區塊的目標承載空間為 1,500 萬 gas,一筆最簡單的 ETH 轉賬需要~110 字節,消耗 2.1 萬 gas,按平均 13 秒出一個區塊,可以估算得出當前主網每秒能夠承載~77KB 數據。因此,Sharding 大約能帶來~17 倍(1.3MB/77KB)的性能提升。

Sharding 還沒有明確的時間預期。雖然官方給出的計劃是 2023 年,但是鑑於合併仍未按計劃落地,2023 年的預期恐怕過於樂觀。目前的擴容,需要依靠 L2 實現。

3.3 L2 龍頭項目一覽

Arbitrum、Optimism、ZKSync、StarkNet 是目前最主流的四個 L2 項目。梳理項目基礎信息,可以發現:

1)OP 系更成熟,Arb 佔據 TVL 之首,和 ZK 系的 ZKSync、StarkNet 遠遠拉開差距。ZK 系技術難度高、並不天然兼容 EVM,生態發展較慢。

2)不論是 OP 系還是 ZK 系,背後都有強大的資本力量。在去年 9 月,Arbitrum 的估值就達到了 12 億美元,今年 5 月 StarkNet 母公司更是以 80 億美元估值驚艷了 Web3。頭部 Crypto 投資機構如 a16z/Paradigm,都同時押注了 OP 系和 ZK 系的項目。Optimism 剛剛發幣,雖然初期表現不佳,但是 FDV 仍然有 50 億美元;除此之外三家都尚未發幣,這也是接下來值得期待的一波潛在空投。

圖片
主流 L2 項目一覽,鏈茶館製作

  4. 小結

以太坊的「共識邏輯改變」與「擴容」,構成了以太坊升級的兩大主題,本文也從這兩部分展開,分別介紹了共識邏輯的變化與影響、多種擴容方案及其落地程度。

以太坊合併(The Merge)的目的,是將共識邏輯從 POW 轉變為 POS,從而大大減少能源消耗;但是由於執行邏輯並不改變、沒有改變以太坊的計算存儲空間,因此對於 TPS 和手續費基本沒有影響,而在合併後 ETH 增發率將會大幅下降,造成微通縮。

與此並行的,則是以太坊的擴容(Scaling)進程,旨在提升以太坊的處理性能/TPS,也只有在供給能力提升後,依靠供需關係定價的手續費才能下降。擴容分為鏈上和鏈下兩類,鏈上即對於以太坊主網運行邏輯的變更,採用分片(Sharding)方案,在主網上分出 64 個子區塊鏈分區而治,但是距離落地預期仍較遠;在這一方案實現前,以太坊社區將鏈下擴容中的打包(Rollups)方案作為中短期路徑,且這一賽道中已產生四大主流 L2 項目,當下單個項目估值在數十億美元。

有趣的問題是,Rollups 和 Sharding 未來會如何結合?V 神的理想假設是,兩者的效用將會疊加:ZK Rollups 理論上能將 TPS 提升~100 倍,Sharding 理論上提升~20 倍,假設 ETH 的 TPS 為 50(實際目前在~15),未來以太坊的 TPS 理論上限為~10 萬,遠遠超過 1,000~4,000 的 Visa。不過這一假設太過理想,幾乎不可能實現。

務實的估算結果是,當前 OP Rollups 能將 TPS 提升~5 倍,ZK Rollups 應該能提升數十倍。儘管如此,ZK 對於性能的提升能力依然矚目,遠遠強過 OP,但是由於其不天然支持 EVM、使用場景受限,因此生態落後於 OP。如果 ZK 實現了對 EVM 的友好兼容,潛力完全釋放,OP 的生態恐怕會受挫。甚至於,屆時僅僅通過 ZK 就有可能實現~1,000 的 TPS,Sharding 是否仍然必要也未可知。

以太坊的合併雖然被推遲,但是應該會在 2022 年底前實現 POW 機制的終結。與此同時,L2 項目蓄勢待發,多個項目即將發幣,可以預見將會吸引一波新的用戶和資金。以太坊升級道路漫漫,但最終一定會影響公鍊格局。

  5. 註釋

[1]Mining:

https://ethereum.org/en/developers/docs/consensus-mechanisms/pow/mining/

參考《深度解讀 Optimism:基本架構、Gas 機制與挑戰| CatcherVC Research》:

https://mirror.xyz/0x8C4d5E90196325FB22Fff37C97D7984a37e51D11/5Y8BUo8PvJe2xGKExbxmPBaYaInuaYZlFt8_KlW9UpA

[2]A rollup-centric ethereum roadmap:

https://ethereum-magicians.org/t/a-rollup-centric-ethereum-roadmap/4698

[3] The Data Availability Problem: 

[4]An Incomplete Guide to Rollups:

https://vitalik.ca/general/2021/01/05/rollup.html ,「How does compression work?」

[5]An Incomplete Guide to Rollups:

https://vitalik.ca/general/2021/01/05/rollup.html ,「How much scaling do rollups give you?」文中估算的依據是主網單個區塊最大消耗空間為 1,250 萬 gas,因此 Rollups TPS 理論上限約 5,000;而在 EIP-1559 實施後,單個區塊空間上限提升到了 3,000 萬 gas。

[6]Gas and fees: 

https://ethereum.org/en/developers/docs/gas/#top,「Base fee」

[7]An explanation of the sharding + DAS proposal:

https://hackmd.io/@vbuterin/sharding_proposal

[8]Rewards and Penalties on Ethereum 2.0 [Phase 0]: 

https://consensys.net/blog/codefi/rewards-and-penalties-on-ethereum-20-phase-0 /,「On Block Minting and Consensus in Ethereum 2.0」

免責聲明:作為區塊鏈信息平台,本站所發布文章僅代表作者及嘉賓個人觀點,與 Web3Caff 立場無關。本文內容僅用於信息分享,均不構成任何投資建議及要約,並請您遵守所在國家或地區的相關法律法規。