In a landmark decision, the distributed, decentralized community that makes up Ethereum came to a near-unanimous consensus to implement a radical software change, known as a “hard fork.” This has been done in order to prevent a hacker who attacked The DAO and drained nearly $40 million worth of ether, the digital currency within the Ethereum blockchain, from ever seeing those funds – as well as returning what was lost to their original owners. The move is an important vote of confidence for the democratic system that is used to reach consensus in blockchain-based systems.
Hard Fork Vs Soft Fork
The DAO, or Decentralaized Autonomous Organization, was hailed initially as a new and exciting form of organizational structure – a leaderless, decentralized body governed by computer code programmed into “smart contracts.” The project raised over $150 through crowdfunding but before The DAO could actually do anything, it collapsed.
Unfortunately, a few bad lines of code in The DAO smart contract allowed for a hacker to exploit a process of “Recursion”, siphoning off tens of millions of dollars worth of ether into a new DAO. A fork – or change to the software that governs the blockchain – would be the only way to recover these funds from an otherwise anonymous attacker. This left the community with a big choice to make: one, do nothing – accept that the exploit was justified in that it was part of the smart contract’s code and let it be a lesson for future smart contract creators; two, implement a soft fork – a patch to the existing Ethereum code that would effectively freeze the stolen funds so that the could never be used; or three a hard-form – a software change that would actually roll back the transactions in the blockchain and reverse the hack directly.
At first, a soft-fork solution was proposed as the fix to freeze the stolen funds in situ. This, however, proved problematic as the implementation opened up more potential attack vectors for future hacks. Specifically, an attacker could flood the network with transactions that execute difficult computation, in conjunction with performing an operation on The DAO contract. Miners running the soft fork would end up having to execute, and then subsequently discard, such contracts without collecting any fees. This resulted in the community abandoning the soft fork, leaving only the choice of either a hard fork or taking no action at all.
Yesterday, a hard fork was approved by 97% of the Ethereum network, an almost unanimous decision. This means that all funds will be eligible to be returned to their proper owners. The change is a feather in the cap of blockchain based democracy, however this decision would also seem to contravene the virtues of decentralization and censorship resistance. Vitalik Buterin, the co-founder and chief architect of Ethereum, however, has pointed out that this is a democratic decision from the bottom up, and not a top down directive from the Ethereum Foundation.