AuRa with POSDAO Consensus

Current xDai Consensus model: POSDAO with Authority Round Consensus

Consensus refers to the agreement process between nodes in a network. The nodes must agree on which transactions to include in the next block on the chain before these transactions are committed.

There are 2 aspects to the process - the actual consensus mechanism to add transactions to blocks, and sybil protection, which prevents malicious actors.

xDai currently uses Parity's AuRa (Authority Round) proof-of-authority consensus model to append blocks to the xDai chain. In this model, selected validators (selected through the POSDAO dPOS process) take turns signing blocks. A signed block is broadcast to all validators, and if the majority agree it is valid, it is added to the chain. A new block is added every 5 seconds, regardless of whether any transactions occurred during that time. Note: POSDAO offers a pluggable consensus feature, so different or additional consensus processes may be added in the future.

xDai uses delegated Proof of Stake to provide sybil protection. Validators and delegators must add STAKE to the protocol. If the nodes participate as expected, they receive additional STAKE rewards. If they engage in malicious behavior (like not revealing random numbers) the validator is banned and their STAKE (and delegators STAKE) is frozen. These behavioral rewards act as incentives to promote an honest group of validators participating in consensus. Learn more in the Whitepaper.

View current xDai validator pools in the BlockScout Staking Application.

Finality delay A minimum of n_v/2 + 1 validations being required, with n_v the number of validators. At least 2(n_v/2 + 1) = n_v + 2 message round trips are therefore necessary before a block is finalized by all validators. In the worst case, after exactly n_v validations, the delay will instead be of 2n_v + 2. For xDai running with 19 validators, this is the equivalent of 40 blocks.

Additional Information on AuRa: