Every blockchain network requires a consensus mechanism to validate each new block added to the chain. Consensus mechanisms allow the nodes on a blockchain to agree upon the accuracy of each block of transactions before it is added to the chain, preventing fraudulent transactions and errors. Two of the most commonly used consensus mechanisms in the blockchain industry today are known as proof of work and proof of stake. This guide will help acquaint you with each model, as well as explain their pros and cons. Read on to find out whether proof of work or proof of stake are right for your blockchain-based application.
What is Proof of Work?
The proof of work consensus mechanism is one of the most well-known and widely used, popularized particularly by Bitcoin. The idea traces its roots beyond cryptocurrency, however, first appearing in a 1993 article penned by Cynthia Dwork and Moni Naor. The term “proof of work” was first designated for this model by Markus Jakobsson in 1999.
Proof of work was adopted as the consensus model for Bitcoin after creator Satoshi Nakamoto included it in the Bitcoin whitepaper as a method that was insulated from fraudulent transactions except in the event of a 51% attack, which refers to a hypothetical scenario in which a group of miners controlling a majority of a network’s computing power conspire to prevent new transactions from being confirmed. This attack would effectively stop some or all transactions on the network, as well as reverse previously confirmed transactions. However, such an attack is highly improbable in a widely distributed ledger with many nodes.
Proof of work is characterized by mathematical equations, which the nodes, or miners, on a network essentially race to solve. In the case of Bitcoin, the first miner to solve the mathematical equation receives freshly minted Bitcoin, which is known as the block reward. The successful miner will also receive a share of the transaction fees generated by the network. Solving the equation verifies the new block of transactions, which is then added to the existing chain of previous blocks.
Equations in a proof of work model are difficult to solve, but once an answer is found by a miner they are easily verified by the remainder of the network. Proof of work equations must be solved by brute force, which ensures that miners all have an equal chance to solve the equation. However, it also means solving the equation in a reasonable amount of time requires an exceptional amount of computational power.
What is Proof of Stake?
A proof of stake consensus model builds on the ideas behind proof of work and has been introduced by Ethereum miners as a potential alternative. Much like proof of work models, proof of stake consensus mechanisms are designed to validate transactions and verify the accuracy of new blocks to be added to the existing chain. The process by which this occurs, however, is quite different.
Whereas proof of work models position all nodes on the network equally, dependent only on who solves the mathematical equation first, proof of stake models depend on how much of a cryptocurrency a node, or validator, already owns and puts “at stake.” The more cryptocurrency a validator stakes, the more effective their mining capability. The proof of stake model was created as an alternative to proof of work in response to the exponential amount of computational power demanded by the proof of work model.
Instead of racing to solve a mathematical equation, nodes under a proof of stake model are selected to validate a percentage of transactions equal to their stake of ownership in the network. For example, a validator with 1% of the cryptoassets staked on the blockchain should only be able to construct 1% of the blocks. This eliminates the need to leverage (and waste) exorbitant amounts of computing power to solve a mathematical equation and discourages would-be attackers.
How are Proof of Work and Proof of Stake similar?
At their core, both proof of work and proof of stake are designed to help the nodes on a blockchain network verify all transactions that take place. When the nodes agree as to the validity of a block of transactions, it is added to the chain. Each model offers distinct methods to achieve this same end. Despite this similarity, however, proof of work and proof of stake are considerably different, and each offer their own set of pros and cons.
What is the main difference between the two?
The main difference between proof of work and proof of stake models is in the limitations that proof of stake places upon nodes. Since nodes can only validate a percentage of transactions equal to the percentage of cryptoassets they hold, it is unnecessary in many cases for them to continuously leverage computational power (and electricity) to compete for a block reward. This makes proof of stake largely more efficient and cost-effective than a proof of work model.
Proof of stake also prevents a decline in mining as a network ages; while proof of work is largely dependent upon the minting of new cryptocurrency units to reward miners, the proof of stake model rewards nodes through a share of transaction fees alone. On a proof of stake network, all units of cryptocurrency exist at the outset and none are minted as new blocks are validated.
However, proof of stake models are newer and remain in the early stages of adoption, while proof of work models are widespread and tested. Proof of work models discourage forking, or the creation of alternative blockchains when protocols are updated. When some nodes do not adhere to the update and others do, a fork is created and two (or more) simultaneous chains will emerge from the previous one. Eventually, the fork will have to be reconciled into a single, unified blockchain once more. In proof of work models, attempting to validate blocks on multiple forks requires a split in computational power and reduces the likelihood a miner succeeds in solving the mathematical equation. In proof of stake models, however, there is virtually no disincentive to attempting to validate blocks on multiple forks. This behavior can lead to instability and a loss of trust in the veracity of the blockchain. Consensus models should ideally encourage forked blockchains to reconcile into one universally agreed-upon ledger.
Cost, energy, and time efficiency of Proof of Work vs. Proof of Stake
Proof of work is notoriously inefficient, demanding excessive consumption of energy as well as a significant cost to miners. As of June 2019, Bitcoin miners alone were responsible for the consumption of about 66.7 terawatt-hours of energy annually, the same amount of electricity used to power the Czech Republic for an entire year. That’s roughly 0.2 percent of global energy consumption just for Bitcoin mining operations. Some estimates peg energy consumption associated with Bitcoin mining as responsible for 22.9 million metric tons of carbon dioxide emissions each year.
As Bitcoin mining operations scale up in the ceaseless mission to solve proof of work equations, those numbers only stand to grow. Proof of stake, on the other hand, does not have these built in inefficiencies. Under a proof of stake model, nodes are selected to construct the next block in the chain at a frequency based on the amount of cryptocurrency they maintain in their wallet. Instead of leveraging massive amounts of computational power to attempt to solve mathematical equations associated with each block, proof of stake networks eliminate the competitive drive to obtain block rewards. In fact, block rewards are non-existent in a proof of stake model, and nodes are instead rewarded with a share of transaction fees.
Security of Proof of Work vs. Proof of Stake
Proof of work models are relatively secure, vulnerable to costly “selfish mining attacks.” Selfish mining attacks occur when an attacker successfully mines a block and then keeps it for themselves for as long as possible. This attack is designed to waste the computational resources of competing miners and improve the attacker’s ability to secure the block reward in successive blocks. Selfish mining attacks prevent the timely addition of verified blocks to the chain and reduce the community’s ability to review and guarantee the validity of the verified block.
Both models are also vulnerable to denial of service attacks and sybil attacks. Denial of service attacks occur when the nodes are flooded with traffic, disrupting the normal operation of the network. Sybil attacks occur when an attacker creates multiple nodes that behave maliciously and disrupt the normal order of operations.
However, proof of stake models are vulnerable to a variety of other attacks as well, including the low-cost bribe attack. A bribe attack occurs when an attacker performs a transaction they intend to reverse after the fact. As soon as the transaction is settled, the attacker moves to fork the blockchain based on the last verified block prior to the reversed transaction. The attacker then continues to build on the forked chain in secret until it is longer than the original chain. Once this step is achieved, the attacker publishes the blockchain as a whole, which is accepted as valid by the network and reverses the initial bribe attack transaction. Performing a bribe attack on a proof of stake network is estimated to cost roughly 50 times less than executing the same attack against a proof of work network.
What are the pros and cons of each?
Dissecting the differences between proof of work and proof of stake consensus models can be difficult. However, the major differences can be summed up in a breakdown of the pros and cons of each model.
Proof of Work Pros:
- Proof of work models make blockchain networks more difficult and costly to attack.
- Proof of work models reward miners with both a block reward and a share of transaction fees.
- Proof of work models often result in more decentralized networks.
Proof of Work Cons:
- Proof of work models require access to significant (and increasing) computational power, much of which is wasted each time an equation is solved.
- Proof of work models demand excessive energy consumption, leading to increased costs and environmental impacts.
- Proof of work models result in long-term disincentives to mining as newly minted cryptocurrencies near the cap.
Proof of Stake Pros:
- Proof of stake models do not require the computational power associated with proof of work and are therefore more energy efficient.
- Proof of stake models offer better rewards for nodes which stake their cryptocurrency.
Proof of Stake Cons:
- Proof of stake models generally result in a less decentralized network.
- Proof of stake models are often less secure and more susceptible to low-cost attacks.
Choose Blockdaemon for superior network management
Launching and managing your node on a blockchain network can be a massive undertaking that distracts your team from the development of features that generate business value. Blockdaemon has extensive experience deploying nodes on a wide range of consensus models and can accommodate your needs. Nodes are available for private networks as well. Blockdaemon enables you to launch nodes in any SOC2 compliant cloud through our management console and using BPM for installs on-prem. We have experience running high-availability nodes with 99.9%+ uptime, with configurations supporting 99.99% uptime available. Blockdaemon has experience running more nodes across more protocols than any other provider, and integrates with leading custodial solutions and technologies, such as MPC. Blockdaemon also has add-on services and tooling available, including block explorers, data APIs, and more. With a rich ecosystem of offerings in our marketplace, your developers can focus on innovation and iteration of your own features.