The never ending bitcoin debate has now seemingly moved on to new never ending proposals that try to provide a solution to bitcoin’s very congested network, but in a repetitive fashion, like a broken tape, seemingly never going anywhere.
The latest such proposal is a flag-day soft-fork marketed under the name of user activated soft-fork or UASF. Marek Palatinus, founder of Slush pool, publicly said yesterday that Trezor is ready for UASF. One of the main public discussion space for bitcoin seems to be in love with it. It’s the latest buzz of social media, but most keep asking: what exactly is this thing?
There are many ways to upgrade bitcoin. The usual method is for an activation threshold of around 95% miner signaling over 1,000 blocks which correspond to around one week. In this way, any chain-split can be minimized, but they still happen and relatively often considering the extensive measures taken to prevent it.
There was a chain-split in 2013, for example, following a soft fork upgrade, with miners choosing to disregard the longest chain and make the shorter chain have more proof of work under the advice of developers, primarily Luke-Jr, but others in agreement too.
There was another chain-split in 2015 after one of Peter Todd’s soft-fork proposal led to a split during the upgrading process apparently because a miner had forgotten to upgrade a node somewhere.
Transacting during this period is very risky as one chain will be disregarded. Miners usually do lose quite a bit of money, but two chains rarely last more than a few hours or, at most, a day, as miners quickly converge on one chain because usually protocol upgrades are very boring and very agreeable to everyone.
Another way of activating an upgrade is through a hard-fork. This can have the same activation threshold as a soft-fork, but all nodes need to upgrade if they wish to continue using the network as once the new rules kick in, the non-upgraded nodes are kicked out.
A hard-fork upgrade can also be implemented through a flag-day activation method. It is how ethereum did it. At block X new rules kick in. Miners can then choose whether to apply the new rules or not and nodes can choose whether to upgrade or not.
In ethereum’s case, a tiny minority of miners chose after the fact to stick with the old rules as did a tiny minority of nodes. A new currency was created called ETC. It has some value with a marketcap worth around $200 million. By comparison, after some trading frenzy, eth went on to rise from a market cap of around $1 billion to now around $4 billion.
Let us pause here to add a very important clarification. Before ethereum developers merged the flag-day hard-fork, there was a vote of token-holders and a vote of miners, both showing overwhelming support for the upgrade.
It is easy to nitpick both measurements, but with hindsight, we can now say they were clearly indicative and predictive of the level of support. As such, we can establish a sort of normative convention. Where the above two measures show support for an upgrade, then such flag-day activation should be merged.
If the above two measures had not shown support in ethereum’s case it is very doubtful it would have been merged as its chances of success would be very slim with perhaps the tables shifting in such scenario and eth becoming etc.
Although we shouldn’t generalize from one example, it is all very logical. Set up an easy way for token holders to vote, give them perhaps a month, pools allow miners to vote, give them some time too, see the results. If it’s clearly one way, then it’s what developers should do. It may still form a smaller currency, but, now that we have seen it, such eventuality is in no way an impediment. In fact, we can perhaps even say, long live freedom.
That brings us to the flag-day soft-fork which Bitcoin Core supporters are currently marketing. They say it is user-activated, but that is not true. The fork is activated by whichever developer merges the code that says after X block these new rules apply.
We need some nuance. Conceptually, if there is a token vote and miners vote and developers act accordingly, one cannot rationally say it is the developer who is activating the upgrade as they are merely following the will of the market. They have no choice.
If, however, developers merge an upgrade that is contrary to the voting results or if they do so without any objective measure which a rational observer would say is, on balance, indicative, then one can’t say the decision was made in a decentralized manner as it clearly was made, perhaps arbitrarily, by whichever developer merges it.
Another nuance would be regarding activation. Technically, in a hard-fork, the upgrade is activated by upgraded miners and nodes who choose whether to apply the new rules or otherwise while at the same time allowing non-upgraded miners or nodes to create their own network.
By contrast, in a soft-fork, the upgrade might happen once the code is merged because in any controversial issue an 80/20 split is expected. As such, the 20% of miners and nodes who have upgraded could split the network in a way that may potentially get all nodes to follow except for the non-upgraded miner nodes.
If such merging occurs without any sort of objective measure of token holders’ attitudes or miners’, then whoever merges it is basically deciding to upgrade the network in what can effectively be called a unilateral manner.
As such, that this method is even being considered clearly shows certain entities do not care whatever about decentralization or objective means of changing the network’s rules. Instead, appear willing to entertain the idea of, effectively, ordering the market in a very centralized manner, even if that includes much expected utter chaos which cannot easily be settled through a chain split and corresponding new currency.
Therefore, I maintain the view this is not a real proposal, but a bluff as I cannot possibly see how anyone can propose it with a straight face nor, do I think, whatever one’s views on scalability, would any non-troll or non-financially incentivized individual support a method that basically would make it certain bitcoin is centralized if it is merged.
However, that this proposal is, nonetheless, being strongly pushed in some corners, suggests there may actually be an attempt to centralize bitcoin through what is now being revealed as its weakest aspect – developers.
If that is indeed possible then, of course, we should expect such attempt as great richness can be gained by controlling a $20 billion market and there are plenty of individuals who would like such richness despite whatever ideology they may proclaim, whatever background they may taunt, or whatever words they may utter.
So far, it seems that bitcoin’s incentives are well aligned to prevent it, but they also appear well balanced to, at the same time, prevent changes. The lesson for other currencies, especially ethereum, is to run very fast, break all things, until a stage is reached after sharding sometime in, optimistically perhaps, 2020, whereafter the protocol can be set in stone.
For bitcoin, such time may have come prematurely, but whatever we may say regarding our intellectual abilities, logical deductions, rational thinking, it is the case experience is often the best teacher for it provides immense richness of nuances.
Reality has a way of imposing itself, above imagination and to its surprise, however genius the mind, because it is simply impossible to account for the richness of experience. That is why our highest achievement – science – and its emphasis on objective thinking, operates on observation.
What we can, currently, observe, is that bitcoin has stagnated conceptually because of its incentives, when it comes to protocol changes, appear well balanced with the technology seemingly having a tendency towards non-changes where developers disagree with the market.
As such, although we do need to account for the inventor’s abandoning of the project and his lack of influence which may have been decisive towards persuading developers to meet the market’s demands, any blockchain based currency might wish to account for an eventual stage where the protocol may become unchangeable save for boring and fairly irrelevant dotting of i’s and crossing of t’s.
Featured image from Shutterstock.