There has been much confusion recently about what miners can and cannot do.
Some people claim that miners ultimately decide protocol rules because "that's what Satoshi said in the white paper".
Others say miners follow rules set by the ecosystem (users) because that's what businesses do - follow the money.
Let's have a look at what are the roles of miners and whether they decide the future of Bitcoin in the case users don't agree with them.
In the early years of Bitcoin, there was only one type of a network node. Satoshi referred to it in the white paper simply as "node" or "network node" and it had the following functionality:
- mining (optional)
- validating transactions (checking whether transactions adhere to consensus rules)
- broadcasting valid transactions
- sending and receiving bitcoins (wallet functionality)
Shortly after Bitcoin was created, the mining functionality was partially abandoned (internal mining was entirely removed from bitcoind in v0.13). Specialized software is now needed to do the PoW (proof of work) along with a full node that constructs blocks among other things.
That's where we started to differentiate between nodes.
Technically, nothing has changed (apart from dropping the mining functionality) since even miners run the same type of node as users, but from the network perspective, there are now two types: mining nodes (miners) and validating nodes (everyone else).
These 2 types of nodes have the same exact functionality though, thus you cannot say that one rules over another.
Those who understand p2p networks know that peers are always equal:
Peer-to-peer (P2P) computing or networking is a distributed application architecture that partitions tasks or workloads between peers. Peers are equally privileged, equipotent participants in the application. They are said to form a peer-to-peer network of nodes.
The question whether miners decide the future of Bitcoin still remains though.
To find an answer, let's first have a look at what are miners capable of.
What powers miners have
To put it simply, miners are a specialized group of Bitcoiners that extend the chain with blocks of transactions.
In particular, they have 2 tasks (and 2 tasks only):
- Miners decide which transaction makes it into a block
- Miners add timestamps to transactions which made it into a block
In the unlikely event of malicious miners owning more than 50% of hashrate, they could also coordinate and launch a so-called 51% attack.
While the attack doesn't let them steal users' coins, they can alter the chain in a way that lets them spend their own coins numerous times - "double spend".
This is possible exactly because they decide the order and time-stamping of transactions, not because they have some magical powers beyond that.
However, these double-spent transactions still need to be perfectly valid otherwise they'll be rejected by the rest of the network as invalid.
We consider the scenario of an attacker trying to generate an alternate chain faster than the honest chain. Even if this is accomplished, it does not throw the system open to arbitrary changes, such as creating value out of thin air or taking money that never belonged to the attacker. Nodes are not going to accept an invalid transaction as payment, and honest nodes will never accept a block containing them. An attacker can only try to change one of his own transactions to take back money he recently spent.
There aren't any other exclusive tasks miners do, that other nodes can't or don't already do. I challenge you to prove me wrong in the comments section below.
So do miners decide the protocol rules?
Yes and no.
Miners are free to mine on any chain they want, but will users follow them? History (Bitcoin XT, Bitcoin "Classic", Bitcoin Unlimited and Bitcoin "Cash") shows us that it's very unlikely.
As I mentioned earlier, a peer-to-peer design inherently forbids one peer having any special privilege over another.
Miners, as any other node on the network, decide rules only for themselves (and SPV clients connected to them).
But what if most miners form a cartel and collectively adopt new rules and force them onto others?
Do you remember Satoshi's: "nodes are not going to accept an invalid transaction"?
Fully validating nodes that do not agree with miners keep operating under different consensus rules thus would drop any invalid block.
This would have 2 implications.
- Users wouldn't be able to get their transactions confirmed in a timely manner until the next difficulty adjustment or until new miners join the network.
- Miners wouldn't be able to easily sell their newly created coins unless the market considers their chain valid.
We could only speculate whether this situation would resolve on its own and what would the outcome be but that's where economic incentives come into play.
Different groups, different motives
It's no secret that miners are in it for a financial profit (both short and long-term). They have invested millions of dollars in a mining hardware and also have to pay rather hefty electricity bills. Any disruption of the network has an immediate effect on their mining operation which tends to be costly.
Users, on the other hand, have a wide range of motives for using Bitcoin: financial freedom and other ideological reasons, store of value, long-term profit, short-term profit (trading), and so on.
Since Bitcoin is a deflationary currency with strong value storing properties and upward price pressure, it's safe to assume that the majority of users are hodlers. Unlike miners, they could just wait until the difficulty readjusts and the network resumes to normal operation.
But there's a special group of Bitcoiners that, similarly to miners, is in Bitcoin mostly for profit - businesses.
As we've seen recently with the NYA, some businesses formed a cartel against users by signing an agreement with miners to proceed with a hard fork (SegWit2x) to allow 4-8MB blocks on the network.
Who follows whom then?
At the first glance, it may look as though users have no choice other than keeping up with what miners and businesses want. In other words, users follow businesses, right?
That's where economics plays its role again.
Let's consider this fictional story.
There's a powerful Norwegian corporation called Nukia which produces cell phones. They've been in the industry for decades because people loved their unbreakable phones. They even have formed a cartel with another corporation Arcatel to further strengthen their market dominance.
Even if their customers wanted to use different phones, they had no choice other than sticking with a few companies making same products since the rise of GSM.
Then there comes - out of blue - Pear, Foogle, Tamtung, and THC with smart phones that have shook the industry. People are astonished by their products and throw hundreds of millions of dollars at them.
The next thing you know, Nukia is on the verge of bankruptcy with almost 1 billion dollars in annual loss. End of the story.
From this fictional story (which isn't that fictional after all), it's obvious that the consumers always dictate what needs to be created.
A consumer equals to money, businesses follow the money.
The great Austrian economist Ludwig von Mises once said:
The real bosses, in the capitalist system of market economy, are the consumers. They, by their buying and by their abstention from buying, decide who should own the capital and run the plants. They determine what should be produced and in what quantity and quality. Their attitudes result either in profit or in loss for the enterpriser. They make poor men rich and rich men poor. They are no easy bosses.
Similarly - users, by their buying and by their abstention from buying, decide who should own the Bitcoin capital and run mining HW.
If users stop using Bitcoin, businesses and miners go bankrupt. On the other hand, if businesses and miners want to abandon users, new businesses and miners will replace them, because that's where the money is.
The answer to the question whether miners decide the future of Bitcoin is thus simple.
No, miners (and businesses) don't decide the future of Bitcoin, they merely follow the money. The future of Bitcoin is decided and maintained by users and users only.
If you still think otherwise answer yourself this simple question: what stops miners from altering the mining reward or the total supply of 21 000 000 BTC?
Are you of a different opinion? Please let me know in the comments section below.