There are different types of consensus algorithms out there, each one of which having its very own advantages and drawbacks.
All of the modern consensus mechanisms could be generally divided in two different types:
- The first type of algorithms requires the identification of all the participating system nodes. Algorithms of the kind are generally referred to as Byzantine Fault Tolerance (BFT). However, Proof of Authority (PoA) algorithms, could also be attributed to this particular group.
- The second type of algorithms doesn’t require the identification of some or of all the participating system nodes. Most notably, these are the algorithms used of the blockchain’s first and foremost Bitcoin — the Proof of Work (PoW) consensus. Another popular one is the Proof of Stake (PoS) and the DPoS (Delegated Proof of Stake).
Why we decided to develop the Resonance:
We’ve started working on our consensus algorithm Resonance in summer 2017. Back then
we were exploring consensus algorithms of the majority of blockchains, but we weren’t
There were a few reasons for this:
- 1. Most of the existing protocols need to have two-thirds of the nodes to work properly. So if you have 100 nodes in your network, and 34 of them were occupied by attackers, your system would crash. With the Resonance protocol, you can have only 50% + 1 node working (roughly one half) in order for the system to operate properly.
- Lacking User Experience. Registration time for Ethereum is about 10 sec, Bitcoin takes about 10 mins, Stellar — 2–5 sec, Ripple — about 3 sec. Looking ahead, with the Resonance protocol transaction registration time is less than 1 second.
- To develop a better protocol for a network with sharding.
Being fairly specific and key to the proper performance of the system, we’re going to take
an in-depth look at the Resonance Protocol — the project’s underpinning foundation.
The Resonance Consensus
In order to make things easier to digest, allow us to provide a brief yet easy to understand
explanation of what a consensus actually means in the field of blockchain technologies.
This is basically an algorithm for making decisions in systems which are decentralized.
In other words — the consensus algorithm governs the way the network will further
The Power team took a characteristic approach, developing the Resonance Consensus —
a solution which handles the problem of trust nodes in the network.
One of the issues that we face when trying to explain what type of consensus algorithm
our Resonance protocol is that classification is still in the process of formation. The
Resonance is a BFT-like consensus. It’s an algorithm designed for end-to-end state
coordination of the system which is comprised of distributed notes.
The consensus algorithm is applied in order to match the newly found system states with
the maximum possible number of nodes at each round. The minimum number of nodes
which are required to achieve an entirely coordinated state of the system in each round is
50% + 1 node coordinated in this particular state.
In other words, as long as the system has 50% + 1 node coordinated in the system in a
certain state, the system is going to function properly.
It’s noteworthy that the Resonance Consensus, unlike generalized ones that the majority
of the projects run by, has been developed with the use within The Power platform in
mind. The platform itself attempts to solve blockchain’s scalability issues through
Thanks to the implementation of BFT principles, the platform will function uninterruptedly
even in the event of refusal or hostile actions among the nodes, as long as the ratio of
responsible participants in the shard is higher than 50% plus 1 node.
As such, the Resonance Consensus of The Power allows for the following features:
- High integration with all the features and characteristics of the platform with sharding.
- All participants in the process of block creation are rewarded.
- Censorship resistance. There is only one node selected as a block generator almost in all other protocols. It individually selects transactions that need to be inserted or not inserted. For instance, Bitcoin has only about 8 pools collecting blocks. With the Resonance the block is created by all nodes, users can send transactions on any/all node(s). If the attacker has less than 50% of all nodes, he cannot censor the block.
- All the nodes are constantly synchronized with each other for all the steps of the algorithm to be started and ended simultaneously. To do this, the nodes transact additional synchronizing interactions.
- The system clients can send their transactions (requests for changes to the system) to any node. The nodes jointly form the common sequence of transactions at each round.
- Predictably low client transaction registration time;
- The clients can send requests on the transactions implementation directly to the node and receive an answer about the result. The transaction processing is time-limited, so the client can predict the time of registration of its transactions.
- The small number of steps in the basic algorithm and the correction algorithm helps to reduce the time of transaction registration by the system. We are going to achieve a registration time of 1 second or less.
- Simple check of the validity of the block for the participants of other chains (shards) and the client;
- Checking the block sent to the client node or node from another chain just have to make sure that all of the signatures of this block are valid and really belong to the nodes which generate this block in the system. To do this, we need only a valid knowledge about the nodes and their cryptographic keys that compose a decentralized system.
- System efficiency if nodes are failed
The attention should be placed on the important technological features of the
- Algorithm is demanding for the network quality for all participants, more demanding than that of analogues.
- The high efficiency of the algorithm at a small number of nodes, since it designed for the network with sharding.
Table of Comparison
* communication channels have become fast, nodes work more reliably and require fewer stages to reach consensus
** pBFT — asynchronous kind of consensus developed in 1999 for unstable internet connections and does not provide instant transactions, though transactions are processed fast enough