At this point, everyone’s heard of the Decentralized Autonomous Organization (DAO) arrogantly named “The DAO” (like naming your coin “The CryptoCurrency”). It was meant to be a shining example of how code, and only code, could govern an organization. The DAO would exist outside legal frameworks, and no human could be held accountable for actions of The DAO.
Unfortunately The DAO was not tested thoroughly, and more importantly many “investors” willingly shoveled $150 million into the DAO.
Ethereum is not broken, but there are properties of its scripting language, Solidity, that are still being discovered. Unfortunately, the DAO code allowed for holders to recursively send themselves money by executing the code as written. The DAO was not hacked, but performed as written. Researchers have found that is far from the only contract susceptible to this vulnerability.
The DAO holders screamed for a bailout from the Ethereum community via a hard fork. Hard forking Ethereum would allow The DAO token holders to be refunded the Ether placed in the fund. 97% of Ether holders voted to hard fork and save DAO holders.
This will have profound implications on who uses and how the Ethereum protocol is used. While I personally believe that The DAO holders should not have been saved, holders of Ether are betting on adoption of the protocol by financial institutions and large corporations. The action of saving investors in a poorly written application sends a positive signal that DAOs are more a sales pitch than an actual reality. If enough holders can be coerced or convinced that a particular DAO, DApp, or smart contract should be saved via a hard fork, then many more organizations will use the protocol.
It is easy for me to have a negative opinion of the hard fork (I didn’t “invest” in the DAO), but what if the Bitcoin community faced a similar dilemma. Imagine 10% of Bitcoins that will ever exist were held by one address that ran a ponzi scheme. The ponzi operator declared the jig was up. Investors globally pleaded with miners and exchanges to support a hard fork. Would Bitcoin miners and exchanges vote to hard fork such that all transactions to that address never happened?
If Ethereum is successful, there will be many more DAO copycats that won’t just make programming mistakes; they will outright steal investors money. How will Vitalik and the community choose which DAO’s to save, expending their political capital? By endorsing the hard fork to save the DAO, Vitalik is promoting himself as Ether Jesus. That is a hard crown to wear.
Other solutions are coming to the fore. The always-excellent blog Hacking Distributed is proposing the idea of a Decentralized Escape Hatch (DEH) that will standardize the idea of reversal triggers as a feature of a DApp. This is a great step forward. No program is perfect; Ethereum will need to embrace some form of external control to ensure contracts behave as intended, not just as written.