We know that the Bitcoin protocol can be updated at any time. Larger updates and hard forks can be difficult to push through, but as long as a majority of the Bitcoin community supports the update, it can happen.
However, it's unclear to me exactly what "majority" means. Which players have the most weight in the decision-making process?
- Does it mean "a majority of holders of bitcoin"? If an update is so drastic that it would threaten confidence in Bitcoin, they would likely sell and would vote with their wallets. However, if the update isn't particularly drastic, currency holders would likely have no course of action. If they only use Coinbase, for example, they don't have a choice of which version of the protocol to use.
- Does it mean a majority of people with software running a version of the Bitcoin protocol? Currency holders with wallets like Bitcoin-Qt? They decide which version to run.
- Does it mean a majority of nodes? (This is distinct from #2, as a person running 10 nodes in this scenario would get 10 votes instead 1 vote). Someone can flood the network with nodes running the protocol, and if there is a hard fork, people may mistakenly check to see how many nodes support each version, basing their decision on that ratio.
- Does it mean a majority of merchants? They can decide whether to continue accepting Bitcoin, and they decide whether to convert BTC immediately or to continue to hold it.
- Does it mean a majority of mining power? The miners are the ones who decide which blocks to accept and work off of.
- Does it mean a majority of the developers (weighted by their influence)? Some have pointed out that that Gavin has a lot of influence and could probably convince people to adopt a particular change, as long as the change is small enough. Are there ways for the developers to surreptitiously exert control over the progression of the protocol?
I started wondering about this after I read the following question: How could the bitcoin protocol be changed? Has this ever occurred?
In the comments, @Muhd says:
So it follows that changes will likely only be implemented and adopted if it benefits a large majority of participants. I suppose most security updates would qualify. Technically, isn't it the case that we only need a majority of miners (>50%) to switch over? Or does it require more than that?
No, a majority of miners is irrelevant. If miners try to change the protocol on their own, they will simply be ignored by the rest of the network, and their "mining rewards" will be worthless. A change requires an economic majority - adoption by the users and businesses who give the currency value.
P.S. This question is important because there are certain protocol changes that would be good for some parties but bad for others. For example, increasing the block size would be good for payers, but bad for miners (it would be easier to get a transaction in the blockchain, so there'd be lower mining fees).