EIP-1559 是爲了實現更好的用戶體驗和網絡安全性。

原文標題:《觀點 | 誰說 EIP-1559 是爲了降低交易費了?》
撰文:InfStones

最近經常見到的三連:

「1559 能降低 Gas 費嗎?」

「哦不能降低啊」

「那 1559 沒用啊」

觀點 | 誰說 EIP-1559 是爲了降低交易費了?

最近以太坊開發者表示有可能在 7 月實施硬分叉升級並實施 EIP-1559,一時之間關於 1559 的討論又變多了起來。我發現不少媒體在報道這則新聞時,都是這樣附帶解釋 EIP-1559 的:

EIP-1559 試圖通過引入固定費用和銷燬機制來降低交易費。

前面兩點說的確實是 1559 的重要特徵之二,但後面的這個目的就有點莫名其妙了,很難不讓人對這個邏輯關聯產生疑惑:

啥?這麼神奇?引入固定費用和銷燬機制就能降低交易費了?

尤其是在這個大家都倍感難受的問題上,如果能解決這個問題,大家的關注度無疑就上來了。

所以現在普遍存在的輿論導向成了:

聽說 1559 能解決目前價格 1000gwei 的 Gas 費

什麼啊,不能解決啊

1559 沒用啊

EIP-1559 表示很無辜。

錯誤的輿論

很長一段時間裏中文社區對於 EIP-1559 的爭論都集中在它能否降低 Gas 費上,這很讓人疑惑,其實中文社區內也不是沒有對 EIP-1559 的詳細英譯中介紹,比如 ECN 的 這篇 以及 這篇

但截止發稿上述兩篇的閱讀量都是 200 多左右,遠不及另一篇廣爲流傳的 EIP-1559 分析文章《EIP-1559 只是徒勞,毫無益處》。在這篇文章裏,作者旗幟鮮明地反對 EIP-1559 並提供了一系列分析證明。我非常尊敬作者對此貢獻的智力資源,但我不得不說本篇文章的批判點是有問題的。

掃過第一段的引言部分,第二段該文作者便表達了它的批判所指:

「假設有個東西的市場價格很高,你覺得剝奪生產者(賣方)從這個東西中獲得的經濟收入,可以使獲得這種東西的代價變得更低嗎?」

「但 EIP-1559 恰恰就是想讓你相信,削減礦工從 Gas 費中得到的收入,可以讓 Gas 的價格降下來。怎麼可能呢?」

接下來整個第二段圍繞該話題,作者用大量的篇幅舉了一個醫院就診的例子,並通過經濟學分析該問題。

但是其實根本不需要,如果 EIP-1559 真如上面引文所述,那真的是一個白癡的提案,無需任何分析就可以看出它巨大的問題。

但問題是,EIP-1559 不是爲了降低 Gas 費的呀。

EIP-1559 的設計目的

這裏有一篇對 EIP-1559 資源非常好的 蒐集帖

當然,這個鏈接裏的資源是全英文的,對中國社區的朋友們實在是不友好。在此我僅引用第一篇文章 Analysis of EIP-1559 中對 EIP-1559 的四個設計目標的闡述,如果你有興趣與能力閱讀其他文章,你會發現他們對 1559 的設計目標闡述是一致的。

  • 更好的用戶體驗。這是因爲大部分情況下用戶只需要出固定的費用,而無需弄清 gas price、gas limit,並且預測 gas 的變化,導致因 gas 估算錯誤而 pending 非常非常久的時間的問題。在這種情況下,大部分交易都可以在 1~2 個區塊內被確認。

  • 塊鬆弛機制。允許區塊大小根據需求量的多少而彈性變化,允許一些區塊變大,而一些區塊變小。

  • 更好的網絡安全性。比特幣總量恆定因此終局狀態下只能依賴手續費來留住礦工、保障網絡安全,以太坊在通脹礦工激勵兩方的權衡下應用 EIP-1559 可以持續通過增發獎勵激勵礦工,同時 1559 銷燬 base fee 抑制通脹。

  • 必須以 ETH 支付交易費用。這裏的原文是 Prevent economic abstraction,但爲了方便理解就不用這麼抽象的詞了,大白話就是之前礦工是可以收取其他費用來打包區塊的(事實有很多),但現在必須燒 ETH 作爲 base fee,加強 ETH 的 fee 屬性。

對 EIP-1559 的英文推介文章幾乎都是在闡述上述四點設計目標,很抱歉,沒有任何一點提到了 EIP- 1559 是爲了降低 Gas 消耗,或者降低 Gas 價格。

但 EIP-1559 就因此是徒勞而「毫無益處」的嗎?

相信你看完 EIP-1559 的四點目標之後,不會做出這樣的判斷。

僅拿用戶體驗(UX)問題說明。要弄清 gas fee、gas price、gas limit 等等概念,當發現錢包算出的 gas 高於或低於實際需要而要手動修改 gas price,並要根據 gas price 預測值來惴惴不安地上下試探,給少了要 pending (還會有加速的問題),給多了心裏憋屈 ... 這樣的以太坊能夠走向大規模應用嗎?

迴應一些普遍的觀點

A. 「用戶不用在過高的 Gas 費上浪費大量的金錢」

這是我經常能看到的反對者引用的 EIP-1559 介紹文章中的一句話,並將其引申爲 EIP-1559 可以降低高昂的 Gas 費。不得不感嘆語言的魅力,請準確理解什麼是「過高的」,「過高的」指的是高於供需點,指的是因爲 Gas price 預測不準確而付出的多餘部分的錢,而不是說在網絡擁堵時 Gas 費奇高無比,彼時的 Gas 雖然高,但是是符合供需關係的。不要再曲解 EIP-1559 的設計目的了。

B. 所以 EIP-1559 就不會降低 Gas 費咯?

錯了!EIP-1559 在很多情況下其實都會降低用戶實際付出的 Gas 費,通過區塊鬆弛機制和無需猜測的固定付費,可以減少上述「過高的」Gas 費。但請正確理解它的意思,不要引申爲用了 EIP-1559 Gas 費就不會達到幾十美金 / Gas Price 就不會達到 200gwei。

C. 當網絡擁堵時,應用了 EIP-1559 後大量的交易不是還是需要等待嗎?

當然,這個問題是以太坊網絡的性能問題,EIP-1559 並不能提升以太坊的性能,它不是幹這事的。請注意所有對 EIP-1559 推介文章的表述:「通常情況下(Generally)能夠更快地包含交易」。在大部分不擁堵的情況下(並且還要算上鬆弛機制裏備用的 100% 容量),相比採用不靠譜的 Gas Price 預測,直接付出 Base Fee 就可以保證包含交易。

D. 礦工費用變少了,礦工會離開,會降低以太坊網絡的安全性

因爲以太坊價格的上漲以及最近瘋狂的手續費收入,短期吸引了大量的算力進入以太坊。但必須看到,EIP-1559 不是昨天才發佈的,對它的討論至少持續了兩年。明知道這是會減少礦工收入的一個大趨勢,卻還是號召礦工往裏投入。改革總會有陣痛,新的礦工也會到來。