The galloping progress of the fledgling blockchain technology is out of one’s mind. This would-be revolution, which is merely 10-year-old, has been developing significantly over the past few years and branched out into new applications that can be hardly imagined before.

While we can dive deep into blockchain technologies in many ways: cryptography, identity privacy, data privacy, data storage, turing complete, incentives, throughput and latency of the system, security protection, threat model, how to deal with forks, and etc., the consensus algorithm is always the linchpin of all proper techniques, basically laying the groundwork for other features.

Consensus algorithm is a favorite research direction in distributed systems, a field of computer science in which components located on different network computers communicate and coordinate their actions. In fact, the blockchain itself can also be regarded as a type of distributed system.

This article will touch upon some of the most popular consensus algorithms to date, from classical consensus algorithms, proof-of-work (PoW), proof-of-anything (PoX), to the state-of-the-art multi-committee election.