倫敦升級包含 5 項 EIP,主題分別爲修改手續費規則、修改智能合約操作碼相關內容和推遲難度炸彈等,其中 EIP-1559 和 EIP-3554 影響最大。

撰文:崔晨, 就職於 HashKey Capital Research
審覈:鄒傳偉,萬向區塊鏈首席經濟學家

以太坊的歷史進程

以太坊共有四個發展階段,分別是前沿(Frontier)、家園(Homestead)、大都會(Metropolis)和寧靜(Serenity)。其中寧靜是以太坊的最終階段,標誌以太坊達到了 2.0 階段。以太坊 2.0 與 1.0 版本有很大不同,包括共識機制從 PoW 轉向 PoS,區塊結構從單鏈轉向多鏈分片等。這是早已規劃好的發展路線,可以減少挖礦的能源消耗,以及在保證安全的情況下實現更高的效率。爲了提高系統的可用性以及走向以太坊 2.0 的目標,以太坊網絡需要不斷升級,預計 8 月 4 日在區塊高度 12965000 進行的倫敦硬分叉就是一次網絡升級。

以太坊的網絡升級通過鏈下治理實施,社區成員提出 EIP (以太坊升級提案,Ethereum Improvement Proposal)並對升級所要採用的 EIP 內容達成一致,由開發團隊更新客戶端,最後礦工使用最新版的以太坊客戶端並通過硬分叉升級。從 2015 年誕生起,以太坊經歷了數次升級,時間和名稱如下表所示,他們幫助以太坊不斷完善並走向最終階段。

HashKey 崔晨:解讀以太坊倫敦升級 EIP 及潛在影響表 1:歷次以太坊硬分叉升級的時間和名稱

在這次的倫敦硬分叉升級共包含了 5 項 EIP,主題分別爲修改手續費收取規則、修改智能合約操作碼的相關內容和推遲難度炸彈等,其中 EIP 1559 和 EIP 3554 對網絡的影響最大。

HashKey 崔晨:解讀以太坊倫敦升級 EIP 及潛在影響表 2:倫敦硬分叉升級名稱

EIP 1559 的影響

EIP 1559 最早在 2019 年提出,在經過多次討論和代碼實現後,終於將在倫敦分叉後應用。EIP 1559 將採用與現在完全不同的 gas 費收取方式,旨在賦予以太坊網絡更多價值。在當前的收費規則中,手續費由用戶自行設置,全部爲礦工收入,手續費越高的交易被打包進區塊的速度越快。以太坊資源有限,手續費採用競拍的方式收取,在網絡擁堵時手續費會水漲船高,而且待確認交易數量也會增長。

在 EIP 1559 提出的新的規則中,手續費分爲兩部分,基礎費和礦工小費。其中基礎費是交易所需的最少花費,由系統直接銷燬,小費歸礦工所有。新規則沒有規定區塊的 Gas Limit,大小可以彈性變化,並且根據變化調整基礎費。目前區塊的 Gas Limit 是 1500 萬,未來雖然沒有 Gas Limit 的限制,但目標值是 1500 萬,區塊容量可以在 0 至 3000 萬範圍內波動。如果區塊包含的 gas 超過 1500 萬,基礎費將提高 12.5%,反之如果低於 1500 萬,將降低 12.5%,直至趨於零。在網絡擁堵時,基礎手續費會指數上漲,如果區塊大小連續超過目標值近 5 分鐘(大約 21 個區塊),用戶需要支付的基礎費就要上漲十倍,近 10 分鐘的話上漲 100 倍。用戶只能等待區塊容量下降來降低基礎費,這種收費方式看似可以緩解網絡擁堵,但治標不治本,還是需要網絡擴容來提高性能。

EIP 1559 提高了手續費的效率,主要體現於用戶方面。過去用戶在支付手續費時,需要根據網絡擁堵情況和近期 gas price 估算手續費多少。如果過少等待時間會變長,過多則造成浪費。從區塊層面看,EIP 1559 的方案每次區塊之間的基礎費變化幅度最多爲 12.5%,根據規則用戶能預測並支付相對準確的手續費,以提高用戶體驗。

對以太坊生態來說,銷燬基礎費的影響更大,ETH 代幣的通脹速度將減緩。現在每天 ETH 的產出是 13000 枚左右,年通脹率約爲 4%。Dune Analytics 的數據顯示,如果按照 EIP 1559 的方式,一年內預計銷燬 2937123 枚以太坊,佔增髮量的 61.9%,可以把通脹率降低到 1.5%。這個數值要比比特幣 1.8% 的通脹率更低,在銷燬過多的情況下通脹率還可能變爲負值。通過銷燬基礎費,可以將網絡的使用價值與 ETH 價值更深地綁定在一起,在一定程度上會提升 ETH 的價值。

與此相對的,EIP 1559 的實施必然會損失礦工收入。以太坊網絡越擁堵,礦工的手續費收入越高,最多時手續費的收入可以佔據總體收入的一半以上,未來礦工將主要依賴區塊獎勵。EIP 1559 對礦工的 MEV 收入不會造成影響,隨着 DeFi 應用的擴張,這一部分收入將佔據一定比重。

外界對 EIP 1559 實施的阻力主要有兩點猜測,一是操縱問題,二是分叉問題,但這兩者實現的可能性很小。基礎費的定價受到區塊大小影響,只有礦工能對基礎費進行操縱。但由於基礎費全部銷燬,不會歸爲礦工所有,所以礦工沒有動力去操縱區塊大小,而且礦工團體是分散的組織,不可能實施統一的操縱行爲,最終基礎費還會由市場決定。此次升級是以硬分叉的形式進行,存在礦工對此不滿進行分叉的可能,但礦工不是社區的全部,沒有社區支持的情況下分叉很難出現。

