https://zhuanlan.zhihu.com/p/109531201
https://decert.me/tutorial/solidity/ethereum/eth_history
Four Stages#
Stage 1: Frontier - released on July 30, 2015.
Stage 2: Homestead - released on March 14, 2016.
Stage 3: Metropolis - Phase 1 Byzantium released on October 16, 2017, Phase 2 Constantinople released on February 28, 2019.
Stage 4: Serenity - release date to be determined.
The first three stages represent the 1.0 era of Ethereum, based on the POW consensus mechanism, and the last stage is Ethereum 2.0, which will upgrade from POW to POS consensus mechanism.
Stage 1: [Frontier]#
On July 30, 2015, the initial version of the Ethereum network, Frontier, was released on a block with a height of 0. The genesis block contained 8,893 transactions, which came from the transaction addresses that participated in the crowdfunding since the public sale of ETH in 2014 and the addresses of the Ethereum Foundation.
Frontier is the original state of Ethereum, and the development team positioned it as a beta version. It is not a secure and reliable network, and the experience and functionality are also simple, which can be described as rough. Its main functions are as follows:
1. Mining function: It provides a mining interface and specifies the blockchain reward policy: after a miner mines a new block and it is confirmed, they can receive a reward of 5 ETH.
2. Restricted transaction function: It provides methods for uploading and executing contracts, but the gas limit for each block is hard-coded as 5000, which means that large-scale development and transactions on Ethereum are restricted during this period. After a few days, when miners operate and use the network normally, the gas limit is automatically lifted, and Ethereum network can process transactions and execute contracts as expected.
3. Centralized protection measures: Canary Contracts - Canary contracts are used to timely remind and prevent erroneous operations or invalid transactions on the network, avoiding users from operating on an invalid chain. This is a centralized mechanism that plays a necessary role in the early Ethereum network security operation.
4. Poor usability: The Frontier stage of the Ethereum network does not have a graphical user interface, and all client operations can only be done through the command line. This rough operating interface is very unfriendly to ordinary users, so the initial Ethereum users are limited to developers familiar with code.
It can be seen that the goal of Ethereum during this period was to provide a functioning blockchain network, create a usable environment for mining and transactions, allow developers to test various distributed DAPPs, and explore the original pioneering work.
Although Frontier is only a beta version, its performance exceeded expectations. A large number of miners entered the network to mine and receive token rewards, which increased the computing power of the Ethereum network and improved its ability to resist hacker attacks. Frontier is the first milestone in the development history of Ethereum.
Stage 2: [Homestead: Home]#
On March 14, 2016, on Pi Day, Ethereum released the second stage, Homestead. It was the first hard fork plan of the Ethereum version, which occurred at block height 1,150,000. Because the versions after the hard fork are not compatible with the previous versions, all nodes must complete the version upgrade before the fork to keep their data consistent with the main chain.
This is the first stable network of Ethereum, marking that Ethereum can run smoothly and is no longer an insecure and unreliable network. However, from a technical perspective, compared with Frontier, there is no particularly significant breakthrough. The main improvements in this stage include:
1. Removal of Canary Contracts: The centralized functions and mechanisms on the Ethereum blockchain were removed.
2. Introduction of Mist Wallet: The graphical interface of the Mist wallet client was provided, allowing users to easily hold or trade ETH. Ethereum is no longer just a development tool for technical personnel, and ordinary users can also easily experience and use Ethereum.
It is worth mentioning that Homestead is the first official and stable version of Ethereum. Two months after its release, the Ethereum developers conference DEVCON-2 was held in Shanghai, China on June 16. The theme of the conference focused on smart contracts and network security. However, the next day, the most serious hacking attack in the history of blockchain occurred: The DAO attack that shocked the cryptocurrency community. Due to a vulnerability in the smart contract written by The DAO project, hackers successfully attacked and stole 3.6 million ETH. Eventually, ETH obtained the majority of the community's votes to implement a hard fork at block height 1,920,000, recovering the losses of The DAO crowdfunding participants. However, those who did not recognize this fork still remained on the original chain for mining and transactions, which later became Ethereum Classic (ETC), and Ethereum split into two chains.
Stage 3: [Metropolis: Metropolis]#
Metropolis is divided into two stages: Byzantium and Constantinople, which will be implemented through two hard forks.
Byzantium was activated on October 16, 2017, at block height 4,370,000, and the fork was successfully completed. The upgrades involved mainly include:
1. Adjustment of the formula for block difficulty assessment: It stipulates that the manipulation of uncle blocks cannot be used to forcibly increase the block height, increasing the mining difficulty and ensuring the stability of block generation speed.
2. Adjustment of mining rewards: The mining reward is reduced from 5 ETH per block to 3 ETH.
3. Delaying the "Difficulty Bomb": In order for Ethereum's consensus mechanism to smoothly transition from POW to POS, Ethereum planned to gradually increase the difficulty of mining new blocks during the transition period in September 2015, creating a "Difficulty Bomb" mechanism. According to this mechanism, in the later stage of POW, the mining difficulty will increase to the point where new blocks cannot be generated, and the Ethereum network will be frozen, entering an "Ice Age". The purpose is to eventually eliminate the POW mechanism and prevent miners from continuing to operate on the old POW chain, resulting in two independent chains and community division. The Byzantium upgrade postponed the "Difficulty Bomb" plan by 1 year.
The Constantinople hard fork was triggered on February 28, 2019, when the block height reached 7,280,000.
The Constantinople upgrade includes a total of 5 improvement protocols: EIP 1234, EIP 145, EIP 1014, EIP 1052, and EIP 1283. The more important contents include:
1. Optimization of gas fees: Reducing the gas cost of the SStore opcode allows dApp developers in the Ethereum virtual machine to optimize certain operations to save gas. This improves the scalability of the Ethereum network.
2. Delaying the "Difficulty Bomb": The "Difficulty Bomb" period is delayed by 5 million blocks, lasting about 12 months, and there will be another vote at that time.
3. Smart contract verification: Allowing smart contracts to verify each other by checking the hash value of another smart contract. This saves a lot of time and effort in verifying smart contracts.
4. Reducing block rewards: Reducing mining rewards from 3 ETH per block to 2 ETH. This is the third reduction in block rewards for Ethereum.
This upgrade will have the greatest impact on block rewards, and it will have a significant impact and adjustment on mining machine manufacturers, miners, and even the Ethereum mining ecosystem. Due to the decrease in mining revenue and the increase in opportunity cost, mining Ethereum will become less cost-effective compared to other cryptocurrencies. Therefore, many Ethereum miners may switch to mining ETC. Mining pools are also likely to gradually shift to other cryptocurrencies in order to retain miners.
Istanbul#
Istanbul was activated at block 9,069,000 and was executed on December 8, 2019. Istanbul fork includes the following important improvements:
- Reduced gas cost for calldata (a location for storing data, which will be introduced in Chapter 6) parameters (EIP2028).
- Reduced gas cost for the alt_bn128 (elliptic curve) precompiled functions (EIP1108).
- Added the chainid opcode, allowing smart contracts to identify whether they are on the main chain, a forked chain, or a layer 2 network (EIP-1344).
- Added the BLAKE2 precompiled function, allowing Ethereum to interact with the privacy-focused Zcash chain and improving Ethereum's privacy capabilities.
Among them, points 1, 2, and 3 are significant improvements for Ethereum's layer 2 network solutions, as many layer 2 solutions bundle multiple transactions together for smart contract verification (using the alt_bn128 function for verification).
In addition, the Istanbul fork also includes two improvements that re-adjust gas fees: EIP-1884 and EIP-2200. These will not be discussed in detail here, but if you are interested, you can read more through the links.
Beacon Chain Genesis Block#
On December 1, 2020, the Beacon Chain was officially launched, marking an important step for Ethereum towards the POS consensus.
After the launch of the Beacon Chain, there are two independent chains in Ethereum, but at this time, the Beacon Chain can only achieve consensus and cannot perform any transactions.
Berlin#
The Berlin upgrade took place at block 12,244,000. It optimized the gas cost of certain Ethereum virtual machine operations and added support for multiple transaction types. The modifications in the Berlin upgrade are as follows:
- EIP-2565 - Reducing the gas cost of ModExp.
- EIP-2718 - Easier support for multiple transaction types.
- EIP-2929 - Increased gas cost for state access opcodes.
- EIP-2930 - Added optional access lists.
London#
The London upgrade took place at block 12,965,000 on August 5, 2021. It introduced EIP-1559, which modifies transaction fees, and also made changes to the refund handling of transaction fees. The modifications are as follows:
- EIP-1559 - Improves the transaction fee market.
- EIP-3198 - Returns BASEFEE from the block.
- EIP-3529 - Reduces gas refunds for certain Ethereum virtual machine operations.
- EIP-3541 - Prevents deployment of contracts starting with "0xEF".
- EIP-3554 - Postpones the "Ice Age" to December 2021.
The Merge#
On September 15, 2022, the Beacon Chain and the Ethereum POW chain merged, marking an important milestone. After the merge, the POW consensus is no longer used, and the two chains are given new names: the consensus layer and the execution layer.
The execution layer is responsible for transaction execution (EVM), and the consensus layer is responsible for block consensus.
Stage 4: [Serenity: Serenity]#
The final stage of Ethereum's development, which means a period of complete functionality and stability. Ethereum will enter a "serene" state. It is also known as Ethereum 2.0.
Ethereum 2.0 will be launched after the successful completion of two upgrades and will go through two stages: "Istanbul" and "Ethereum 1.X" before "Serenity" arrives.
The Istanbul hard fork was activated on December 8, 2019, at block height 9,069,000, and proposed 6 improvement proposals. The keywords for Ethereum's upgrade this time are cost and speed. It achieves improved performance, optimized costs, improved interoperability with Zcash, and supports more creative features around smart contracts.
1. Cost: Reducing the cost of development, such as precompiles, code prices, gas fees, etc. The cost of transaction data is reduced from 68 gas per byte to 16 gas. This allows more data to be accommodated in a block, increasing Ethereum's bandwidth and improving scalability.
2. Speed: TPS increased to 3000, and the Ethereum network can process 3000 transactions per second. Previously, Ethereum could only process about 30 transactions per second.
Future: Rollup-Centric Development Roadmap#
On November 5, 2022, Vitalik published the latest development roadmap for Ethereum, which includes six stages: The Merge, The Surge, The Scourge, The Verge, The Purge, and The Splurge. These six stages will be simultaneously promoted.
The Merge stage: It has been mostly completed and is expected to undergo the Shanghai upgrade in April, activating the withdrawal function.
The Surge stage: Promoting scalability centered around Rollup, which will reduce the cost of Rollup.
The Verge stage: Introducing Verkle trees to optimize data storage and verification.
The Purge stage: Cleaning up data, simplifying storage, and reducing the performance requirements for validator hard drives.
The Splurge stage: EVM improvements and full adoption of zero-knowledge proofs.