Some influential developers of the software that runs Bitcoin have proposed an important amendment to the functioning of the leading cryptocurrency. It's a development as important to Bitcoin as a constitutional amendment aimed at the Fed would be to the dollar.
The debate has been characterized in some headlines as "existential," and one write-up called it a "constitutional crisis." Both are probably overstating the situation. But it's worthwhile to dig in and see what we should make of the debate. Doing so can tell us how things might go for lots of things in the world of cryptocurrency, including potential future proposals to alter Bitcoin's embedded monetary policy.
I'll begin with some basics about the protocol that are essential for understanding what this amendment does, then I'll discuss the nature and tenor of the debate, which is important for at least the debaters to have in mind.
Much like email is a system for sending "mail" around the globe digitally via the Internet, the Bitcoin protocol is a system for maintaining a global public record book, or ledger. The ledger is optimized for recording transfers of value in the form of digital units called bitcoins.
When one person seeks to send bitcoins to another, he or she broadcasts a message to the Internet, where it is shared among a global web of Bitcoin "nodes." The nodes confirm the validity of each new transaction by checking the authority of the sender to transfer bitcoins from a given address.
Another group of actors called "miners" gather validated transactions from the nodes and, about every ten minutes, add a new page to the ledger by broadcasting new ledger pages back to the nodes. (They're rewarded for the service with a pre-set payout of new bitcoins, which is what causes the total stock of bitcoins to increase over time.) If the nodes validate the new page, they add it to the consensus ledger and continue validating the latest transactions, while miners begin work on the next page.
This brief description passes over much in the process. And in Bitcon jargon, ledger pages are known as "blocks"; the ledger is called the "blockchain."
One of the potential challenges for the Bitcoin protocol, and thus for Bitcoin, is its capacity to handle the kind of transaction volumes one would expect of a global, digital currency. The current maximum size of a ledger page, or block, is 1 megabyte, which equates to about seven transactions per second. The Visa network, by comparison, has a capacity of about 22,000 transactions per second.
It is not a given that Bitcoin should be able to handle every payment around the world, of course. It would still be a happy result for Bitcoin if a significant subset of the world's bazillion daily payments occurred through "off chain" services using bitcoins, with the blockchain serving as a global settlement network.
But the group of Bitcoin developers advocating for the software change believe that the network will begin to bump up against the 1 megabyte block limit next year. Significant numbers of transactions could be dropped, resulting in badly delayed validations and re-sent transactions that clog and degrade the network. They have been arguing for an increase in the blocksize, and last weekend they introduced a new version of Bitcoin software called Bitcoin XT.
The new software switches to 8 megabyte blocks after January 2016 if 75% or more of mined blocks indicate that they were produced by miners who support the change. If the switch occurs, the maximum block size limit would then double every two years. (You can follow along, seeing XT and non-XT nodes and blocks here.)
Seventy-five percent is an interesting choice. Proposals to amend the U.S. Constitution are validated and become part of the Constitution if they are ratified by legislatures or conventions in 75% of U.S. states. I don't know if the authors of Bitcoin XT were thinking of that cherished U.S. document when they set their 75% threshold, but they are doing something very much like a Bitcoin constitutional amendment.
(Full disclosure: I know Gavin Andresen and Mike Hearn better than I know most other developers, and I've had very brief communications with each about this debate. I'm doing my best to write this post down the middle, and I'm open to correcting it if others think I'm skewing things — and of course if I've gotten technical details flat wrong.)
At its essence, the choice whether to run Bitcoin XT is a simple plebiscite. Miners will "vote" with their feet. If they adopt it, the amendment passes. If they don't, it doesn't, and nothing changes.
If the 75% threshold is reached, it is a near certainty that the remaining miners will switch to Bitcoin XT, as well. The coins they would produce using the old software would be incompatible with the majority's coins, and there is far less value to cryptocurrency that is incompatible with the majority currency. There is no permanent Bitcoin schism in the offing.
But that doesn't mean that all is sweetness and light. As in debates about constitutional amendments, things are starting to run a little hot. A technical change like this reallocates power and profitability to some degree. Larger blocks propagate slightly less quickly, which may disadvantage miners with weaker Internet connectivity. Higher transaction volumes will consume more storage, raising the cost of operating nodes and potentially reducing their numbers, which threatens Bitcoin's decentralization and resistance to control. A software change like this always risks producing unforeseen security flaws, which is not pattycake on a network that currently stores about US$3.5 billion-worth of value. So the debate is, and will be, intense.
Cato Institute alumnus and friend Timothy B. Lee wrote a helpful Vox piece on the controversy earlier this week. It was entitled, "Bitcoin is on the Verge of a Constitutional Crisis." I don't think "crisis" is quite right, though, for a number of reasons.
For one, the paths forward are clear. There are only two of them: adoption or non-adoption of the amendment. A "constitutional crisis" implies unpredictable behavior of contested legality. That can't happen here, as control of the use of the software is firmly in the hands of its users, the nodes and miners — not developers.
There is an argument that the software's users are collectively being duped, but it doesn't seem strong. This debate is occuring in an environment that is susceptible to testing and rigor. Valid theses about how nodes and miners will be affected have been discussed and modeled — a thing that can't be done with legal rules. Miners in particular are keenly focused on their interests, and the effects of the amendment on those interests seem pretty well understood.
Given the visibility of behavior in the Bitcoin ecosystem and the threat of exit (which I discuss below), mistaken amendments are more likely to be reversed than a "bad" amendment to a legal-world constitution. The dynamics that lock in bad laws and regulations are not in play — or at least they're much weaker — with the Bitcoin protocol. Someone seeking economic rents through manipulation of the software's functioning is very likely to end up drinking their own blood, and pretty much everyone knows that. We are in an environment of virtuous incentives.
The key difference between the Bitcoin protocol and a paper constitution, though, is jurisdiction. The rules that govern Bitcoin are not as important as the rules that govern a country.
Bitcoin is but the most popular of numerous cryptocurrencies, and — putting aside some poorly worded regulatory proposals — anyone with the technical skills can create a new one. Different cryptocurrencies can function differently in ways that optimize them for different uses and needs. And it is very easy to switch among cryptocurrencies.
If the Bitcoin XT proposal is adopted, if its demerits prove greater than its merits, and if switching back doesn't or can't occur, developers and users have a relatively easy exit to another cryptocurrency. It is not costless, but some lost Bitcoin wealth and a move to a new cryptocurrency is not as hard as uprooting oneself from a physical place and moving to a different location on Planet Earth. Bitcoin is important, exciting, and precious, but the stakes in the Bitcoin XT debate are somewhat lower than in a true constitutional debate.
Without testable propositions to hold them to account, legal-world politicians spin the most favorable evidence for their positions nearly from whole cloth. They often portray their opponents as animated by venal, fully hidden motives. The stakes are very high because everyone has to live under one rule, so they permit themselves to seek victory at all costs. Government politicians play to the hilt for a largely uninformed audience of voters who happen to respond better to ad hominem attacks than the merits. (Then they adjourn together to the bar — ah, the ruling class….)
This kind of debate is not like that kind of debate. As hot as the debate feels in the Bitcoin developer community — and it does: you can see some developers speaking carelessly to and about each other — it is relatively genteel. And it should stay that way.
The reason why developers should stay moderate with their arguments and language is because perceptions of instability in the Bitcoin ecosystem are bad for adoption, and everyone needs adoption. Were it possible to "win" the Bitcoin XT debate with bombast and exaggeration, such a victory would be Pyrrhic.
As I write this post, the Bitcoin price has seen a sharp drop (and recovery) against the dollar. Coincidental or not, and lasting or not, it's the kind of thing that reporters who don't pay much attention to Bitcoin — or who actively dislike it — will join to the Bitcoin XT debate. They'll use the simple tale of developer angst and price volatility to sow doubts about cryptocurrency among the public at large.
Rancor in the Bitcoin developer community gives succor to the opponents of monetary alternatives. The debate about amending the Bitcoin software should be fascinating to watch, and it should be kept on a high plane.
[Cross-posted from Alt-M.org]