DigitalForest Blog

Overview of 9 blockchain consensus algorithms

The most popular consensus algorithms for blockchain networks
November 19, 2019
There are a lot of consensus algorithms in a blockchain world, which help to choose the best peer to sign the next block in a network. Some of them, such as, for example, PoW, are widely known and frequently used, others are just trying to fit in.

Proof-of-Work (PoW)

The PoW consensus algorithm is probably the most known way of confirming transactions, mostly thanks to Bitcoin. The main idea is that blockchain network peers, which confirm a transaction, do a rather complicated computing work using the algorithm, the result of which would be easy to check by other network peers.

The first node to fully complete all necessary calculations receives a reward from the blockchain network. All nodes are competing against each other by increasing the capacity of computing resources in order to be the first node to receive the reward.

The main disadvantage of this algorithm is:
- meaningless energy costs. A large number of nodes make calculations, but in reality, only the first one to do so receives a reward.

Links
- Доказательство выполнения работы / википедия (Russian)
- Proof-of-work system / wikipedia
- Proof-of-work / bitcoinwiki

Proof-of-Stake (PoS)

PoS is one of the most broadly used consensus algorithms in blockchain networks. Within this algorithm, a node with a greater number of resources, such as cryptocurrency coins, gets chosen to generate the next block in the blockchain. The node doesn't get any reward for block generation, instead, it gets awarded for executing a transaction.

There are several scenarios of the node being chosen:
- randomly among the most abundant nodes
- randomly among the oldest nodes

The main advantages of this algorithm are:
- significant decrease in power consumption, compared to PoW
- to create a Double-spending attack, you need to accumulate more than 50% of the total amount of the entire cryptocurrency, which is going to cost a fortune. In case an attacker still can accumulate such an amount of resources, he is going to break the balance and become a victim of his own actions.

The main disadvantage is:
- resources accumulation is motivated, which can lead to a network centralization.

Links
- Доказательство доли владения / википедия (Russian)
- Proof-of-work system / wikipedia
- Proof-of-Stake / bitcoinwiki
Learn how to apply private blockchain solutions to your business

Delegated Proof-of-Stake (DPoS)

DPoS is one of the varieties of the Proof-Of-Stake consensus algorithm, in which blocks are signed by selected representatives. Owners of the largest balances choose their representatives and each of them receives the right to sign blocks on the blockchain network. Each representative with one or more percent of all votes gets into a "council". Every next representative, which signs the next block is chosen from that council. In case of a representative, for some reason, misses his turn in signing a block, he gets deprived of delegated votes and leaves the council. Then, a more appropriate candidate gets chosen instead of him.
By delegating their votes, balance owners don't lose control over it and they can recall them from their representatives at any time.

The major advantages of DPoS algorithm are:
- balance owners have an opportunity to delegate their votes without delegating actual resources
- balance owners have an opportunity to make an additional profit off this ownership
- costs minimization for a blockchain network support. Unlike in PoS, the amount of "unnecessary work" is reduced during the process of choosing the next voter.

Links
- Delegated Proof-of-Stake (DPoS) Explained
- Delegated Proof of Stake

Leased Proof-of-Stake (LPoS)

Judging by the name, LPoS is on yet another Proof-of-Stake algorithm modification. Currently, it is only supported by the Waves platform. In this algorithm, any user has a possibility to lease out their balance to mining nodes, and in return, these mining nodes share a part of their profit with users. Thus, this consensus algorithm allows you to earn income from mining without actually having to mine yourself.

Links
- Waves / Wiki
- Waves Platform

Proof-of-Capacity (PoC)

Another consensus algorithm is Proof-of-Capacity (PoC), also known as Proof-of-Space (PoSpace). I managed to find only one blockchain platform, which currently supports this algorithm: Burstcoin.
PoC works using the following approach:
- each miner calculates quite a large amount of data, which gets recorded on a disk subsystem of a node: hard drive, cloud storage or other. This initial dataset in PoC is called space.
- per each new block in the blockchain, the miner reads a small data set that equals 1/4096, which is approximately 0.024% of all stored data. Then it returns the result (deadline) as elapsed time since the last block was created, after which the miner can create a new block.
- the miner who received a minimum deadline time signs the block and receives a reward for transactions.

Thus, the computing resources required for this work are limited by the time it takes to read files from a disk subsystem. This is the main thing that allows executing mining with fairly high energy efficiency. Miners compete against each other for the amount of stored data, not for equipment speed, which determines mining in PoW.

Links
- Proof-of-space / Wiki
- Burstcoin / Wiki

Proof-of-Importance (PoI)

