El Salvador Signs a Cooperation Agreement with Koibanx to Develop the Government’s Blockchain Infrastructure on Algorand

Blog

Apr 13, 2021

Proof of Work, Proof of Stake & Pure Proof of Stake: An Evolution in Distributed Consensus

By: Algorand

Learn about Algorand’s Pure Proof of Stake (PPoS) consensus protocol and how it improves on the popular Proof of Stake (PoS) mechanism by solving the “Blockchain Trilemma.”

Algorand is the world’s first Pure Proof of Stake (PPoS) blockchain that provides security, decentralization, and scalability - all in an eco-friendly, sustainable way. Developed by Algorand founder and renowned cryptographer Silvio Micali, Pure Proof of Stake is built on Byzantine consensus and offers a more egalitarian approach than its predecessor Proof of Stake (PoS).

The Need for Consensus in Distributed Networks

Distributed consensus is the most important attribute of a blockchain as it ensures that the distributed network is decentralized and immutable. 

The key element of a public blockchain network is the node, which can be any computer server storing the chain’s software along with the history of records that is updating continually. All nodes are equal and update the ledger simultaneously to reflect the newly added transactions.

The question is: who decides what transactions can be added into the next block since there is no leading node? 

To make a distributed system work while maintaining decentralization, we need a set of predetermined rules that would organize nodes participating in the block creation. This is exactly what a consensus protocol does.

In any given blockchain, blocks are related chronologically so that no existing transaction could ever be changed or canceled. The chain’s expansion is unidirectional, meaning that adding new blocks is the only way to update a blockchain. In public networks, any node can become eligible to participate in the creation of new blocks, and it is the job of the consensus algorithm to decide which nodes become “miners” or validators.

The consensus mechanism is imperative because it protects the system against malicious nodes that might intentionally break the predefined rules or try to conduct fake transactions or organize distributed denial of service (DDoS) attacks.

To recap, a consensus mechanism is needed to achieve the following:

  • Keep the network decentralized while giving all participants an equal opportunity to generate new blocks.
  • Protect the network from malicious behavior and hacking attacks.
  • Ensure that the blockchain is the only true version of the history of transactions.
  • To reward block creators fairly based on the predetermined rules.

The Blockchain Trilemma

Proof of Stake (PoS) is certainly more advanced than Bitcoin’s Proof of Work (PoW) approach in terms of scalability and speed of transactions. 

However, it still doesn’t fully address the so-called Blockchain Trilemma, according to which you can fully succeed in only two of the three main objectives of a distributed ledger technology. 

The three key elements we speak about are security, decentralization, and scalability, and usually, one of them is compromised for the sake of the other two. 

Algorand proposes an alternative that can satisfy all three requirements. We call it Pure Proof of Stake (PPoS), and it might be one of the most significant breakthrough inventions in the blockchain industry.

What is Proof of Stake?

Proof of Stake (PoS) is the second most popular consensus mechanism after Proof of Work (PoW) in terms of the market capitalization of the blockchain networks deploying it. 

PoS came out as an alternative to PoW, which is the oldest consensus mechanism and was first introduced with Bitcoin. Despite the early success of Bitcoin, PoW couldn’t meet the demand for higher throughput, as later blockchains required greater scalability [and faster transaction rates].

Additionally, PoW systems end up requiring massive amounts of energy for the computing power used by miners.

The PoS algorithm was first introduced in 2011 on Bitcointalk. Peercoin was the first to adopt it in combination with PoW, but the consensus algorithm has rapidly become more prevalent in all its variations.

Unlike PoW networks that rely on miners, PoS-powered blockchains are maintained by validators. The validation process in PoS is called “forging.” If a node intends to participate in the block creation process, it simply has to stake the native token. There is no need to spend on electricity or purchase specialized hardware.

The rules of PoS networks vary from case to case, but the general concept is the same: nodes seeking to become validators are required to lock up a minimum amount of tokens that act as collateral

Next, validators have to agree on which transactions must be added into the next block, like in a game of guessing. If their block is selected by the protocol, they get rewarded from the transaction fees and with newly minted tokens in relation to the size of their stake.

Pure Proof of Stake: Silvio Micali's Creation

