Forked: the blockchain referendum
Thursday 23 June 2016
It’s 23 June and, like Ethereum, the UK is contemplating a controversial fork.
The time is upon us. After a flood of fear-based propaganda, we will collectively aim to reach consensus on what will be a defining moment in our history. Right or wrong, we will have to live with the implications of this for years to come.
For the UK, the polls suggest the outcome of the referendum on EU membership will be very, very close. 55/45 could be hailed as a comfortable win and 51/49 would not be a surprise. But it doesn’t matter how slim the majority is: if 50.1% of the population vote Out, we are leaving. And, we’re told, there’s no going back. There will be big and irrevocable changes. This is a hard fork.
Support for the fork rests on a knife edge
For Ethereum, the situation is serious but less stark. After an attacker found an exploit in The DAO’s smart contracts and siphoned off tens of millions of dollars, there are different options. A hard fork is one, which would effectively rewrite history on the blockchain and return the funds from their current address. Another is a soft fork, which will freeze funds where they are, allowing the community to buy time to find a better long-term response. Support for the soft fork is high; the hard fork is far more controversial.
The ‘immutable’ blockchain
There are different views about hard forks. The blockchain is touted as an immutable record. In bitcoin’s case, this means transactions are irreversible. On Ethereum, it means smart contracts will be executed whatever their instructions.
A hard fork requires collusion from miners to ensure consensus about the new rules for the blockchain. Bitcoin itself is not a stranger to this: it has suffered a couple of major forks in its seven-year existence. In 2010 an integer overflow bug meant devs had to release a new version of the bitcoin software after billions of new bitcoins were accidentally created. In 2013 the release of bitcoind 0.8 led to an accidental hard fork, and miners were urged to revert to 0.7 to fix it.
Thus a hard fork is not impossible. It just requires consensus from the majority of the network. As one reddit user wrote,
Humans run code on machines. Software is ultimately just automating the will of human users. There's nothing wrong with people updating the code in accordance to their moral and economic imperatives.
Those warning of a slippery slope are fighting a lost cause. Forks have always been possible and always will. If you invested on the idea of an autonomous computer independent from human interference, you were wrong all along. Such a thing does not exist and never will.
Blockchains are still the most democratic and freedom-enabling platforms we have. The whole community being able to rally and defuse the blind determinism of a so-called "smart contract" only enhances that freedom.
Not everyone feels the same, and it’s easy to understand why. What is the value of an immutable ledger that is only immutable if enough people agree it should be? For businesses considering using a blockchain protocol, what risks does this introduce? Epiphyte CEO Edan Yago writes,
The core promise of smart contracts was brilliantly articulated by The DAO. They are designed to operate "solely with the steadfast iron will of unstoppable code". The core idea here is that the code is the contract, and that it does not require or allow human intervention or interpretation.
It is automatic and "autonomous". Deterministic outcomes based on code – that is the value.
This value is 100% dependent on the ability of smart contracts to run on a protocol that can be trusted to operate according to deterministic rules known in advance. That is what ethereum must be. What is being now suggested is to go and change the protocol-level rules, retroactively, because of an exploit discovered in one contract on the application level.
To do so, would destroy the very trust that makes all contracts on the application level possible… Bitcoin only forked when the protocol was broken, never when the protocol worked as intended but the results were uncomfortable.
The UK’s referendum will be decided on a simple majority. The fork will be activated if more than 50% of voters want it.
A blockchain fork also occurs on a simple majority, when miners throw more processing power at one chain than any others. To ensure less fallout, and the odds of two chain being maintained indefinitely, some forks are only activated at higher percentages of support; Bitcoin Classic’s hard fork is set to activate at 75%, SegWit’s soft fork at 95%. But this is an artificial condition and a 51% attack will still fork the blockchain.
Here’s where the technical unavoidably meets the political. There’s a reason why the phrase ‘95% attack’ never really took off. 95% isn’t an attack, it’s a landslide consensus. A fork is inherently divisive; it splits the community. The trick is not to split down the middle: it is to split with such overwhelming support that you kill the minority chain. And perhaps that’s why forks, through mining support or referenda, are so controversial. It’s the 49% who might get left behind.
ProTip: watch GBP/USD for early indications of the referendum's outcome. No official exit polls have been commissioned, but hedge funds are running their own to gain insights into which way the market will move. It's possible that Sterling with rise or fall as they take their positions as the evidence unfolds throughout the day.
comments powered by Disqus