📜 [專欄新文章] 給忙碌人的 EIP1559 簡史
✍️ Ping Chen
📥 歡迎投稿: https://medium.com/taipei-ethereum-meetup #徵技術分享文 #使用心得 #教學文 #medium
以太坊倫敦升級將大幅改變交易手續費的收取方式
1. 要解決的問題
交易手續費競爭
目前包括比特幣、以太坊在內的區塊鏈都有效能的限制,比特幣的 TPS(每秒交易數)是 7,以太坊大約是 15,而一旦待處理的交易數量超過區塊鏈的處理上限,負責產出區塊的驗證者(礦工)就會從中選擇手續費高的交易打包,讓「誰的交易先被處理」的問題交由市場機制解決。
這樣的設計乍看之下合理,卻會對日常使用者造成額外的認知負擔。
礦池直接告訴你目前待處理交易的手續費分佈,加深使用者的焦慮
一般來說,當我們送交易的時候都是希望越快被處理越好,但是付的錢要越少越好,所以這時候出價的策略就會變成「先看看別人都出多少」,再用略高一點點的價格贏過別人。這件事會要求使用者去「預測」區塊鏈的擁擠程度,才能用最少的錢擠進下一個區塊,徒增困擾。而且當很多人都急著發交易的時候,手續費會被無情的推高,直到多數人付不起為止,而這些爆高的手續費進到礦工口袋,在利益分配上也不是最佳的。
區塊資源缺乏彈性
另一個 EIP1559 想要解決的問題是區塊鏈資源的尖離峰調度。
手續費有明顯的尖峰時段
目前,每一個區塊能夠塞的交易量是固定的,但使用的需求卻會有高低起伏,通常是週間比週末多,亞洲時間的晚上到深夜又比白天多。偶爾也會出現像 ICO 或 NFT 發售之類的突發需求,短時間內大幅推高手續費到非常誇張的境界,對於不願意出那麼高價的使用者而言,相當於區塊鏈暫時癱瘓。
2. 解決方案的演進
第二價格拍賣
原本的交易手續費是你出多少就會被收多少(第一價格拍賣),所以導致大家要處心積慮的選出一個不高不低的數字。如果換成第二價格拍賣法,也就是「不論原始出價多少,同一個區塊內的交易,統一收取相同的費用」,手續費由這批交易中的最低價者決定。這樣一來,使用者不用多想,只要出自己真正願意付的最高價就好,反正超過最低價的部分會被退回。
燒毀手續費
然而,第二價格拍賣有個明顯的漏洞,那就是會被礦工操縱。當礦工由高到低排好了要打包的交易之後,他可以把出價最低的幾筆交易換掉,故意自己製造一些高手續費的無用交易,反正手續費最後都會回到礦工身上,而且墊高最低手續費後,排在前面的交易也要付更多錢給礦工,礦工賺。
https://vitalik.ca/files/misc_files/EIP_1559_Fee_Structure.pdf
為了解決礦工操縱手續費的問題,最乾脆的解法就是這筆錢誰也不要拿了,交易手續費通通燒掉!礦工用自己的錢去墊高手續費只會虧更多。
系統手續費 + 小費
EIP1559 最後定了一個有趣的方案:系統根據需求自動調整手續費。
首先把原本的區塊大小上限變成目標的兩倍,如果希望一個區塊用掉 15,000,000 gas,就把上限設成 30,000,000 gas。礦工還是可以盡情塞滿區塊,但是這個區塊的滿溢程度會決定下一個區塊的系統手續費,每個區塊可以有正負 12.5% 的手續費調整。
舉例來說,如果系統手續費原本是 20 Gwei,區塊剛好裝到半滿的 15M gas,下個區塊的系統手續費就保持 20 Gwei;如果這個區塊是空的,下次的手續費降到 17.5 Gwei;如果這個區塊塞滿 30M gas,下個區塊的手續費提升到 22.5 Gwei。
新系統的設計立意和第二價格拍賣的市場供需決定論類似,但是很大程度的降低了礦工操弄的空間,而且讓整個區塊鏈對突發的高需求有更多彈性去應付,系統可以暫時以兩倍速處理交易,雖然會快速墊高手續費,但是等到離峰時段自然會慢慢降下來,等於是跟未來「借」了一些容量來用。
不過如果遇到像是 NFT 開賣這種瞬間壅塞的情況,兩倍的空間可能還是不夠用,而且每個區塊 12.5% 的手續費漲幅也許不足以熄滅買家的熱情,所以 EIP1559 還是保留了「小費」,也就是給礦工塞錢的機制,讓你在極端狀況時還是可以靠買通礦工來加速交易。
3. 社群反應
礦工好生氣好生氣
這搞不好是開發者們意料之外的發展也說不定。
以太坊核心開發者和礦工起爭議也不是第一次,包括之前降低區塊獎勵,以及取消 ProgPoW 升級都曾讓礦工揚言搞事。而且在可見的未來,PoS 也會讓礦工徹底失業。相較之下,這次只是拔掉手續費收入,礦工理論上應該已經習慣逆來順受了才對。
但恰好 2020 年適逢 DeFi 流動性挖礦起飛,交易需求飆高,經常有破百甚至好幾百的手續費持續很久,讓礦工的收入結構的手續費佔比從本來的 5–10% 忽然升高到幾乎跟區塊獎勵 1:1,甚至超過,這時後說要燒掉手續費收入,礦工當然就非常有感覺了。
崩潰的礦工開始在社群上各種哭鬧,一下說開發者搶錢,一下說這樣會破壞區塊鏈的安全性(實際上相反,高手續費佔比會導致區塊重組),與礦池友好的區塊鏈專欄作家也在此事上無情批判提出 EIP1559 的人的經濟學應該要當掉重修云云,最後大礦池們甚至再度連署號召硬分叉頑抗到底。
不過勒,現在以太坊上有超防叉的 DeFi,信標鏈又已經在跑,PoS 也是隨時準備上線的狀態…
礦工想搞分叉? ¯\_(ツ)_/¯
通縮迷因
另一個有趣的戰場在以太坊的 Twitter 意見領袖群。
過去,當比特幣和以太坊社群互酸互嘴的時候,以太幣沒有發行量上限這件事常常被比特幣擁護者調侃,說你有智慧合約有 DeFi 又怎樣,這種亂印鈔通膨的幣根本比不上有總量限制的數位黃金比特幣。
但現在情況不同了,EIP1559 看起來似乎能改變以太幣的發行趨勢,如果每次交易都會燒幣,那豈不是要比總量固定更讚,直接變成會通縮的超稀缺資源嗎?如果比特幣是 sound money(健全的貨幣),那改版後的以太幣根本就是 ultra sound money(超音波…貨幣?)了呀。
於是這些以太坊的網紅公知,像是 Bankless 的兩個創辦人和 EthHub 的兩個創辦人,你可以簡單理解為區塊鏈世界的朱學恆或周玉蔻吧,便開始帶起這個吹捧通縮迷因的風潮,在名字旁邊放上蝙蝠和聲音的 emoji(🦇🔊),說以太幣這下肯定要起飛啦,又 DeFi 又 2.0 又通縮,市值遲早超越比特幣。
不過呢,EIP1559 實際上並沒有保證通縮,交易手續費是會被銷毀沒錯,但區塊獎勵還是會印出新的幣,有可能多也有可能少。長期而言,最穩定的情況應該是在通膨和通縮間擺盪才對。
有些腦袋清醒的人選擇不隨通縮迷因起舞,比方說 MyCrypto 的創辦人就跳出來力戰群雄,勸那些網紅收斂一點,以太坊本來就很好,不需要用誤導性的說詞。另一邊,開發者社群倒是沒什麼聲音,可能幣價和跟比特幣輸贏本來就不是關心的重點,有 EIP 狂粉幫忙在氣勢上壓制礦工也不錯,他們更在乎測試鏈運作的狀況,以及專心為主鏈升級做好準備。
4. EIP1559 實際影響
以太幣會不會漲
不知道。
0 gas 交易死去
原本在 Flashbot 和 ArcherDAO 的研究之下,有幾個用 MEV searcher 發免手續費交易的方案出現,概念上就是你發交易的時候 gas 欄位填 0,但是在合約執行期間直接送錢到礦工地址(block.coinbase),藉此讓沒有以太幣但是有 ERC20 token 的錢包也能發交易。
這個做法升級後將變得不可行,因為 0 gas 會違反系統強制收手續費燒掉的限制,只能暫時退回比較原始的 meta transaction relayer,也許等未來帳號抽象的方案做出來再看有沒有機會了。
手續費設置自動化
這應該才是 EIP1559 的本意,升級後,使用者發送交易不太需要再觀察區塊鏈 mempool 的狀況,只要參考上個區塊的手續費再多加一點,就有很高的機率會在下幾個區塊被執行。不過對於那些想要設得比目前市價更低、願意慢慢等來省錢的人來說,交易打包的時間還是要看運氣就是了。
給忙碌人的 EIP1559 簡史 was originally published in Taipei Ethereum Meetup on Medium, where people are continuing the conversation by highlighting and responding to this story.
👏 歡迎轉載分享鼓掌
ツ emoji 在 mrbrown Facebook 的精選貼文
The emoji 😂 is the Oxford Dictionary’s word of the year? ¯\_(ツ)_/¯