📜 [專欄新文章] 給忙碌人的 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.
👏 歡迎轉載分享鼓掌
以太坊 transaction 在 Taipei Ethereum Meetup Facebook 的最佳貼文
📜 [專欄新文章] Scaling Ethereum 參賽心得
✍️ Johnson
📥 歡迎投稿: https://medium.com/taipei-ethereum-meetup #徵技術分享文 #使用心得 #教學文 #medium
Scaling Ethereum 是一場由 ETHGlobal 所舉辦的線上黑客松,也是我第一次參加與以太坊有關的黑客松活動,這篇文章就來分享一人參賽的過程與心得。
源起
一開始是在 telegram 群組中得知這場比賽的消息,因緣際會之下剛好有人想組隊參賽,於是就在報名截止的前一天一起跟著報名了。
報名的方式除了填一些基本資料外,最特別的是還要 stack 以太幣,也就是要傳送 0.01 顆以太幣給主辦方,規則是必須在比賽的最後,有提交作品的人才能贖回 0.01 顆以太幣,之後看到 meme 頻道有人留言:
When your project is incomplete but you submit to get back stake.
一方面,這確實也會激勵你好好把比賽完成,就算沒做完也要有些成果上去,這也是主辦方秉持的精神,他們認為大家來黑客松相互學習成長,競賽獎金則是其次。
獎金
比賽方式是由 25 個左右的贊助者(sponsor)分別提供獎金,每個 sponsor 都有錄製一段影片,說明怎麼獲得他們的獎金,大部分會要你使用他們開發的工具,或者必須跟 sponsor 在做的研究有關,去實作出創新的作品。可參考:Prizes — Scaling Ethereum
你的專案可以選擇要投入哪個 sponsor 的獎金,一個專案可以投入多個 sponsor 底下,這樣獲獎機會也會比較高。
我選擇的 sponsor 是 zkSync,他們的說明如下:
zkSync is a user-centric zkRollup developed by Matter Labs. It uses zero-knowledge proofs to keep data availability on mainnet to achieve exponentially lower transaction costs. You may have seen us powering projects such as payments and Gitcoin Grants. We are currently rapidly developing zkSync 2.0, which will feature EVM-compatibility in testnet May 2021, soon followed by zkPorter, our new exponential scalability solution.
PrizeszkSync will be awarding their Prizes as follows:
- 1 winner — 4,000 USDC
- 2 winners — 2,000 USDC
- 4 winners — 500 USDC
We encourage builders to utilize zkSync SDK’s, implemented in JavaScript/Typescript and Rust. Prizes will be awarded to projects that make it simpler and easier for non-technical users to use zkSync, other ideas include integrations of current tools such as in Gitcoin Grants and tools for easy mass payments and multi-sigs.
社群互動
這個 hackathon 很棒的地方是他把使用者體驗做的很好。每個人都會有自己的 dashboard 顯示目前專案的進度和一些訊息。
Check-In #1 和 Check-In #2 的階段會要你提供專案的構想,你隨時都可以修改。主辦方會看你提交的資訊,幫助你找到適合的 sponsor,或是給你一些建議,就算是一人參賽也能感受到回饋。
整個賽程期間,社群都是使用 discord 在互動,discord 裡頭有很多頻道,像是基本的大會報告的頻道,或是一些不重要的迷因、閒聊頻道都有。
每個 sponsor 也都有自己的頻道,我就會在 sponsor-zksync 的頻道詢問技術的問題,例如我想問問 zkSync 一些關於專案構想的意見:
Hi there, I want to build a gas fee relayer which make my ERC-20 token transfer without transaction fee, to be more precise, delegating gas payment by another party. I think this is done by GSN https://opengsn.org/ , but maybe it could built on L2 with zkSync? I’m not sure, could somebody give me some advice about this topic?
zkSync 團隊的人回應我:
This is an amazing idea! This can totally be built, as we support batching transactions which can be used for all kinds of creative things such as paying for transaction fees in an erc-20 token. Your idea seems like a combination of that and the gitcoin grants integration. To get started, I suggest you watch the short 10 minute presentation I made on using the SDK and batching. Looking forward to your project!!
在 Check-In #2 的時候,我提交新版的專案構想,有一個欄位是問:「目前專案遇到什麼阻礙?」我的問題應該是被主辦方貼給 zkSync 的團隊,於是 zkSync 的團隊成員就用 discord 私訊我,貼了一些程式碼教我怎麼使用他們的 Javascript SDK,這突如其來的救援也幫了大忙。
除此之外,主辦方每個禮拜都會寄 email 通知一些重要的活動,賽程期間舉辦了四個 Summits 研討會,邀請世界各地有名的以太坊開發者分享議題,主辦方還有一個自己的 TV 網頁,直播所有的線上活動。這些活動都有錄影,可以在 youtube 看到過去所有的演講內容:https://www.youtube.com/c/ETHGlobal/videos
因為我的作品是使用 zkSync 的 Javascript SDK 製作的,好像也只能投稿 zkSync 作為獎金的 sponsor,不過主辦方在最後一個禮拜,也寄 email 告訴我說可以多投稿不同的 sponsors 看看,他依據我的專案構想給我一些適合的 sponsors 作為參考。
不過最後我還是只投稿了 zkSync,有點懶著再看其他 sponsors 的文件,也覺得其他 sponsors 的題目需要花比較大的功夫才能完成,一個人能力有限,就做點簡單的東西就好。
關於我的專案 — Gas Relay Service
在以太坊的世界,每一筆交易都需要額外付一筆交易費,也就是以太坊的 gas fee。
我的專案是讓「收款人」能夠幫「付款人」支付以太坊的手續費。
在黑客松之前,我就想研究「第三方支付手續費」的議題,因此我大部分時間其實都在研究一般的 meta-transactions 是怎麼實作的,有興趣的人可以看看 simple meta-transactions 的原始碼:https://github.com/chnejohnson/simple-meta-transaction
之後我才開始玩 zkSync 的 SDK,並研究怎麼在 Layer 2 實現第三方支付手續費的問題,以下就附上作品連結以及簡單的專案介紹給有興趣的人參考:https://showcase.ethglobal.co/scaling/gas-relay-service-on-zksync
The target is that token sender can choose to find another account to pay for fee. The another account can be (1) the token receiver’s account, (2) sender’s another account, (3) third party’s account.
In this project, I finished the demo, which is the (1) above, that receiver pay gas fee for the sender.
有趣的是,我在研究 meta-transactions 時學到很多智能合約的寫法,結果在最後專案上都沒用到(沒寫到合約的程式),zkSync Javascript SDK 其實很簡單,他們的文件寫得很清楚。最後 Demo 還是用 zkSync 團隊的成品修改來的…XD。
所幸在沒有懂太多技術的前提下完成了這場黑客松的專案,成功贖回了 0.01 顆以太幣。
評審與決選
整個賽程來到最後一個禮拜,主辦方安排兩天的時間進行 Judges,使用 zoom 進行線上研討會,一個人基本上是 7 分鐘,前 4 分鐘播放 Demo 簡報,後三分鐘會有評審問問題。
第一個問題是說:「Demo 中你是使用 zkSync 的錢包網頁去操作,那實際上你做得部分是什麼?」
我就回答我在他們的網頁上加了一顆按鈕,使用他們的 SDK 做出 gas relay 的功能,還有一個後端的 server 去作 relay。
第二個問題大概是問:「什麼樣的情境下會需要由 receiver 幫 sender 支付 gas fee?」
我的回答是,在一般超商購物的情境,消費者通常只支付商品的價格,不會支付額外的交易費,我認為以太坊的手續費應該屬於軟體的營運成本,由賣方支付比較適合。那如果賣方希望手續費的成本是由消費者承擔,可以直接調高商品的價格。
當然,我英文講得零零落落,希望評審有聽懂就是了…
最後一場直播就是 Finale 決選,主辦方選出十二個隊伍,公開再 Demo 一次,以及提供線上觀眾詢問問題,至此整個賽程就差不多進入尾聲。
決選後的不久,主辦方就公布了這次有獲得獎金的隊伍,幸運拿到了 zkSync 頒發的小獎~
zkSync — Matter Labs
- Zeneth — 2000 USDC
- ZeroSwap — 1500 USDC
- Kangaroo — 500 USDC
- Gas Relay Service — 500 USDC
後記
這次的參賽隊伍中,Zeneth 跟我的主題非常相似:
Zeneth — Use Flashbots to enable arbitrary meta-transactions so EOAs can enter L2s without ETH
另一個我覺得有趣的專案是 Alexandria:
Alexandria — A dApp using STARKs to verify aspects of your identity without revealing more than you should
沒想到主辦方 ETHGlobal 下個月又要再舉辦一場黑客松,有興趣的人可以看看:https://defi.ethglobal.co/ ,這次的主題是 De-Fi。
最後,只要有到 ETHGlobal 的 TV 網頁參加 Summit 研討會的直播,就能夠獲得 POAP 勳章,它就是一個酷東西~😋
POAP: Proof of Attendance Protocol
Scaling Ethereum 參賽心得 was originally published in Taipei Ethereum Meetup on Medium, where people are continuing the conversation by highlighting and responding to this story.
👏 歡迎轉載分享鼓掌
以太坊 transaction 在 Taipei Ethereum Meetup Facebook 的最讚貼文
📜 [專欄新文章] EIP2929, EIP2930 簡介
✍️ Anton Cheng
📥 歡迎投稿: https://medium.com/taipei-ethereum-meetup #徵技術分享文 #使用心得 #教學文 #medium
Opcode 加油Proposal,會不會讓以太坊變更貴呢
昨天在同事的推薦下發現了這個YouTube系列:Peep an EIP,也聽了Vitalik和Martin介紹EIP2929 + 2930的這一期。這兩個EIP都已經被列入下一次的硬分岔(Berlin Hardfork),所以我就來寫個學習筆記。先打個預防針,本人對EVM可以說是非常不熟,但也希望藉著這個機會逼自己學習,如果有錯誤的話也希望懂的更多的各路大神可以不吝賜教。
Berlin without hardfork. (By Claudio Schwarz on Unsplash)
EIP2929: Gas cost increases for state access opcodes
乍看之下這是一個極為恐怖的Proposal。在Gas已經高到爆炸的2021年,理論上不應該再通過這種「加油」類的方案。不過不用緊張,其實這個EIP真正改變的是第一次access的價格,如果一筆交易內要執行一樣Opcode動作輛次,那麼gas cost 將降低為100。
Increases gas cost for SLOAD, *CALL, BALANCE, EXT* and SELFEDESTRUCT when used for the first time in a transaction.
大家都知道,合約最終會被Compile成一堆Opcode,這些Opcode也是用來計算最終交易手續費的依據:理論上越是花時間的的Opcode,應該要收越高的手續費。
但是一直以來,state access opcode 太便宜都是一個已知的問題:在2016年的上海DOS攻擊中,其中幾個攻擊的手法就是透過惡意交易大量讀取帳戶資訊、大量的創造合約再銷毀,或是不斷用 EXTCODESIZE 來讀合約大小等等,讓Client必須花大量的IO資源處理交易(需要讀寫disk的動作特別慢),最終使Client程式Crash或是延長出塊時間。儘管大部分的弱點已經透過EIP150中大量提升gas cost獲得改善(還有其後的EIP1884),但在EIP2929中,也引用的這篇Paper的數據:現在replay所有以太坊上的交易,當時那些惡意交易中的worst case還會需要~80秒才能完成。這跟以太坊所定義的13秒出塊時間有著很大的差距,也代表這個潛在的攻擊是可行的。
透過增加這些opcode所需要的gas cost,可以降低每個區塊最大可能的讀取數。以下是偷抄Vitalik PPT 的數據:(12,500,000 為gas limit上限)
Pre-EIP 2929:
BALANCE spam: 12,500,000 / (400 cost + 320 address size + 50 boilerplate) = 16,233 accesses per block
CALL spam: 12,500,000 / (700 + 320 + 50) = 11,682 accesses per block
SLOAD spam: 12,500,000 gas / (800 + 25 boilerplate) = 15,151 accesses per block (but of a smaller tree)
Post-EIP 2929:
BALANCE spam: 12,500,000 / (2,600 + 320 + 50) = 4,280 accesses per block
CALL spam: 12,500,000 / (2,600 + 320 + 50) = 4,280 accesses per block
SLOAD spam: 12,500,000 / (2,100 + 25) = 5,882 accesses per block
說實在的這個數據的解釋也很廢話,就是把Opcode變得用貴,能Spam的數量越少。平均來說Gas cost 變高3倍,所以之前worst case的80秒執行時間可以被下降到大概 ~27秒。
SSTORE changes
在實作層,EVM會維繫一個本筆交易讀取過所有交易的 Set。每次有尚未讀取過的slot時,就會先收取一筆 CLOD_SLOAD_COST (2100) ,然後把這個slot加入這個set中,下次讀寫就會比較便宜。
對於已經讀取過的Slot,再次寫入的Opcode SSTORE 之gas cost為會降低為
5000 — COLD_SLOAD_COST (2100) = 2900
簡單的說,單純只操作一次 SSTORE 的總gas 會維持一樣在 5000 。但如果這個slot是之前有讀過的,則寫入的gas cost就會降低。近一步來說,一個 x += 100 ,其實會變得更便宜:
Pre-EIP-2929: 800 SLOAD + 5000 SSTORE = 5800
Post-EIP-2929: 2100 SLOAD + 2900 warm SSTORE = 5000
其他Side effects
這個改動除了降低了最高能夠spam的次數以外,也降低了以太坊想要做到stateless client,理論上最大的witness 大小。其實這裡的原理跟前面很類似,下圖的表格比較的是目前使用hexary tree所需要的witness大小:若12.5M的區塊全部塞滿該Opcode的witness,理論上最大會佔多少空間。在EIP2929之後由於gas cost增加,就壓縮了最大可能的witness size.
這裡單純只比較增加gas cost後,對於max witness size的影響。影片中有提到其他許多方法旨在減少Witness bytes,包括使用binary tree而不是hexary tree,以及用Code Merklization等等。這些其他方法也能夠降低最後的Max Witness size,但跟這個EIP沒有直接相關。不過可以注意的一點是,這些其他在witness size上面的優化跟 gas cost 所帶來的優化的效果是可以相乘的,例如 SLOAD,更改gas price已經能夠讓max size 縮小2.6倍,若是改用Binary tree可以將 Witness bytes降低到 288 bytes,就會是再3~倍的優化。
對用戶的影響
依照Martin Swende 給出的數據,這個EIP對於一般交易的影響僅有提高0.3~0.4%。理由很簡單,雖然第一次access storage變貴了,但是後面幾次讀寫就會變得便宜。大部分應用的程式邏輯都是類似的幾個變數進行讀寫,因此可能有不少的動作反而會變得更便宜。一個最簡單的例子就是ERC20 Transfer,兩個餘額的 +=和 -= 都會變便宜,所以總共的花費也是變便宜的。
這其中也會對於Solidity的開發pattern有著一定程度的影響,我目前想到的影響可能有兩個:
由於多次的storage access變便宜,永遠cache state variables不再是一個最佳策略。以前我們會盡量想辦法減少寫入state storage的次數,現在可能會基於coding style考量減少一些的memory cache。
之前寫合約都會盡量避免external call,甚至會寫一些一次把所有 variable都回傳回來的笨函示,來避免多次的external calls。這有一部分原因是因為每次external call都會需要使用到 EXTCODESIZE 這個Opcode所以很貴。但如果 EXT 系列的Opcode也變得越call越便宜,那麼這個一次全部call 回來cache 住的pattern也可能改變。
以上兩個想法都還沒有經過實證,如果之後看到更有證據的分析的話,也會來這裡分享。
EIP2930: Optional access lists
EIP2929可能會影響一些鏈上的合約,因為有些合約有hardcode external call的gas 上限。對於這方面的問題,EIP2930提出一個新的交易類型,讓交易中多帶一個access list,即所有這筆交易即將讀寫的storage slot,並且先幫忙付掉第一次讀寫的gas,而真正交易讀寫該storage時,只會被要求付100 gas。
這不但可以避免這次EIP2929帶來的副作用,也可以被使用在其他因為gas price 改變的硬分岔升級而壞掉的合約,例如在EIP1184 增加 SLOAD gas price 時影響到的 Aragon 和Kyber 等等。儘管當時升級前各大專案都有幫助用戶提出migration 方案,但如果有人曾經卡錢在裡面,也可以Follow一下這次柏林Hardfork。
小結
新的一年就用一篇簡單的文章來開頭。最近發現自己以前的學習習慣有點亂無章法,所以新年整理了reading list,逼自己做筆記,順便發想一些想要寫的主題。今年的期許就是學更多Ethereum底層一點的知識,當然還有上層一點Defi的知識。也歡迎大家分享一下自己都是怎麼follow這麼多東西的><
EIP2929, EIP2930 簡介 was originally published in Taipei Ethereum Meetup on Medium, where people are continuing the conversation by highlighting and responding to this story.
👏 歡迎轉載分享鼓掌