What is a consensus algorithm?

What is a consensus algorithm?


Consensus algorithm is
a strategy that a group of computers use to agree between each other on what’s true. There’s different kinds, different flavours of consensus algorithms
that people have applied that each have different properties or tradeoffs in terms of how secure the agreement is and who gets to vote on what. But in general, the purpose of consensus algorithm is just to manage which participants in the network
get to set the state of truth that everyone else follows and agrees on. The most significant benefit of a blockchain is that it’s decentralized. So you don’t have to trust any one person to keep
the state of truth to the system. And there’s no one person who can admit or restrict
anybody else from participating in the system. But the limitations that come with this are many. This system is difficult to scale. It’s technologically complex. It’s difficult to maintain. It’s difficult to make changes in code or business logic. So, there’s a lot of difficulties that come with the technology and we make all of those tradeoffs in exchange
for the decentralization. There’s many, many types of consensus algorithms
that have been developed. The very first was called Proof of Work, which requires computers to use a lot of processing power. And the amount of processing power they use constitutes the amount of voting power they have in the network. Since then, people have also proposed to use Proof of Stake. So we use the amount of funds on the network that people already possess to determine their voting power and several others, such as Proof of Capacity or the one that
we’re developing in Blockchain Zoo, which is Proof of Participation. So each different consensus algorithm has different tradeoffs. That makes them different situations. Proof of Work may work well in one context. Proof of Stake may make more sense in another context. Federated consensus algorithms make more sense in another context if you can trust the participants already. And so we are at Blockchain Zoo, we’ve worked to try to generalize between the different options that are available to come up with what we think is the best
compromise across all situations. We’ve developed a new consensus algorithm
that we call “Proof of Participation”. In this algorithm, we maintain a federation of nodes, which gains a lot of the benefits of the federated consensus strategy. But rather than us selecting which participants are allowed into the network, we use permissionless set of rules to admit new nodes into the network, and we take measurements of whether the nodes are
participating with each other in the network well enough in order decide
who to kick out of the federation automatically. So, we gain the security of a large number of private keys that would have to be compromised to secure the blockchain, we reduce our dependence on the stake of the participants, and we are able to better distribute the rewards, the new coins created by the blockchain to all the participants.

Author:

Leave a Reply

Your email address will not be published. Required fields are marked *