A consensus algorithm is a mechanism which allows the participants (users or machines) to cooperate in a distributed setting. It is necessary to ensure that all agents within the system agree on the same single source of truth even if some of them fail. A consensus protocol makes it possible to verify and validate any transaction and reach a common agreement. Consensus algorithms help to establish trust between peers and make sure any new ...