Author: ChiHaoLu(chihaolu.eth) @ SWF Lab
本系列文主要作為個人學術筆記分享使用,不作為教學用途。第二篇文章主要紀錄寧靜期開始到 Merge 之前的主要硬分岔與以太坊網路相關歷史。
寧靜 Serenity:2020~
在寧靜之前的三個主要階段都屬於 ETH1.0,而寧靜開始基本上就稱為 ETH2.0,本系列文的第二篇主要介紹寧靜開始到合併(The Merge)之前的所有升級。
這個階段的升級主要目的都在朝著 PoS(使用 Casper FFG 共識算法)、Layer2 靠近,也就是用來提升擴展性,提升交易速度、降低手續費等目的。
關於分片鏈以及 PoS(以及 Staking 等內容)這兩個 ETH2.0 的三大機制之二下一篇文章會介紹。
以太坊 2.0 主要擁有數個 Session 分段上線:而本文會提到的 Beacon Chain 上線就是 Phase 0。
信標鏈上線(Beacon Chain Genesis, Dec-2020)
由於 Beacon Chain 需要 16384 個 deposit,每個 deposit 為 32 個 staked ETH。因此於 Oct-2020 佈署了 Staking Deposit Contract。而 Beacon Chain (是一條以 PoS 為共識的鏈,與當時的 PoW 並行)收到 524,288 個 ETH 存款之後在 2020/12/1 開始產塊。
信標鏈的目的在於確保主網 PoS 的系統完整性及正常運作,在當時屬於 PoW 主網的側鏈,處理完所有驗證者(Validator)在 Deposit Contract 的內容之後,才讓 PoW 主網能夠順利關閉然後 PoS 主網順利開啟運作。
這個概念就像是 PoW 是一個高速前行的汽車,而我們想要把這台汽車升級,就必須先把升級後的內容提速到與這台汽車同行,然後將升級內容(ETH2.0)搭載到原先的 PoW(ETH 1.0)上。
信標鏈不支持智能合約以及帳戶功能,也不支持資產轉移,主要用來協調分片鏈並且管理驗證者,驗證者會在信標鏈中質押 ETH 來驗證交易,並且取得 ETH 作為獎勵回報。
柏林硬分岔(Berlin Hardfork, Apr-2021)
Berlin Hardfork 主要用於最佳化當時於 EVM 執行某些 Operations 的 Gas Cost,並且增加數個交易相關型態,這些改變的其中一些目的也在於實作 Account Abstraction。另外還增加某些狀態訪問 opcodes 的成本,以此降低 DoS 的風險。
降低 Gas Cost 的方法例如:
- 引入 precompiled
- 引用 Access List
相關的 EIP 如下:
- EIP-2565: ModExp Gas Cost
- EIP-2718: Typed Transaction Envelope
- EIP-2929: Gas cost increases for state access opcodes
- EIP-2930: Optional access lists
倫敦硬分岔(London Hardfork, Aug-2021)
London Hardfork 最主要的目的在於引入了 EIP-1559,對以太坊的手續費市場造成了極度重大的改變,同時推遲了難度炸彈的時間。
相關的 EIP 如下:
- EIP-1559: Fee market change for ETH 1.0 chain
- EIP-3198: BASEFEE opcode
- EIP-3529: Reduction in refunds
- EIP-3541: Reject new contract code starting with the 0xEF byte
- EIP-3554: Difficulty Bomb Delay to December 2021
關於 EIP-1559 很值得了解,大家可以查看此篇文章做更深入的探索:給忙碌人的 EIP1559 簡史
河鼓二升級(Altair Upgrade, Oct-2021)
Altair Upgrade 是信標鏈的首個升級,主要目的在於使信標鏈的Inactivity(怠惰,不更新最新的軟體版本,不保持節點在線)和 Slashing(作惡)懲罰提升到預期的水平。同時升級之後開發者可以在信標鏈上使用 Light Clients,就不用再使用全節點這樣繁重(需要完全同步)的軟體進行交互。
箭形冰川升級(Arrow Glacier Upgrade, Dec-2021)
Arrow Glacier Upgrade 主要內容在於 EIP-4345: Difficulty Bomb Delay to June 2022,也就是如題所說的推遲難度炸彈。相似的操作在之前的許多升級也都有出現,包含 Byzantium、Constantinople、Muir Glacier 和 London。
灰色冰川升級(Gray Glacier Upgrade, Jun-2022)
Gray Glacier Upgrade 主要內容在於 EIP-5133: Delaying Difficulty Bomb to mid-September 2022 ,也就是如題所說的推遲難度炸彈三個月,就跟前面提到的冰川升級都一樣。
参宿五升級(Bellatrix Upgrade, Sep-2022)
Bellatrix Upgrade 是信標鏈的第二次升級,會將驗證者的處罰(前面提到的 inactivity 和 slashable offenses)提升到預期的數值,並且這次升級還包含了 fork choice,以此讓最後一個 PoW 的區塊可以順鏈銜接到第一個 PoS 區塊。
Closing
下一篇文章會分享關於合併以及合併之後的相關升級,還有 ETH2.0 相關的新功能。
Reference
- The history of Ethereum
- Ethereum Execution Client Specifications
- History of Ethereum Hard Forks
- TOP 10 EIP every WEB3 professional MUST know.
- Hard Fork @ Genesis DevCon — On Pursuing a Decentralised World — Featuring Yanislav Malahov
- What is Olympic, Frontier, Morden, Homestead and Ropsten Ethereum blockchain?