English module on
Blockchain Architecture
Powered by Zft
Powered by likha

Blockchain Trilemma

Co-written by Raphael Bustamante, James de Jesus, and Gabriel Paningbatan
Key Takeaways
  • Just as in life, where we often juggle work, social life, and sleep, the blockchain faces its own version of trade-offs known as the Blockchain Trilemma.
  • The Blockchain Trilemma posits that a blockchain can only excel in two out of the three criteria aspects at any time: security, scalability, and decentralization.
  • Several solutions have been proposed to help solve the trilemma such as changing consensus mechanisms, sharding, or using Directed Acyclic Graphs (DAGs).

No matter how great the idea, reality, and execution of blockchain technology may be, it is inevitable to have some limitations. Just as in life, where we often juggle work, social life, and sleep, the blockchain faces its own version of trade-offs known as the Blockchain Trilemma.


Coined by Ethereum founder Vitalik Buterin, the Blockchain Trilemma posits that a blockchain can only excel in two out of the three criteria aspects at any time: security, scalability, and decentralization. Think of it similarly to the work paradox where in real life, you can only choose two among work, a satisfying social life, and restful sleep. Achieving all three is close to impossible; you can either enjoy two to the fullest, or all three but have unsatisfying results.

In the same manner, it is impossible to maximize a blockchain’s potential with all the three criteria aspects. For example, if a blockchain is both decentralized and secure, it would inevitably have to sacrifice some scalability in order to intensify the other two, since a fully decentralized and fully secure blockchain would be too slow and inefficient to be scalable.

Let’s dive into each of these criteria to understand the challenges they present.

Security

Security refers to the blockchain’s ability to operate reliably while fending off threats from  actors who wish to do harm. A blockchain’s security is essentially its immunity against hackers, bugs, and other external threats. The more nodes the blockchain has, the more secure it tends to be. 

This is because the number of nodes affects the amount of work and effort a hacker exerts to effectively control over 50% of the blockchain. With fewer nodes, it is easier to achieve the required hashing power for a 51% attack allowing bad actors to manipulate transactions in a network. 

While security remains a paramount concern in blockchain, it’s vital to consider how networks can effectively scale to handle increased demand and ensure their long-term viability. And that’s what we are discussing next.  

Scalability

Scalability is the blockchain’s capability to handle a high number of transactions effectively and quickly. It helps the blockchain systems to compete with traditional payment systems like Visa and Mastercard. These systems are scalable enough to handle a high number of transactions per second. 

A highly scalable blockchain would be able to handle a higher number of transactions than a less scalable one as it is the blockchain scalability that ensures its continued function with increased adoption. 

Unlike with security, the number of nodes on a blockchain is actually inversely correlated to its scalability. More nodes means that every transaction must be verified by a larger number of nodes before reaching consensus, thereby slowing down the number of transactions per second (TPS). To enhance scalability, block space can be maximized to improve throughput.

Accommodating growing demands also highlight the core principles of trust and transparency in the blockchain technology, which fall under the concept of decentralization.

Decentralization

The absence of a central point of control in a blockchain ecosystem is referred to as decentralization. Unlike traditional systems where decisions are made by a select few, blockchain decentralization empowers every participant to make decisions autonomously. Most companies and systems are typically controlled by one or a select few people in authority. 

Think about governments or banks where the distribution of funds and/or decision for censorship is decided by either the president, the CEO, the congress, or a board of directors. Despite not objectively knowing if the decisions made hold everyone's best interests in mind, or if they are for the benefit of all those involved, we have no choice but to follow them because they are the ones with deciding power.

In a world where centralized entities often hold significant power, blockchain’s decentralization empowers individuals and fosters trust in a network where decisions are driven collectively rather than dictated by a central figure. This removes human bias and the risk of authority abuse. And just like security, the level of decentralization is dependent on the number of nodes on a blockchain. The more nodes a blockchain has, the more decentralized it is.

Cracking the Blockchain Trilemma

To truly grasp the concept of the blockchain trilemma, let’s break down each piece of the puzzle. 

Picture this: You want to increase security and decentralization in a blockchain. One way to do that is by increasing the number of nodes. But here’s the catch: as you add more nodes, you could inadvertently slow down the blockchain. Think of it as trying to stuff too many people in an elevator – it might get stuck! In our blockchain world, this slowdown is called decreased network throughput.

On the other hand, if you trim down the number of nodes to increase scalability and transactions enacted per second may leave the blockchain far more vulnerable to 51% attacks or even leave it to be controlled by only a handful of entities. 

