An Overview of Ethereum Hard Forks; From the Beginning to the Present
Some hard forks are pre-programmed as part of a software upgrade roadmap and include updates that the community generally agrees with (there is a social agreement).
However, some hard forks lack consensus among members of the group, leading to multiple blockchains.
For example, the events that led to the split of Ethereum and Ethereum Classic (ETC), as one of the most successful hard forks of this platform, were due to lack of consensus among community members.
In the following we will explain different types of Ethereum hard forks from the beginning to the present.
1. Pre-Release: Olympic- 2015
On May 9, 2015, the pre-release version of Olympic: Frontier was announced by the Ethereum Foundation.
This version was based on the Proof of Work algorithm and included a reward program to receive a maximum of 25000 coins for items such as sending the most transactions, the miner with the most transactions, and so on.
It lasted 14 days. While Olympic was technically a different hard fork network and is not supposed to be entirely on this list, this step defined part of the so-called “Genesis Block” in the frontier version.
2. Frontier-2015
Frontier version is the first official release of this platform known as “Ethereum 1.0”. This version includes a Genesis Block and 8893 transactions of users who bought Ethereum during the official pre-sale.
In total, just over 72 million ETH was pre-mined, of which approximately 12 million were allocated to the Ethereum Development Fund.
3. Ice Age- 2015
In the blockchain domain, the “difficulty” refers to the amount of effort a computer can make in order to mine the next block.
This “difficulty” is automatically adjusted to stabilize block time. The more blocks are mined in a given period of time, the more “difficulty” is created and vice versa.
To ensure network difficulty, a hard fork was added to change PoW to PoS within 16 months after the initial release, which significantly reduced mining speed after about a year.
Since then, the network reached “Ice Age”, where the network difficulty of mining new blocks increased dramatically and unprecedentedly.
The image above shows the average time it takes to find a block. Three peaks are clearly visible; this is when the “Ice Age” begins. Whenever a peak ends, the ice age is manually put in place by a new hard fork and the next peak is delayed.
4. Homestead- 2016
Homestead was a hard fork that eliminated Canary Contracts that had centralized the network, and introduced EIPs and Ethereum wallets called Mist to write smart contracts.
5. Tangerine Whistle- 2016
It was a small, unplanned hard fork that included only one EIP, EIP-150. This proposal repriced some codes to prevent denial-of-service attacks.
This fork increased EVM codes which were computationally expensive. Encrypted codes were the basis of spam attack, and the upgrade also made changes to reduce the effect of the attack.
6. DAO (Ethereum Classic)- 2016
The division of the initial platform into Ethereum and ETC is a very interesting and important story to hear, because some people thought their idea was great, while others hated it.
This hard fork is the most successful hard fork of this platform, so we will look at it in more detail.
The most significant event for Ethereum came in 2016, with the testing of a Decentralized Autonomous Organization, or DAO.
The DAO created by Blockchain-based Chinese startup Slock.it had an ambitious goal of establishing an investment company with no human-led governance that would allow investors to make all decisions through smart contracts.
DAO has no president and no staff and only includes laws that are coded by humans and enforced by computer protocols. It raised an initial fund of about $168 million to implement the projects.
Re-Entrancy Problem
On June 9, developers Peter Vessenes and Chriseth reported that Ethereum-based contracts that manage funds are potentially misused, which could deplete contract funds.
A few days later (June 12), Stephan Tual, founder of Slock.it, reported that DAO code is not vulnerable to the error described by Peter and Chriseth.
Concerned DAO colleagues breathed a sigh of relief until 5 days later, when an unknown hacker exploited the problem described on June 9 and began to drain funds from the DAO. Finally, he hacked 3.6 million pounds of DAO Ethereum.
People were watching their money being stolen in real time (like watching a video of bank robbery).
In the end, the hacker who said he could easily exploit the vulnerability in the DAO, raised $ 50 million in Ethereum based on the current exchange rate.
At the same time, a group of volunteers calling themselves the Robinhood Group (RHG) began using the same exploitation to withdraw the remaining funds to save them from being stolen by the hacker.
On June 21, the RHG announced that they had saved 70 % of DAO budget (approximately 7.2 million Ethereum) with a plan to return it to the community.
DAO Hard Fork
Fortunately, there were several security guards at the DAO which delayed all withdrawal requests by 28 days.
This gave the community a little opportunity to think about what they could do. From about June 17 to July 20, the hacker was not able to convert his DAO tokens to Ethereum.
Several developers focused on finding a suitable solution, and several ways were explored in this short time.
Among them were a DAO software proposal announced on June 24 and a DAO hard fork that was announced on July 15 to counteract the effects of DAO attack by changing the state of emergency.
Members of DAO and the Ethereum community then discussed what should be done in the event of such an incident to resolve the issue.
Voting took place and in July 2016, it was decided to implement a hard fork in Ethereum code and transfer the coins to a new smart contract to compensate the users for the damage they suffered.
On June 28, DAO developers discovered a DDoS bug in the DAO software and concluded that the DAO hard fork was the only viable solution to solve the damages.
This hard fork transfers all the coins invested in the DAO to a new smart contract, allowing the original owners to receive the full amount of their fund.
So it offers a solution to recover the stolen funds, but it also means interfering with the balance of specific addresses on the network, even if they are separate.
ETC came into being when some members of the Ethereum community completely rejected the hard fork, believing that it was impossible to change the blockchain, and decided to use the same original version of the platform.
At this time, the first ETC block was produced by the miners in block number 1.920.000 of the Ethereum blockchain on July 20, 2016.
Due to the nature of hard fork, all the users who had Ethereum at the time of hard fork, had their budgets in both blockchains.
That is, they received ETC in the new blockchain, exactly equal to the number of Ethereum coins they had in the previous network.
When this hard fork gained most of its mining power, many thought that consensus had been reached and the minority chain would be removed; like previous hard forks.
Nevertheless, a significant portion of the Ethereum community, (approximately 10 % in value and mining power) began to support the previous chain known as the Ethereum Classic with the ETC symbol.
Main Network Development
Blockchain operating systems, as open projects, often have many users and contributors. However, main network development (the code that runs the network) is often done by small groups, due to the expertise and knowledge required to develop this type of software.
Likewise, the code that these groups generate is very close to the code that actually runs the network.
ETC passed a technical hard fork on October 25, 2015 to execute various codes in the Ethereum Virtual Machine (EVM) in order to reduce DDoS attacks.
On the other hand, the hard fork that occurred in early 2017 was able to successfully delay the Difficulty Bomb.
With the activation of this Difficulty Bomb in the Ethereum network, mining difficulty is greatly increased and the mining process becomes practically inefficient and unprofitable.
For all that, the ETC project is not officially supported by the Ethereum Foundation.
It should be noted that the project issued a public statement on its Twitter account on June 29, 2017, stating that the domain of ETC wallet website was compromised.
The ETC team worked with Cloudflare to issue a warning to users about imminent phishing attacks on the domain. In January 2019, it was also exposed to Double-Spending attacks.
7- Spurious Dragon- 2016
This hard fork almost followed the path of Tangerine Whistle and made other changes to reduce the effect of the spam attack.
Spurious Dragon was another unplanned hard fork on November 22, 2016 which included four suggestions for correcting unwanted behaviors.
8- Byzantium- 2017
This hard fork included a number of specific updates to allow better performance between contracts and some features to allow for specific features related to elliptic curves.
Byzantium is the first half of “Metropolis” hard fork, the name which was given to the third planned hard fork of Ethereum. This hard fork included extensive changes such as opcode 4, precompile 4, reduced block reward, and another delay for the Ice Age Difficulty Bomb.
Constantinople/ Saint Petersburg- 2019
The second half of the Metropolis stage consisted of Constantinople hard fork, which was to take place in the block number 7.080.000.
Exactly 32 hours before the hard fork was launched, Constantinople was delayed due to the discovery of an unwanted EIP-1283 side effect which re-attacked many of the established contracts.
As a result, EIP-1283 was removed from the list of scheduled integrations and the hard fork was reset to block 7.280.000. In addition, hard fork got a new name: Saint Petersburg.
Metropolis hard fork was divided into Byzantium and Constantinople hard forks, but the main part is Constantinople. The Byzantium hard fork, launched in 2017, was accompanied by 9 changes to the Ethereum platform, and reduced its network difficulty.
It also paved the way for the implementation of Constantinople and completion of Metropolis.
In general, after the implementation of Constantinople and completion of Metropolis hard fork, improvements and changes took place, including improved transaction privacy, improved smart contract security, delayed Ethereum Difficulty Bomb, and reduced mining rewards in the Ethereum network.
10- Istanbul- 2019
Istanbul hard fork was implemented on Ethereum block number 9.069.000 and helps to improve network performance, regulate the cost of operating codes (Opcode), interaction between Ethereum and Zcash, and create more creative solutions through contracts.
This hard fork included 6 separate updates or Ethereum Improvement Proposals (EIPs)
The most important issues addressed in these EIPs include increasing network resistance to Denial-of-service attack, reducing network transaction fees, and increasing the interaction between Ethereum and Zcash.
Transaction fee in the Ethereum network is called Gas and is paid in small fractions called Gwei.
The purpose of reducing the Gas level in Istanbul EIP is to increase the bandwidth of the blockchain network, and to strengthen Proof of Work certificates such as zk-SNARK.
This certificate which is also used in Zcash is of the Zero-knowledge type and helps to protect privacy. Increased cross-chain interaction between Zcash and Ethereum was provided by facilitating the implementation of the BLAKE2b hash function in Ethereum.
11- Serenity or Ethereum 2.0- 2021
Ethereum 2.0, also known as Serenity, is the second version of the Ethereum project which was officially launched on December 1, 2020.
Its website described Ethereum 2.0 as a set of interconnected updates that make Ethereum a more scalable, safer, and more sustainable project.
Many developers of cryptocurrency projects also strive to achieve the same features, that is to improve scalability, increase network speed, flexibility, as well as network efficiency.
ConsenSys company and Vitalik Buterin, one of the founders of this platform reported the main changes of Ethereum 2.0 network as follows:
· Change of Ethereum Network Consensus Algorithm and migration from PoW to PoS.
· Incorporation of Sharding innovation.