`

Agreeing on Consensus

Consensus is an interesting problem for decentralized networks such as cryptocurrencies. In principal, anyone can join a network so the assumptions necessary to trust a decentralized network to make consensus involves economics, game theory and computer science principles that have rarely worked in concert. In closed systems, like the one we aspire to build, there are some sound approaches to consensus that have been studied and tested for decades. Though they are by no means trivial to build, it’s easier to have confidence in some approaches.
 
Recently, a whitepaper showed up on my Twitter feed. The title, “Consensus – Immutable agreement for the Internet of value”, seemed ambitious and I was eager to read it. By the second page, however, I was disappointed to see the word “consensus” conflated with other activities on a blockchain. It’s probably overdue, but I think it’s about time that we come to agreement on how to use the word consensus.
 
I propose a definition that consensus is the mechanism by which the participants of a network arrive at a mutual agreement over a given state of the world. Unlike what the paper asserts, is not a “method of authenticating and validating a value or transaction on a Blockchain … without the need to trust or rely on a central authority.” In fact, a consensus algorithm can be divorced from the rest of a blockchain and substituted with other methods to maintain the integrity of the ledger. The consensus mechanism can exist independently of a given transaction’s validity. Indeed, those “layers” on a blockchain are orthogonal. Transaction protocols dictate the validity of a ledger’s entries while consensus protocols ensure that the participants in the network are on the same page as to what happened. Once consensus is established, it’s easy for participants to filter out or ignore invalid transactions.
 
Confusing the role of consensus and transaction validation is completely understandable for a novice blockchain enthusiast. However, it is completely unacceptable for a professional “blockchain consultant” to conflate the two. If someone takes it upon themselves to write an explanatory text on the nature of this technology, I would expect some due diligence that would easily dispel the notion that consensus and transaction algorithms are one in the same.