Now, let’s see how this trilemma plays out in real life. Take Bitcoin, for instance. It is highly secured and decentralized as a result of the high number of nodes and validators, but it struggles with scalability: transactions can take longer, and fees can get higher. We have proof-of-stake blockchains that can handle more transactions-per-second (TPS) but may not be as decentralized by nature of their consensus mechanism, and security depends on the number of nodes.  

Good news is, we’re not stuck in this trilemma forever. Several solutions have been proposed to help solve the scaling trilemma. They’re exploring new ways for nodes to verify transactions, splitting a blockchain’s ledger into multiple parts, or even considering an alternative decentralized ledger technology beyond traditional blockchain.

  1. Consensus Mechanism

One way to increase transactions per second is to switch from Proof-of-Work to  more efficient consensus mechanisms. Instead of having miners compete to solve the hash for each block, Proof-of-Stake and Delegated Proof-of-Stake consensus mechanisms randomly assign validators for each block. This change can reduce the time and energy spent on computing, speeding up block validation and reducing energy consumption. 

Some centralized blockchains even use Proof-of-Authority, which relies on a few trusted nodes to do the validation. Unlike Proof-of-Work, validators are chosen automatically instead of having to compete with each other. This increases the transaction speed.

  1. Sharding

Think of sharding as teamwork. It breaks the blockchain into smaller parts called “shards,” each with its own committee of nodes. 

Each shard committee contains the shard I.D., the initial state of the blockchain, the state after the transaction, a receipt of the transaction, and randomly chosen validators. These committees work in parallel, processing multiple blocks simultaneously.

Instead of having to wait for all the nodes in the network to validate new blocks, shard committees can independently process blocks and then broadcast the results to the rest of the blockchain. The complete transaction history of each shard stays within the shard and does not need to be broadcasted to the entire network. Instead, the transaction receipts are shared among nodes so they follow the same distributed ledger.

Sharding requires a parallel chain to manage the shards, accept data from their ledgers, assign validators, and allocate rewards. In Ethereum, this is known as the Beacon Chain; in Polkadot, it’s called the Relay Chain.

This method is like dividing a company into committees. With the product design committee devoting its time, energy, and resources to one aspect of the project, the advertising, sales, and distribution committees will be free to work on their own tasks under the supervision and leadership of the executive team. This makes the process smoother, faster, and more efficient.

Sharding is especially useful on congested blockchain, either because of too many users making transactions or because the blockchain can only process limited transactions per second. It saves computational power. Remember that nodes also need to store copies of previous blocks and not just add them. Implementing sharding prevents nodes from having to store all of this data, instead only those that are needed and relevant to the shard group. 

However, sharding comes with security challenges. If a particular shard is attacked by malicious actors, there is a possibility that all the data stored within the shard could be damaged. When this happens, all the data from the shard that should have been stored on the blockchain, such as crypto transactions from one wallet to another, will be permanently lost. Even worse, the hackers could add fake transactions to replace the missing data, which can lead to millions of dollars worth of funds gone missing.

To help prevent this scenario, validators are randomly assigned and reassigned between shards, thereby interfering and complicating hackers’ abilities to pinpoint how and where to launch their next attack.

  1. Directed Acyclic Graph (DAG)

Aside from blockchain, Directed Acyclic Graph (DAG) is another decentralized ledger technology (DLT) that solves the problem of insufficient transactions per second (TPS) and high gas fees. Like the blockchain, the DAG operates as a network of multiple nodes. However, instead of grouping all the transactions into linear blocks and validating them at a time, DAG processes transactions individually, recording and confirming them one layer after another. Here’s how it works:

  • A node confirms two old transactions and records a new, unconfirmed transaction.
  • The next code confirms both these new unconfirmed transactions, and it also records another new one without confirming it yet. 
  • Repeat previous steps, confirming old transactions and adding new ones without confirmation.

Since no blocks are created, there is no need for miners (in a Proof-of-Work system) or validators (in a Proof-of-Stake system) to compute a hash for each block, making it cheaper and energy-efficient. The main drawback to this scaling solution, however, is it can sacrifice decentralization to allow nodes to communicate to each other and to operate efficiently. 

These are just some of the possible known solutions to solving the blockchain trilemma. It’s still a work in progress and solving it will hopefully lead us to better blockchain solutions and applications.

ZFT is home for the new gen of Wealth Builders.

Learn how to trade with ZFT →

Think you've mastered "

Blockchain Trilemma

" now?

Take the quiz!