How Consensus Drives Bitcoin
Freedom to Tinker 2013-06-04
Josh Kroll, Ian Davey and I have a new paper on the dynamics of Bitcoin, which we’re going to release in a few days. This post is the first in a series exploring our paper’s analysis of why Bitcoin works and what could derail it.
Consensus drives Bitcoin. Like any fiat currency (a currency not backed by anything of intrinsic value), Bitcoin has value because of an expectation that people will continue to accept the currency in payment. Like Tinkerbell, who exists because you believe in her, Bitcoin has value because enough people believe it has value. This much is true for all fiat currencies.
But Bitcoin is not just a currency, it is also a technology—and that technology must function correctly for the currency to operate and retain its value. In particular, there are two additional forms of consensus that must exist for Bitcoin to operate.
Consensus about the rules: Participants must agree on the rules that determine which transactions are allowed and which are not. The rules for transaction legality are written down, but they are not self-executing. For the rules to have any force, participants must ignore the existence of non-conformant transactions, while accepting conformant transactions.
Consensus about history: Participants must agree about the history of the Bitcoin economy, that is about exactly which transactions have occurred. Without this agreement, they can’t know who owns which Bitcoins.
Notice that the three forms of consensus—consensus that the currency has value, consensus about the rules, and consensus about history—are interdependent. The loss of any one will unravel the other two. For example, if you and I disagree about what the rules are, then eventually our views of the history will diverge, because eventually one of us will believe a history containing a transaction that the other cannot accept. Or if people can’t agree on who owns which Bitcoins, then the currency will lose its value.
Currently all three forms of consensus exist in Bitcoin. One of the key questions we examine in our paper is whether this can change. Obviously the consensus that Bitcoins have value could evaporate for any number of reasons. So we focus on the other two forms of consensus, rules and history, and we ask how stable they are.
The consensus on rules needs some explanation, because there is a common misconception that the rules of Bitcoin were laid down at the beginning by Satoshi Nakamoto and cannot be changed. It’s true that Satoshi created the initial ruleset, but the rules can change at any time, if there is a consensus in the community that the rules should be changed.
There is also a common misconception that the rules of Bitcoin are somehow self-executing, but that isn’t true either. There is a certain (assumed) mathematical certainty about the cryptography—a digital signature either is or isn’t cryptographically valid—but this doesn’t make the rules self-executing. You can always detect an incorrect digital signature, but the rule that transactions with incorrect signatures should be ignored as invalid will only have force if participants do choose to ignore such transactions.
The possibility of changing the rules is not just theoretical—the rules have been changed in the past. One example was in March 2013, when a software bug in one version of the default Bitcoin client caused it to treat as invalid a transaction that was actually valid according to the rules. This amounted to a failure of rules consensus—some people (erroneously) treated the offending transaction as invalid, while others (correctly, according to the rules) treated it as valid. This led to a divergence in the history, as each group had a slightly different idea about who owned which Bitcoins. The community responded to the divergence by temporarily changing the rules in order to reestablish a consensus history.
All of this suggests an obvious question: If the rules of Bitcoin can be changed, and have been changed, then how do rule changes happen? Who, if anyone, is in charge, and how does the Bitcoin community govern itself? I’ll turn to this question of Bitcoin governance in a future post.