Consensus algorithms are paramount to verifying the authenticity of distributed blockchain platforms and are the process of building agreement among a network of mutually distrusting participants.
Created by Satoshi Nakamoto for Bitcoin, Nakamoto Consensus refers to the set of rules, in conjunction with the Proof of Work consensus model in the network, that govern the consensus mechanism and ensure its trustless nature. In doing so, Bitcoin became the first Byzantine Fault Tolerant (BFT) open and distributed Peer to Peer (P2P) network that utilizes a distributed network of anonymous nodes that are free to join and leave the network at will.
Byzantine Fault Tolerance (BFT)
Byzantine Fault Tolerance is the ability of a distributed computer network to remain fault tolerant with valid consensus despite imperfect information or failed components of the network. Prior to Bitcoin, the only way to maintain a BFT, P2P network was through employing a closed or semi-closed group of nodes. Additionally, traditional BFT algorithms such as Practical Byzantine Fault Tolerance (pBFT) use a different node selection method than what is currently used in Nakamoto Consensus.
Maintaining BFT in an open and distributed network like one as large as Bitcoin requires the use of a specific set of rules that rely on both cryptography and game theory mechanics in order to create the trustless environment necessary to facilitate decentralized consensus across a network of value transfer.
In pBFT systems, the consensus model only works in small groups of closed nodes (~50) where there is a substantial amount of communication overhead that prevents these consensus models from being able to operate at scale. Achieving consensus in systems with arbitrary faults usually requires a specific voting system to help achieve consensus. In regards to cryptocurrency platforms utilizing pBFT consensus models, this voting mechanism is predicated on a system of rotating “leader” nodes in a round-robin style format. Since the system consists of a network of limited, closed nodes, it is trivial for these nodes to communicate efficiently with each other and determine who the “leader” that proposes each new block is.
Read more about Practical Byzantine Fault Tolerance
If the leader acts maliciously, they can be removed by a majority vote from the nodes. However, this clearly does not scale well in a system such as Bitcoin where consensus on the entire state of the blockchain and validity of all of its transactions is distributed to thousands of nodes across the world that continually connect and disconnect from the network. Further, there needs to be an inherent cost to participating in this system of consensus to discourage participants from acting in a malicious manner.
So, in order for Bitcoin to operate as a Byzantine Fault Tolerant P2P network, it introduced a PoW mining consensus algorithm in conjunction with a specific set of rules that govern the mechanism in order to achieve trustless consensus across the network. This has come to be referred to as classical Nakamoto Consensus.
How Does Nakamoto Consensus Work?
Nakamoto Consensus can be broken down into roughly 4 parts.
- Proof of Work (PoW)
- Block Selection
- Incentive Structure
The combination and harmonization of these 4 components of Bitcoin allow it to become the distributed network for value transfer that it is. It operates with trustless consensus and will remain secure as long as the majority of power contributed to the mining process is in the hands of honest miners, as you will see next.
Proof of Work
Overall, the most important the engine that drives consensus in Bitcoin is the Proof of Work consensus protocol. Basically, miners use a specific full node to compete in mining blocks in order to earn the block reward that is issued for each successfully mined and validated block. The cost of this mining process is electricity, which has a real world financial value, thus giving the issued BTC for each mined block an inherent value.
Read more about Bitcoin Mining
PoW in Bitcoin is designed to prevent double spending. While the digital signature scheme within the UTXO model provides the verifiable ownership of transaction outputs to be spent, it does not enable prevention of double spending. The blockchain is a chain of timestamped data blocks containing transactions with each block hashed to the previous one. This provides immutability to the blockchain, but how can you tell if the chain that you are on is the correct chain? This is where PoW comes in.
Contributing to mining is based on computational power, the more power within the network that you have, the more likely you are to mine a block. However, the process is stochastic, so it basically is a lottery with random chance of who will win, so it is impossible to know who will win the next round and the cost to participate will continue to increase. Because of this model, the longest chain is considered the valid chain because it came from the largest pool of computational power. The validation rules ensure that proposed blocks have the requisite computational work performed in order to be accepted. Further, as long as the longest chain and majority of the network’s hashing power is controlled by honest nodes, the honest chain will grow the fastest and outpace competing chains.
The result of this system is that once the cryptographic puzzle for the mining round is solved, a miner proposes the block to the network, the network validates the block if all the transactions within the block are not double spent, and the block is added to the longest chain. With a massive distributed network like Bitcoin’s, the cost of attacking the network through a 51% attack is enormous and only grows larger as the network continues to grow.
The block selection process utilized by Nakamoto Consensus is one of the key components that differentiates it from other consensus models. Since the model is predicated on a PoW design, the block selection process specifically refers to the “lottery” process for miners competing to win the block reward for mining the next block.
Remember, in pBFT the block leader is selected through a voting process and replaced in a round-robin style format each round. There is no mining in this system, blocks are selected to be added to the chain by the leader and need to be approved by at least ⅔ of the other nodes. In Bitcoin, there is no voting process to determine the block leader. Instead, it utilizes a cryptographic puzzle predicated on incrementing a nonce in the block until the correct value that represents the block’s hash and required zero bits for the beginning of the nonce is reached.
The miners in the network all compete to solve this puzzle and the first to find the solution wins the round of the lottery. The block is then propagated by the miner across the network to the other mining nodes who implicitly vote to accept the block as valid by adding the block to the longest chain. A resulting effect of this process is the removal of potential third-party influence on a block leader because the process is random and the leader cannot be predicted. The only way to win the lottery is by contributing hashing power to the network in hopes of winning, and when you don’t win, the expended energy becomes a sunk cost, adding to the incentive structure of mining. There becomes an inherent cost to participating, whether you successfully mine blocks or not.
Before inflationary currencies resulting from the fractional reserve banking system dominated the global currency scene, precious metals were the main form of value storage and commerce. One of the primary reasons that they were used, and still retain their historical value (think gold and silver), is because they are scarce. Not only are they scarce, but it requires effort (PoW above) to mine them and use them.
Scarcity in Bitcoin is based on this premise by limiting the total number of Bitcoin that will be mined to 21 million. Additionally, Bitcoin can only be injected into the system through the mining process and it follows a deflationary scheme where the block reward is halved every 210,000 blocks (~4 years).
The deflationary design of Bitcoin creates an incentive mechanism for long-term vested interests by owners of Bitcoin and participants in the Bitcoin network to further secure and validate the network while also supporting the growth in value of Bitcoin itself. The deflationary nature of Bitcoin also creates an iterated game theory model where cooperation among individuals within the network is optimal through aligned interests driven by deflation in the long-term.
Miners are incentivized to validate and secure the network honestly, as the reward they receive for mining a block is Bitcoin. If the value of Bitcoin drops or the the network becomes compromised, it effects their bottom line.
Importantly, Bitcoin, utilizing Nakamoto Consensus, is a socially scalable network. Through incentive designs, PoW, and sets of rules governing the mechanics of reaching trustless consensus, Bitcoin overcomes inherent problems in human nature to become a reliable and legitimate source of intrinsic value.
Nakamoto Consensus is the first consensus mechanism applied to distributed ledger systems as it coincided with invention of blockchains and is termed after its mysterious architect. The term “blockchain” is indiscriminately tossed around these days as a solution to every problem under the sun.
Blockchains are an important component of cryptocurrencies, however, their vast potential would not be possible without being intertwined with other components of the platforms. In Bitcoin and some other proof of work cryptocurrencies, this is Nakamoto Consensus, and it is vital to forging a socially scalable network like Bitcoin.