Though Ethereum managed to come out strong when it was released, it seems to have encountered problems. This forced Ethereum to have another hard fork. Forks, in programming terms, are when people take a program’s source code and start independent development. Ethereum users are no stranger to forking.
Earlier this year, the DAO, Ethereum’s premier project, was hacked for a significant amount of Ether. The DAO was focused on gathering investment for the Ethereum network. The hack resulted in millions of dollars’ worth of Ether being stolen. In an unprecedented move, the community voted that the network’s code would be changed to allow for the Ether to be returned to the investors. However, there was a sizeable minority that objected to this.
This minority believed that the blockchain should not be tampered with for whatever reason. This is to ensure its impartiality and neutrality in its dealings, making it a trusted authority in charge of the network’s transactions. This group decided to maintain the original source code of the Ethereum network and keep it updated to standards. This was the birth of Ethereum Classic. This fractured the community so it is understandable why Ethereum users are wary of another hard fork.
Response to attacks
The current reason for the fork is a more pressing one. Right now, the Ethereum network is being attacked by a series of denial of service attacks. This has caused a slowdown in transactions and caused nodes in the network to crash. It is not just the base Ethereum network experiencing problems. Even the Ethereum Classic network is experiencing these attacks. Exchanges like Kraken and ShapeShift have temporarily paused ether trades as a result.
Transaction problems are a big problem for digital currencies. They live and die by their usage and being denied their use can result in people giving up on Ether. Initially, the response to the attacks was to fix the various Ethereum clients out there. For example, in the last month alone, the Go-version Ethereum client, Geth, had to release six different versions to cope with the attacks. Other clients had also suffered the same experience.
The vulnerabilities that the attacks exploit could be traced back to the network itself. This is why the development teams behind Ethereum and Ethereum Classic decided that a hard fork is necessary to stop the denial of service attacks. It will be done in two steps.
First, the patch will remove the economic imbalance that allowed the attacks. This was done by repeatedly calling certain operation codes (opcodes) in their smart contracts that are computationally difficult for clients to process, but very cheap to add to the network. Second, the next step would be to clear all the spam created by the attacks and allow the network to operate quickly once again.
Considering the last time a hard fork happened, the Ethereum community hopes this goes a lot better. Many are optimistic though. Still there are some that are worried this will result in a precedent of dealing with problems via hard forking.