Skip to main content

Shopping for the Right Blockchain Consensus Algorithm: Proof of Stake

Today I'll continue a review of the Linux Foundation's first Hyperledger blockchain class on edX, "Blockchain for Business - An Introduction to Hyperledger Technologies." This post will focus on how the Proof of Stake (PoS) consensus algorithm works, its pros, and its cons.

Often when we go shopping for something we start or end with the cost of the product. If there's a new pair of jeans for $300, but a similar looking pair at the thrift store for $5, the thrift store has a significant economic advantage. 

When shopping for the right blockchain consensus algorithm, though, there is no price tag or checkout process. Instead, consumers have to carefully weight the pros and cons of the different algorithms to find the one that works best for them. To go back to our jeans, it's all about fit, not price because, as it turns out, if the algorithm fit is a little too tight in certain areas everyone will know and it will cost you more than your spot at the cool kid's lunch table. 

In the last post we looked at the Proof of Work (PoW) consensus algorithm which is used by the cryptocurrency Bitcoin. Today we'll look at Proof of Stake. Here's how the course explains Proof of Stake (PoS):

"The Proof of Stake algorithm is a generalization of the Proof of Work algorithm. In PoS, the nodes are known as the 'validators' and, rather than mining the blockchain, they validate the transactions to earn a transaction fee. There is no mining to be done, as all coins exist from day one. Simply put, nodes are randomly selected to validate blocks, and the probability of this random selection depends on the amount of stake held. So, if node X owns 2 coins and node Y owns 1 coin, node X is twice as likely to be called upon to validate a block of transactions. The specific implementation of PoS can vary, depending on the use case, or as a matter of software design. Instances include Proof of Deposit and Proof of Burn. The PoS algorithm saves expensive computational resources that are spent in mining under a PoW consensus regime."

There's a lot going on there and a fair amount of shorthand so let's break that down. As you may have picked up from that description as the cryptocurrency Bitcoin uses Proof of Work as its consensus algorithm other cryptocurrencies have chosen to use Proof of Stake hence the reference to coins. While cryptocurrencies are a hot topic, they are not the focus of this blog so I'll go over this consensus algorithm and hit the main points, but will not go into depth about it.

So PoS is similar to Proof of Work, but different. How? In Proof of Work miners race to hit a target, repeatedly lobbing hashes at the target till they hit their mark which can take time and incur high costs due to the energy required to keep lobbing those hashes try after try after try. 

In Proof of Stake 'validators' who mine the block are not determined by speed as in PoW, but up to a combination of how much of the determined cryptocurrency coins they possess and other factors that randomize the process. If it was just up to the validators with the most coins a monopoly could develop. 

The way in which the validators are randomized depends on the cryptocurrency coin being processed. Cryptocurrencies such as Nxt, Blackcoin, and Peercoin all have different ways to randomize the process. 

The main pro for PoS is that it avoids the energy suck and associated financial and environmental cost of PoW. Unfortunately, while PoS avoids that issue, it has other issues.

Bitfury, a full service blockchain technology company, issued a white paper in September 2015 that directly compared PoW and PoS consensus algorithms. Their paper goes into great detail about PoS' issues which are primarily related to the different attacks PoS is subject to. These attacks include; Long Range Attack,  Bribe Attack, Coin Age Accumulation Attack, and the Precomputing Attack. The white paper also goes over how hackers can game PoS blockchains through forking.

While Delegated PoS (DPoS) systems have solved some of the problems that PoS faces, it is no panacea.

Again, it is early days in the cryptocurrency world and because cryptocurrency is not the focus of this blog I don't want to overwhelm readers with jargon and minutiae, but rather give an overview of how these different consensus algorithms work and what their costs and benefits are.

Comments

Popular posts from this blog

The Proof of Work consensus algorithm

Today I'll continue a review of the Linux Foundation's first Hyperledger blockchain class on edX, " Blockchain for Business - An Introduction to Hyperledger Technologies ." Today's post will focus on how the  Proof of Work (PoW)  consensus algorithm works. People have  explained  PoW to me a few different times and each time I walked away with questions and an incomplete understanding of the subject. This includes the edX course which does a good job of explaining the concept, but still didn't provide a good visual of how PoW works or connect all the dots. I'll try to provide a more comprehensive explanation here.  Please keep in mind why consensus algorithms such as PoW are necessary and important: They provide trust between different untrusting parties. Without trust there are no transactions between the parties. How do the consensus algorithms provide trust? As a process created by third-party developers consensus algorithms such as PoW do not b...

Achieving Consensus

Today I'll continue a review of the Linux Foundation's first Hyperledger blockchain class on edX, " Blockchain for Business - An Introduction to Hyperledger Technologies ." Today's post will focus on how participants in a blockchain transaction agree on the data that goes to the blockchain. This process is called consensus. Normally, when two people achieve or come to a consensus it means that after some discussion all parties have come to an agreement. In terms of the blockchain, consensus means " achieving agreement among the network participants as to the correct state of data on the system." This "leads to all nodes sharing the exact same data." If there is no consensus then not only can the participants in a blockchain not  agree on what data to commit to the blockchain, but they cannot  distribute their information away from a centralized location. Achieving consensus quickly, flawlessly, cheaply, and consistently is essential to the ...

Permission Granted

Today I'll continue a review of the Linux Foundation's first Hyperledger blockchain class on edX, " Blockchain for Business - An Introduction to Hyperledger Technologies" with a focus on permissioned and permissionless blockchains. One Pager on Permissioned and Permissionless Blockchains Prior to this class I knew that some blockchains were permissioned and others permissionless, but I didn’t have a firm grasp of what those terms meant mainly because permission typically takes a preposition after it; notably, permission to do something or permission from someone. The shorthand terms permissioned and permissionedless, unfortunately, didn't spell out the rest. Today I'll make that a little more clear.  Some blockchains such as the Bitcoin and Ethereum blockchains are permissionless. This means those who want to participate in them do not require permission from any central authority to do so. This makes sense for Bitcoin and Ethereum, two crypto...