Proposed by Vitalik Buterin, founder of Ethereum, the blockchain Trilemma is one of the key concerns when it comes to the scalability of blockchains. As a result, a lot of blockchains deploy numerous techniques to solve it. But what in god’s name is the blockchain trilemma? Why is it important to solve, and how? Well, we’ll find that out today. Let’s go!
The Blockchain Trilemma: Scalability, Decentralization, and Security
I hope that the title of this section gives you an idea of why the community calls it a trilemma and not a dilemma. Well, the blockchain trilemma simply states that out of the three core aspects of blockchain – scalability, decentralization, and security, you can achieve only two.
For example, Ethereum and Bitcoin are extremely secure and decentralized. But then, they are slow and hard to scale as we speak. This is why layer 2 solutions like the Lightning Network and Polygon exist.
On the far end of the spectrum, we have Hyperledger Fabric by IBM. It is an extremely fast and secure blockchain. But then, IBM itself controls most of its nodes, thus making it highly centralized.
So, the best blockchains that exist today try to optimize between these three aspects in the best possible manner.
But then the next obvious question is what is scalability, decentralization, and security. Let us break that down for you.
As you would know, most L1 (Layer 1) blockchains have a simple business model. They want more developers to build decentralized applications on them so that they can earn from the transaction fees.
But then, if you compare the transactions that these platforms deal with, it is most likely to put blockchains to shame. Transactions per second is the best unit of measurement of scalability. For example, Visa can process up to 24,000 transactions per second, and Bitcoin, on the other hand, can only deal with 7. The next best option, Ethereum, can manage only up to 18 transactions per second.
The primary reason behind such low speeds is the way all nodes coordinate in a blockchain. They receive and broadcast transactions, validate them using consensus rules, and then add them to the ledger. The more nodes that need to validate a transaction in a network, the longer it takes to add transactions to the ledger. As more transactions pile up, the blockchain gas fees go up exponentially, and eventually, the network chokes.
Recently, we got to know of a situation where a consultant who did a consulting gig for a company based out of the U.S. faced issues in receiving money in his bank account. They paid him on time, but he didn’t receive his money. After a lot of back and forth, they suggested that he get in touch with his bank. He called up the bank, and they told him they’d received the payment on time, but they had blocked it. For releasing the payment, he would have to write an email explaining where this money was coming from, whether it was a one-time or recurring payment, etc.
Now, he had to wait for a week for the money that he had earned with months of hard work. We understand that this might be a regulatory requirement, but then, centralization does have its share of problems.
Another problem with centralization is censorship. While we believe that the money in our bank accounts belongs to us, the banks and authorities have total control over it.
And operationally, I ended up paying 3-4% of my payment in charges to the bank.
Decentralization is the ethos with which the blockchains came into being. Bitcoin was designed in a way that no central authority exercises control over the asset.
Now what Bitcoin did for money, the likes of Ethereum want to do it for other aspects of human life like finance, the internet, etc. Instead of a central authority like Facebook having control of your data, what if you could own it? Think about it. You spend your life making sure that your personal brand is meticulous on social media. One fine day, Meta can call the shots and stop you from posting further. If an ex-US president is not immune to this phenomenon, are you?
But decentralization comes at a cost. Since all the nodes share the same data among themselves, it makes the validation process very slow. For example, if you were to pay in Bitcoin, it would take 60 minutes to confirm the transaction such that it is irreversible.
And without security, decentralization means nothing.
Security is extremely important for any digital system. When you are completely decentralized, any entity can input malicious data into your database. Centralized systems don’t face this problem as they are closed. These central authorities make sure that their data is clean and without interference.
Bitcoin tried to solve this problem by coming up with a consensus mechanism called ‘proof-of-work.’
In a proof-of-work consensus mechanism, each node must calculate a hash (a string of numbers) by deploying computational power. They can add a block in the blockchain only when this hash is calculated. And since this hash acts as an identifier to connect blocks of the blockchain with each other, it becomes very difficult for a hacker to calculate this number for all the blocks and manipulate the data.
This is, of course, an oversimplified explanation, but in essence, this makes the Bitcoin network extremely safe and secure.
Other than that, blockchains are prone to 51% attack. This happens when 51% of the nodes act maliciously to change the data in the blockchain. This is why the number of nodes is a critical metric to decide if the system is secure or not. For example, the BNB smart chain has about 20 validators only. This means it requires only 11 validators to completely wreck the blockchain.
On the other hand, Bitcoin has 10,000+ nodes.
In short, security is a fundamental requirement for a blockchain to be successful because, without it, attackers can take control of the chain, rendering it useless.
How Can the Blockchain Trilemma Be Solved?
The blockchain trilemma is one of the core problems that the industry is trying to solve currently. Different blockchains have deployed different techniques to overcome it, and here we discuss them one by one:
Sharding is the technique of breaking a database into smaller pieces and processing each one of them individually. In the context of a blockchain, this would mean having use-case-specific shards. It could take the following shape.
Say you have a Decentralized Finance transaction. It is dedicatedly done on Shard 1. Web3 transaction? Shard 2 is your destination. And while all of that is happening, these shards communicate with the main chain to record the final outcome. This takes away the load from the main chain as a lot of processing is outsourced to shards, and the main chain can take care of the finality.
This makes the main chain a lot more scalable.
2. Consensus mechanism
The main reason behind Bitcoin being extremely slow is its consensus mechanism. Each node deploys computational power and competes with other nodes to come up with a solution to a complicated mathematical problem. Once this problem is solved, the block is added to the blockchain.
Turns out that this method requires at least 6 blocks to be mined before a transaction can be called immutable. Since each block requires 10 minutes to mine, that is a total of 60 minutes of wait.
Recently Ethereum switched its consensus mechanism from proof-of-work to proof-of-stake.
In the proof-of-stake mechanism, all nodes need not compete with each other to add a block to the blockchain. Instead, the nodes lock up a stake (minimum 32ETH currently), and based on the staked amount, time since staked, etc, a node is chosen randomly. Since there is no competition, blocks are added to the blockchain relatively quickly.
3. Layer-2 solutions
Sharding and Consensus mechanisms are known as layer-1 solutions. They impact the fundamentals of the main chain to solve the trilemma. However, this can also be achieved by coming up with a parallel blockchain (called a sidechain) that can offload transactions from the main chain.
For example, Polygon offers a set of layer 2 solutions like sidechain, ZK-Rollups, Plasma, etc., that intend to make Ethereum more scalable.
A sidechain is a separate blockchain that can have its own set of rules and can interact with the main chain seamlessly to share transactional data.
If you are a blockchain developer, it is worthwhile to spend some time in figuring out the blockchain trilemma as it could be a major hindrance in the mass adoption of blockchain technology.
1. Has anyone solved the blockchain trilemma?
The blockchain trilemma is not a 100% solvable problem. The best that blockchains could do is come up with an optimized solution to balance the three facets of scalability, security, and decentralization.
In the future, we may experience gargantuan internet speed and computational power that can enable 100% of all aspects. Until then, different blockchains continue to focus more on two of the three aspects based on their objectives.
2. Does Solana solve the blockchain trilemma?
Solana has made significant progress in solving the blockchain trilemma. It has created a secure blockchain that is extremely scalable (TPS of 40,000) and decentralized.
However, it keeps going down due to different issues. For example, at the time of writing this, the Solana network was halted at least 5 times in the past year due to some or the other issue. Therefore, it is yet to establish itself as a reliable solution to the trilemma.
3. Who created the blockchain trilemma?
No one created the trilemma; it is simply a fundamentally agreed problem in the industry. Ethereum’s co-founder, Vitalik Buterin, first proposed it. Ever since, all the major blockchains have been taking steps toward solving this issue.