In crypto-speak, consensus means pretty much what it sounds like: agreement. Consensus is the method by which blockchain networks agree on which transactions are valid and which aren’t. The current methods used to achieve consensus are discussed here.
In our section on Mining, we discuss the proof of work consensus mechanism, the original cryptographic solution to the Byzantine General’s Problem introduced in the Bitcoin white paper.
The Byzantine General’s Problem boils down to this: how can we prevent the falsification of data in an environment where there is an economic incentive to cheat? In our case, this is analogous to miners creating fake transactions (or entire blocks) on the public ledger.
Well, Satoshi, being a smart cookie, laid out a plan for how we can trust miners.
In the case of the Bitcoin protocol, it is prohibitively expensive to falsify data–in fact, an interesting summary of the system might be that the network is secure as long as honest miners outspend dishonest ones.
As the number of honest miners increases, it becomes exponentially more difficult for “bad actors” to create false transactions. When dishonest miners gain a majority of the network, it is possible to mount what is known as a 51% attack.
Let’s review proof of work and 51% attacks briefly before continuing (please visit Mining for a step by step, logical explanation of why proof of work is effective):
1. Miners operating in a proof of work system under the assumptions that:
a. The likelihood of mining a block is proportional to mining power (computational power).
b. The things you need in order to mine (energy, time, and computational power) are costly.
i. Miners must therefore carefully ration their computing power. Usually, miners can only mine one chain at a time. If there are two chains on the same protocol (a fork!) to mine on, any effort put into mining the fraudulent one will ultimately yield no reward–only wasted energy and time costs. The inclusion of a limited physical resource (energy) in the entire process motivates me to mine only on one chain… the one that I believe to be honest.
ii. The absence of this cost opens the door to a slew of game theory issues, most prominently the Nothing at Stake problem. To be discussed further!
c. Miners will accept the longest chain as the honest one.
i. In essence, this means miners will accept the chain with the most computational work as legitimate, as it would be incredibly costly to replicate all of the work put into the honest chain.
ii. Computational work costs money.
2. Since there is an emphasis on computational work and computational work takes energy, it follows that:
a. A dishonest entity owning 51% of total computing power and mining on a fraudulent chain would, on average, mine blocks faster than the honest chain until the dishonest one is longer.
b. At this point, honest nodes will be forced to accept the longer chain as the valid one, and the attack has succeeded.
c. Therefore, it is of critical importance that no one entity control 51% of the mining power.
d. The cost to mount such an attack would require capital equal to the value of 51% of the entirety of the mining power associated with the network. The assumption of proof of work systems is that:
i. The coordination of such an endeavor makes this situation unlikely.
ii. The cost is large enough to be prohibitive.
3. Furthermore, there is a final layer of security:
a. Miners are rewarded with newly minted cryptocurrency.
b. A succeeding 51% attack on the blockchain implies a broken, insecure system.
c. No one trusts a broken, insecure system.
d. People will immediately sell the broken cryptocurrency, crashing its value.
e. Miners pay costs and take a profit by selling the crypto they’ve mined, so they have an economic incentive to keep the system secure. In fact, there has been active miner collaboration in the past to prevent any one entity from controlling too much of the global mining power.
These distributed and economic solutions serve as a consistent work around for the Byzantine General’s problem, as it is far too costly to mount an effective attack without destroying the value of the currency that has been stolen in the process!
While genius, the proof of work consensus mechanism has some very important drawbacks, the first of which is massive energy consumption. The amount of energy necessary to maintain just the Bitcoin network daily is absolutely staggering.
It can take upwards of 350,000 times more energy to confirm a single Bitcoin transaction than it does to execute a comparable VISA transaction.
Because energy costs are high for miners, many of them are forced to form large conglomerates, or “pools,” splitting the block reward among contributors when any of the miners finds a block. This decreases the size of payments but increases their frequency, allowing miners to receive a steady income.
The problem is, this puts a very large proportion of the mining power in the hands of just a few organizations, which is the opposite of what the Bitcoin protocol hopes to achieve.
Additionally, energy costs vary widely across geographic regions, effectively pricing out some prospective miners just because they live in the wrong place. This further reduces mining decentralization–we want as many people mining as possible, all over the place!
Clearly, proof of work has some serious drawbacks. However, it was by far the best system proposed in modern history, allowing for the development of a decentralized system like Bitcoin.
Building off of this original idea, developers have since worked on a new consensus model. It’s known as Proof of Stake, and it solves many of the aforementioned problems while introducing entirely new ones.