Bitcoin and related blockchain technology (Ethereum, Ripple etc) have garnered a sudden surge of interest. But what really are the core differences between these various technologies? Aren’t they all simply… blockchains? What makes them different other than their team and brand-name? One of the core aspects that make some technologies differ from others is their consensus methods.



There’s a lot to wrap your head around when trying to understand blockchain (& distributed ledger) technology. So in this post, I will attempt to keep things as simple as possible. While there are many factors that make these technologies different from each other, the most crucial factor lies in the consensus method that the technology adopts.

What Do You Mean By “Consensus Method” ?

Remember, any entity or individual can add information to an open blockchain or ledger. Hence, a bad actor can add false information into the ledger to serve his selfish purpose. Consensus Methods are adopted by blockchain technology to invalidate (or ignore) such attempts of false information.

Consensus: "Come to general agreement"

Essentially, a consensus method is employed to allow all actors in the network to come to agreement on what the true information is. This is done by the majority of the network agreeing on the information presented. (Note: This can be bypassed if a bad actor managed to achieve majority control of the network - 51% or more. More on this in another post)

​

​(EDIT: In fact with only 33% of control of the network, a bad actor can bring the network to a deadlock in the decision making process. I will explain this briefly in a future post.)

​​​​​​Types Of Consensus Methods

​ ​​​​In this section, I briefly summarise some of the popular consensus models adopted. Hopefully, I can keep it simple while still hitting the core concepts.

Proof Of Work: Used by Bitcoin - Proof of Work (PoW) is one of the most popular consensus models.

In the PoW consensus model, a participant is required to solve hard computational puzzles in order to add information to the blockchain. (Don’t worry - humans aren’t solving these problems themselves, their computers are doing all the “work”)



The puzzles are set up in a way that are “difficult to solve” but “easy to verify”. Think of it as you solving an extremely hard calculus problem, and your lazy teacher is only ticking the last step to “check” your answer. In Bitcoin, it takes – on average – 10 minutes to solve a problem and can be verified by other participants almost instantly. Solving this computational problem can consume a lot of electricity. This can get expensive. Because of this, it is very difficult/infeasible for a bad actor to achieve 51% control of the network. And without 51% control a bad actor cannot achieve consensus on false information.

Proof Of Stake: Waves , and currently being implemented by Ethereum ( Casper ) Used by – Proof of Stake (PoS) is a consensus algorithm that many of the newer blockchain’s are leaning toward. ​ ​

In PoS, participants “stake” their coins on the network in order to achieve consensus. Essentially, a participant is putting up his own coins as collateral against the event that he tries to add false information/cheat.



So while Proof Of Work disincentives bad actors because of the tremendous power/electricity that would be consumed (at their cost) – Proof of Stake disincentives bad actors by making them risk their own wealth.



Furthermore, to achieve a 51% attack, a bad actor will have to hold more than 50% of all the coins in the network. Supply & Demand will make this prohibitively expensive.



Note : There are two types of widely known POS - Delegated Proof Of Stake (dPoS) and Leasing Proof Of Stake (LPoS). dPoS allows for participants to vote for a delegate that will maintain the integrity of the system. LPoS is similar but allows for participants to lease out their coins in order to share in the rewards of verifying a block.

Tangle/DAG: Used by IOTA – Tangle is not so much a shift in consensus mechanism, but more so a shift in structure of the distributed system. ​

Tangle uses Directed Acyclic Graphs (DAG) instead of a blockchain. Unlike a blockchain, a DAG’s horizontal architecture allows for more scalability.

Tangle is IOTA’s implementation of a ‘Directed Acyclic Graph’. In tangle, the entire network are participants of the consensus model – unlike blockchains where only a certain portion of the network are participants of the verification process. It’s important to note that Proof Of Work is still used by Tangle. However, the burden is shared by the entire network.



Furthermore, PoW is only part of the consensus model in Tangle (to serve against sybil and spam attacks). Because of the structure of a DAG, a good actor in the Tangle’s consensus method will have to spend a trivial amount of computational power. But a bad actor will have to spend increasing amounts of computational power with diminishing returns.



Note: ​A Directed Acyclic Graph (DAG) is simply a non-circular graph of nodes connected to each other with a fixed direction. The non-circular aspect will ensure that following the direction of the nodes will not lead you back to the same node)

Tempo: Radix Used by – Tempo is a radical approach to achieving consensus as well as scalability while still maintaining true decentralization.

Radix is neither a blockchain or a DAG – but a unique approach to achieving consensus on a distributed ledger. Fair Warning – this may be a bit technical, but I will do the best I can to simplify the method.



Tempo uses sharding (taking partitions of the ledger) and “logical clocks” to achieve proper ordering of events that take place in the entire network. The magic-sauce lies in the usage of the logical clocks to generate temporal proofs.



A logical clock is essentially an ever-increasing integer value. This value increases each time it witnesses an event. In Tempo, participants (nodes) increment their logical clock only when they witness an event that they haven’t witnessed before. The node stores the event and it’s corresponding logical clock value.



Every transaction in Tempo is stamped with with a “temporal proof”. Please note that “Temporal Proofs” aren’t “temporary proofs” – but more so proofs that deal with “time” and “ordering”. Achieving proper ordering of events is essential to prevent bad actors from achieving malicious transactions (like double spend).



The second half of Tempo's consensus system lies in the "commitments". Commitments essentially involve propagating the information (temporal proofs etc) through out all the nodes. Essentially, the nodes "gossip" to the other nodes, and thus prevent mischief from a bad node.



I will be writing a more detailed post explaining the fundamentals of Tempo on a high level. For now, I hope this post suffices in giving you basic & high level understand of the various consensus mechanisms available today.