This consensus algorithm is used by the NEM blockchain platform. The significance of each user in the NEM network is defined by a number of resources available on their balance and the number of transactions within their wallet. Unlike a more common PoS algorithm, which takes into account only user balance, PoI takes into consideration both resources amount and user activity in the blockchain network. This approach encourages users not only to keep funds in their accounts but also to use them extensively.

Links
- What is Proof of Importance?
- NEM (cryptocurrency) / Wiki

Proof-of-Activity (PoA)

A description of this algorithm was published in 2014, as a potentially new and more reliable algorithm for bitcoin, but I wasn't able to find any information about its actual implementation. PoA algorithm creators tried to combine two most popular algorithms: Proof-of-Work and Proof-of-Stake, in order to increase a level of protection against potential attacks, such as a 51% attack or Denial-of-Service attacks (DoS).

The algorithm works as follows:
- each miner in a blockchain network tries to generate an empty block header, which contains a previous block hash, a public address of a miner, an index of a current block in the blockchain and a nonce.
- after generating the empty block header that meets current difficulty requirements, the node sends this header to the blockchain network.
- all nodes in the network consider the header of such block as data received from pseudo-random owners. Stakeholders are selected using a hash of the sent block header and a hash of the previous block + N presets with the help of a follow-the-satoshi algorithm.
- every stakeholder, which is online at the time, checks whether the empty block header is valid. During the validation, everyone who received the header checks whether they are one of the first N-1 lucky stakeholders of this block. And if this is the case, they sign the empty block header with a secret key and send it to the blockchain network.
- When the N-th stakeholder sees that he is the one to sign the block, in addition to the empty block header, he adds a block with transactions included, a number of which he determines himself, as well as all N-1 signatures from other stakeholders and then he signs the block.
- The N stakeholder sends out a new block. Nodes receive this block, make sure of its legitimacy and add this block to the blockchain.
- The transaction reward received by the N-stakeholder is distributed between the miner and N lucky stakeholders.

Links
- Proof of Activity: Extending Bitcoin's Proof of Work via Proof of Stake / PDF

Proof-of-Authority (PoAuthority)

The PoA consensus algorithm is somewhat different from the rest of the algorithms since it doesn't require any mining, unlike PoW or PoS. In a PoAuthority-based blockchain network, all transactions and blocks are checked with approved accounts also known as validators. Transaction execution and block generation takes place automatically using just a computing power of the validator.

A positive aspect of this algorithm is:
- no need for mining leads to a significant reduction in maintenance costs.

A negative point of using this algorithm is:
- key persons of the algorithm are validators and that can lead to centralization. This only can make sense is a case, when a private network is deployed and accounts are completely, or as much as possible, trustworthy.

Links
- Proof-of-Authority / Wiki

Proof-of-Burn (PoB)

One more consensus algorithm worth mentioning is Proof-of-Burn. Operating within this algorithm, a miner sends coins to a random address of a generated hash. Spending the coins transferred to this address is basically impossible since there is a zero chance to find out its private key. By burning the coins, the miner gets a chance to find a PoB block and get a reward for it. Chanced to mine that block increase as the number of burned coins grows. From an economics perspective, this process of burning coins can be thought of as buying a mining rig. Clearly, using such algorithm makes sense only in the later stages of a particular cryptocurrency existence, when there is actually something to burn.

An interesting point is that this method works great for transferring from an "old" to a "new" cryptocurrency. For example, when the old cryptocurrency is at the final point of its mining, we can use the PoB method to burn the old one in order to transit to the new cryptocurrency
This algorithm is used on the Slimcoin platform.

Links
- What is Proof of Burn?
- Proof of burn
Most blockchain platforms use such consensus algorithms as Proof-of-Work and Proof-of-Stake, as well as their modifications. There are a few examples of quite specific consensus algorithms on the market. These are Proof-of-Authority, Proof-of-Capacity or Proof-of-Burn. From the platform's economy point of view, Proof-of-Importance is a very interesting algorithm. It encourages cryptocurrency owners, not only to collect and store coins but also to actively use them. Delegated Proof-of-Stake is probably one of the most ideal algorithms. Its benefits are a quick block signing and great energy efficiency, due to a limited number of signatories.
Part 2. Blockchain consensus algorithms overview.
Overview of Ouroboros PoS, Proof of Elapsed Time, Practical Byzantine Fault Tolerance algorithms
Any questions? Text us

DigitalForest Blog

© 2017-2019 DigitalForest Ltd.
Belarus
Republic of Belarus,
Minsk, 220036
Karla Libknekhta, str., 66, office 403
Tax ID: 192795922

+375-17-2419303
+375-29-9318314

contact@digiforest.io
We use cookies to provide the best site experience. By continuing to browse the site, you are agreeing to our use of cookies.
Ok, I agree