Despite the success of PoS blockchains in addressing scalability issues, they still can be monopolized by stakers with high amounts of tokens, which negatively impacts decentralization. 

To address the most pressing issues of PoS networks, Algorand created the so-called Pure Proof of Stake (PPoS), which is the brainchild of MIT professor Silvio Micali.

To avoid the “rich get richer” situation observed in most PoS networks, the PPoS protocol proposes a more egalitarian concept. The first use case of the PPoS consensus mechanism is Algorand, which was founded by Micali in 2017. 

The PPoS protocol is also built on Byzantine consensus, and each token holder’s influence depends on its stake in the system. The trick is that the protocol selects users randomly, irrespective of their stake.

The fact that all online users have the opportunity to get picked by the system has several benefits on the distributed network. First of all, it boosts the decentralized quality of the blockchain and makes sure that the system is secure.

This concept of random selection was created and implemented by Micali himself. The Algorand founder is a leading cryptographer and was awarded with the Turing award in 2012 for his contribution to cryptography. For those unfamiliar, the Turing award represents the highest distinction in computer science and is sometimes referred to as the “Nobel Prize of Computing.”

The goal of Micali was to solve the Blockchain Trilemma and build a blockchain system that can be scaled up to meet the demands of today’s world. 

As Micali himself said, financial transactions are slow and expensive. “5 trillion dollars are wasted every year on transaction fees of all types” – it may benefit corporations but not the end-user.

Delegated Proof of Stake (DPoS) & Bonded Proof of Stake (BPoS) vs Pure Proof of Stake: A Comparison

So how does the PPoS differ from other PoS versions? It has to do with the quality of decentralization. Let’s take two of the most popular PoS variations – Delegated Proof of Stake (DPoS) and Bonded Proof of Stake (BPoS).

Delegated Proof of Stake (DPoS)

In Delegated Proof of Stake (DPoS), there is a fixed number of elected nodes called delegates. They are responsible for creating blocks, being selected in a round-robin order. The delegates are voted by token holders, whose voting power directly depends on the number of tokens they own.

What we get is a system that does well in terms of transaction throughput, but it sacrifices decentralization and hence doesn’t solve the Blockchain Trilemma. 

Conversely, the PPoS protocol doesn’t have a group of selected few, and the system chooses validators randomly irrespective of their stake. The fact that there is no special group of validators makes it difficult for attackers to compromise the system.

Bonded Proof of Stake (BPoS)

Bonded Proof of Stake (BPoS) based blockchains don’t have any delegates, but users have to lock up a certain amount of their tokens to stake and influence the block generation process. They lock up their stake for a certain amount of time to get the opportunity to become validators. Their voting power is proportional to the stake, which also benefits wealthy participants.

Unlike the BPoS mechanism, PPoS doesn’t require users to lock up any amount of tokens in order to become eligible to participate in the block creation. Thus, taking part in the consensus protocol doesn’t affect a user’s ability to spend or transfer their stake. Meanwhile, PPoS systems are more decentralized, as validators are picked randomly by the system.

Algorand: A Pure Proof of Stake Blockchain

Algorand is the world’s first Pure Proof of Stake blockchain. On Algorand, anyone can build decentralized applications (DApps) and issue NFT's knowing that they deal with reliable technology.

The Algorand chain can handle any demand for high transaction throughput without fears of congestions. Blocks are finalized within seconds, enabling it to compete with global payment and financial networks in terms of transaction speed. 

The PPoS-powered network is the first blockchain to offer immediate transaction finality, which has positioned it as the go-to chain for frictionless finance (visit our Use Cases page for Algorand Ecosystem examples). 

Algorand relies on cryptographic sortition to pick users to propose the next blocks for a given round. When users propose a block, a committee of voters is selected to decide on the block proposal. If the overwhelming majority of the votes are from honest participants, the block is validated. All this occurs in three key phases: block proposal, soft vote, and certify vote.

New to Algorand?

Subscribe to our newsletter to be the first to receive the latest news, developments and updates:

Interested in connecting with our team?

For Developers: Start Building Blockchain Applications

Algorand is a truly revolutionary technology poised to unleash a borderless economy and accelerate the evolution of frictionless finance. 

If you are interested in getting started building blockchain applications, sign up to our next developer office hours or watch our webinar on How to Build Applications on Algorand: