One month ago, Ethereum’s cofounder Vitalik Buterin said the project’s governance is “not that bad.” Talk about damning with faint praise. Ethereum presently finds itself in the same position Bitcoin was in for several years: a decision needs to be made, but the project lacks a formal governance structure.
Ethereum uses a Turing-complete programming language, and that gives users enormous flexibility but it also creates a huge attack surface for malcontents. When faced with the disastrous hack of TheDAO two years ago, the community decided to hard fork the network and essentially turn back the clock to before the hack occurred. In doing so, the network forever gave up any claims of immutability.
When Ethereum reversed TheDAO hack, a precedent was set. You could say that, having sown the wind, Ethereum is reaping the whirlwind. Last year an attack on the popular Parity wallet caused $162 mln in Ether to be forever frozen and unspendable. The funds weren’t stolen, but the hacker did succeed in locking them up forever. Other smaller hacks have happened over the last couple of years, and the victims are demanding action.
Governance by EIP
Ethereum’s lead developers set up a system by which the community can propose changes to the software. Interested community members will write an “Ethereum Improvement Proposal (EIP)” and submit it on the project’s Github. So-called EIP editors will review the EIP and either reject it or allow it to move forward to a sort of “official proposal” status. The community will then discuss and come to a consensus, at which point the EIP will be merged into the code (if the community accepted it).
This usually proceeds in a relatively orderly fashion, but when EIP 867 was submitted, chaos erupted. The controversial EIP 867 lays out a proposed plan for recovery of lost user funds. The EIP itself would not return users’ funds from the Parity hack or other such hacks, but it would create a framework that would allow them to request the return of those funds. How would the funds be recovered? By selectively reversing bits of Ethereum’s past history, much like what happened after TheDAO hack.
EIP 867 has generated a firestorm of controversy and even led to the resignation of one of the EIP editors who judged the proposal to be a violation of Japanese law. (The law in question forbids tampering with electronic records.) At present, the community is sharply divided on the issue of fund recovery, and the divisions have highlighted weaknesses in Ethereum’s governance, leading to Buterin’s “not so bad” comment.
It seems like Bitcoin and Ethereum users just expect a consensus to magically appear, and for the entire community to accept code changes with open arms and no dissent. Neither community has any actual code-based mechanism to poll owners of the currency and enforce their decision. Bitcoin’s scaling crisis was finally solved – or at least, delayed – after years of controversy. How was the problem resolved? A bunch of miners and Bitcoin business leaders got together and lied to each other, claiming that they would double the block size if only miners would first approve Segregated Witness (SegWit). The doubled block size, dubbed SegWit2x, was eventually called off.
Owners of Dash must be somewhat bemused the antics in the Bitcoin and Ethereum communities. Using decentralized governance by Blockchain (DGBB) – the so-called Treasury System – masternode owners can be polled on governance questions. The Dash Core Team can then create the resulting code update and have it quickly approved by the masternode network. Once enough masternodes upgrade, enforcement is turned on and any non-updated masternodes are essentially kicked off the network.
While Dash’s governance system is not perfect, it’s a great start. At least our community doesn’t have to sit around and wait for some sort of consensus to magically emerge from thin air.