EIP 3554 的影響

以太坊 2.0 要經歷 3 個階段,Phase 0,1 和 2。這三個階段需要實現的任務分別是 PoS 共識,數據分片和交易分片。以太坊 2.0 的分片結構是由信標鏈和分片鏈組成,其中信標鏈負責分片鏈之間的通信,也是整個框架中的核心。目前以太坊已經上線了信標鏈並且開始 PoS 挖礦,同時 PoW 挖礦依然存在,等待以太坊 2.0 有足夠的準備時,PoW 纔會退出歷史舞臺。正常條件下,PoW 的礦工由於已經付出了礦機等硬件設施的成本,不會主動退出挖礦。以太坊通過減少區塊獎勵和設置難度炸彈,實現 PoS 共識轉變。

HashKey 崔晨:解讀以太坊倫敦升級 EIP 及潛在影響圖 1:以太坊 2.0 的框架

減少區塊獎勵可以直接減少礦工的挖礦獎勵,區塊獎勵已經從最初的 5 個 ETH 在君士坦丁堡升級後降低爲 2 個。難度炸彈的設置目的是爲了增加挖礦難度,讓 PoW 出塊越來越難,進而將共識轉移到 PoS 網絡中。因此難度炸彈所選擇的時間點非常重要,需要在以太坊信標鏈完全能承接全網交易後纔可以施行,提前爆炸會影響 PoW 網絡安全。至今爲止難度炸彈已經推遲了三次,最後在區塊高度爲 9200000 的繆爾冰川升級中,將難度炸彈推遲了 4000000 個區塊,將於今年 8 月份爆發。這次倫敦硬分叉的 EIP 3554 的內容就是推遲難度炸彈到今年 12 月份。

HashKey 崔晨:解讀以太坊倫敦升級 EIP 及潛在影響圖 2:以太坊的網絡難度,紅框代表推遲難度炸彈的升級

在接下來的上海硬分叉升級中,預計包括 ETH 1 與 ETH 2 合併的內容,如果能按時完成,那麼難度炸彈會按照預定的時間出現,但難度炸彈在短時間內不會造成很明顯的影響。礦工成本與幣價有很大關係,從以太坊歷史算力的變化來看,算力沒有因爲區塊獎勵減少或者網絡難度上升而暴跌過,反而以太坊價格下跌是導致全網算力下跌的主因。如果要限制 PoW 挖礦,讓礦工主動退出,還需要難度炸彈實施較長時間或者大幅調低區塊獎勵。

HashKey 崔晨:解讀以太坊倫敦升級 EIP 及潛在影響圖 3:以太坊網絡算力,主要受以太坊價格影響

其他 EIP 的影響

EIP 3198 是爲了輔助 EIP 1559 而實施的,添加了 BASEFEE 操作碼,目的是返回當前區塊的基礎費。EIP 3541 實施後,網絡將拒絕以 0xEF 開頭的新智能合約,已經存在的智能合約不受影響。這是爲了接下來對 EVM 對象格式的提案做準備,如果下一步的提案沒有部署,這個方案也可以用於其他用途。

EIP 3529 修改了某些操作碼對 gas 的退款,這會影響 Gas Token 使用。以太坊在 gas 定價中,涉及到清理狀態和存儲插槽以及刪除帶有自毀操作碼的合約時 gas 收費爲負值,也就是會有 gas 退回,最高退款爲創造時消耗量的一半。根據這個特徵,用戶可以在 Gas Price 低的時候花費 gas 創建這些智能合約,在價格高的時候清理和刪除來獲得 gas 再用於其他交易,以此實現 gas 費的套利。例如 GST1,GST2 以及 1inch 開發的 CHI 就是使用了不同機制的 Gas Token。EIP 3529 取消 SELFDESTRUCT 操作碼對 gas 的退款,並降低 SSTORE 操作碼對 gas 的退款,這會導致 Gas Token 失效。減少 Gas Token 有利於減少不必要的 gas 使用佔用網絡資源,也避免退還 gas 後造成區塊大小的變動。

思考與總結

在倫敦硬分叉升級之前,以太坊已經進行過數次硬分叉升級,下次上海硬分叉實施之後,有望實現以太坊 1.0 與信標鏈的合併。倫敦升級共包括 5 個 EIP 內容,其中 EIP 1559 調整手續費收取方式和 EIP 3554 推遲難度炸彈的影響較大。

EIP 1559 讓手續費更有效率來提升用戶體驗,總體上可以增加以太坊網絡的生態價值。但不能從根本上解決網絡擁堵和高手續費的問題,這需要通過二層擴容或者以太坊 2.0 來實現。EIP 3554 對難度炸彈的推遲可以讓其在信標鏈 PoS 完全準備好的時候實施,以促使礦工放棄 PoW 鏈。除此之外,倫敦硬分叉還會影響 Gas Token 的使用,之後 Gas Token 會失效,但有利於非必要網絡空間的釋放。

以太坊網絡升級通常採用硬分叉的形式,硬分叉相對於軟分叉來說,最大的區別在於是否兼容舊版本。硬分叉能保證全部節點都升級爲最新版本,否則不會被其他已升級的節點接受。以太坊在向 2.0 階段的升級中改動很大,需要所有節點都保持一致,使用同一版本。比特幣爲了防止社區分裂,通常使用軟分叉的方式升級,例如隔離見證。爲了避免硬分叉造成社區分裂,很多公鏈採用提案通過後自動升級的方式。以太坊強大的社區共識則防止了真正分叉,一般情況下創始人 Vitalik 支持的提案都會獲得社區支持。即使倫敦硬分叉中的某些內容會受到礦工反對,造成社區分裂的可能性也很小。