What consensus mechanism is used on Orbs?

This question was taken from here


Orbs consensus is built on Proof-of-Stake with a custom algorithm called Helix. Here’s a snippet from Orbs technical documentation describing Helix with some links for further reading at the end.

btw, Helix implementation is available on Github here, take a look at the implementation to see exactly which features of the algorithm are currently implemented

the snippet:

Helix Consensus Algorithm (RPoS)

Helix is a Byzantine fault-tolerant consensus protocol based on PBFT that provides the security and decentralization of a large set of validators (eg. 1000 nodes) with the speed and efficiency of a smaller set (eg. 22 nodes).

A key element in Helix is a source of common and verifiable randomness which is used in helping obtain both scalability and fairness (Randomized Proof-of-Stake).

RANDOMIZED COMMITTEES FOR SPEED

A fixed-sized committee of nodes (eg. 22 of 1000) is randomly selected per block for its consensus. The committee selection is based on a verifiable random function generated from a BLS unique threshold signature. Only after a block is committed, the threshold signature can be calculated providing the random seed for the next block committee, guaranteeing that selection can’t be manipulated or predicted in advance.

RESISTANCE TO CENSORSHIP AND FRONTRUNNING

Transactions can be encrypted by end-users before transmission, ensuring that the ordering of transactions by nodes is over opaque data and thus fair. The transactions can only be decrypted for execution after consensus over order by relying on threshold encryption. The protocol also enforces a fair mixture of transactions propagated by different gateways. These practices prevent manipulations by ordering nodes such as censorship and frontrunning.

NODE REPUTATION SYSTEM

In order to rapidly identify faulty nodes, balance resources and incentivize nodes to behave according to the protocol, the algorithm can maintain a decentralized reputation system where every node is scored by its peers. Reputation affects a node’s chance of being included in committees and assists in economic incentivization such as payment of fees to operators.

FURTHER READING

1 Like