Principles of Consensus

The principles and assumptions of consensus algorithms can be more clearly understood by asking a few key questions:

  • Who can change the past, and how? (This is also known as immutability.)

  • Who can change the future, and how? (This is also known as finality.)

  • What is the cost to make such changes?

  • How decentralized is the power to make such changes?

  • Who will know if something has changed, and how will they know?

Consensus algorithms are evolving rapidly, attempting to answer these questions in increasingly innovative ways.