Blockchain Byte - Week 10 Consensus.. Analogy

Blockchain Byte - Week 10 Consensus.. Analogy
Photo by Hannah Busing / Unsplash

Table of Contents

  1. Recap
  2. Consensus - Analogy
  3. Consensus - Characteristics
  4. Nodes & Incentives
  5. 51% Attack

Recap

To recap, last week we defined consensus as

a process of agreement between nodes who do not trust each other on a final state of data

Despite lack of trust, all the nodes should reflect a single source of truth which in simple terms mean all their individual ledgers should reflect the same balances & transactions.

We ended last week with the below questions :

  1. Why should nodes which do not trust each other care about coordinating with each other?
  2. What is the incentive to synchronize & maintain the Blockchain network? &
  3. What happens if a node or multiple nodes turn into bad actors to destabilize the network?

Consensus - Analogy

Let us think of a real life analogy for consensus:

white concrete building near palm tree under blue sky during daytime
Photo by Nick Fewings / Unsplash

Let us assume the apartment owners in Burj Khalifa form a Residents' Association. Most Resident Associations have regulations & guidelines on (among others) :

  1. Changes to apartment structure
  2. Restrictions on decorations
  3. Requirements for maintenance
  4. Policies regarding noise complaints
  5. Number of people who can reside in the apartment
  6. Parking rules
  7. How many pets and what kind of pets are allowed
  8. Rules and schedules for trash and recycling
  9. Renting out apartments

The individual members of the Association do not know or trust each other. Yet they agree on these rules & regulations through consensus. Why?

In other words - Why should individual owners in a Residents' Association collectively work together to maintain the whole building? The answer is straight forward - they get to live in well maintained apartments. A well maintained building has good reputation in the market which impacts the market value and rental appreciation.

Consensus - Characteristics

So a consensus mechanism should have the following characteristics (Source: wikipedia):

  1. Collaborative - All the participants should work together to produce an outcome that puts the best interest of the group first.
  2. Cooperative - Participants should work as a team and co-operate with each other to produce the desired outcome
  3. Egalitarian - No one participant is more important than the others. One person's vote can't be more important than the others.
  4. Inclusive - No one should be excluded from the decision making process. As many stakeholders as possible should be included and involved.
  5. Participatory - The consensus process should actively solicit the input & participation of all decision makers.

So, like an owners' association where individual members work together to maintain the whole building, nodes on a blockchain co-ordinate with each other to maintain the whole Blockchain network.

The objective of a network can be anything from payments (e.g., Ripple) to Decentralized Finance or DeFi (e.g., Aave) or even decentralized VPN (e.g., Sentinel).

What do nodes get in return to maintain a blockchain? Before we answer that, let us briefly revisit the function of a node in the Blockchain network.

Nodes & Incentives

We briefly described a node as one of the computers connected to the Blockchain network. When a transaction is initiated (could be a transfer of a crypto token from person A to B), the processing nodes within the Blockchain

a. take these transactions,

b. check their integrity and

c. record them on the ledger.

The contents of the Blockchain ledger are replicated across many geographically distributed processing nodes. These processing nodes jointly operate the Blockchain system, without the central control of any single trusted third-party or authority. Nonetheless, the blockchain system ensures that all nodes eventually achieve consensus about the integrity & shared contents of the blockchain ledger through underlying protocols.

A Blockchain system has a suite of incentive mechanisms to motivate processing nodes to participate in the community and to behave honestly, in their interests which means the protocol includes incentive mechanisms that aim to ensure the correct operation of the blockchain system including that

a. Only valid transactions are processed and included in the ledger &

b. invalid transactions are rejected.

Now, what are those incentive mechanisms? We will discuss them as we go forward.

So, the nodes get incentives out of the network for their efforts and resources expended.

This answers our first two questions on how why should nodes who do not trust each other care about coordinating with one other & incentives to maintain the network.

What happens if some of the nodes turn into bad actors?

51% Attack

Let us refer to the example of Residents' Association. If some of the members turn bad to malign the association, the majority of the members will act to ensure that these bad actors are not able to carry out their malicious intent. This is what happens in a Blockchain. There are protocols and mechanisms to ensure that these malicious actors are not able to carry out their intentions.

However, what if these actors control majority of the network? This is called a 51% attack where successful attackers gain the ability to block transactions or authorize invalid transactions in a blockchain. More on that later!!

Next week we will explore different types of Nodes.