Let's face it, as easy as it is to decode its meaning, Trilemma isn't a common word. Heck, I had no idea it existed until I started learning about the Blockchain.
In common terms, according to Wikipedia ;
A trilemma is a difficult choice from three options, each of which is (or appears) unacceptable or unfavourable. There are two logically equivalent ways in which to express a trilemma: it can be expressed as a choice among three unfavourable options, one of which must be chosen, or as a choice among three favourable options, only two of which are possible at the same time.
I know you're probably wondering how does this apply to the concept of the Blockchain. Well, we'll find out soon.
What is the Blockchain Trilemma?
The Blockchain Trilemma is a term coined by Vitalik Buterin which propses a set of three issues that developers face when building blockchain solutions which are; Decentralization, Security and Scalability.
The ideology is that Blockchain networks have to compromise on one of the three aspects in order to function effectively as it is impossible to achieve all three.
Let's take a closer look at all three core aspects of building a Blockchain that developers have to address.
One of the core ideologies of the blockchain is decentralization. Decentralization empowers the people as opposed to traditional centralized systems in which the entire ownership is controlled by a singular entity or a large corporation.
For example, In traditional finance the banks control all the money of their customers because they have been given consent to do so, they trade and make money with customers' money and give them back a paltry 0.1% - 0.2% return on their savings. Decentralized Finance (DeFi) solves the issue of traditional finance by eliminating the need for a middle-man. This means way higher return on investments as profits are shared directly to users and anyone and everyone can participate, this makes it permisionless.
Decentralized systems stay decentralized by employing various methods called a "consensus mechanism" to keep the network in check and verify transactions. Once transactions are verified by the consensus mechanism, it cannot be altered because it isn't dependent on a central entity.
However, the trade-off for complete decentralization is speed. Bitcoin which is known as the most decentralized blockchain suffers this as transactions that occur on its blockchain have to undergo multiple confirmations in order for all the computers in the network to come to an agreement or simply put, achieve consensus.
Simply put, scalability on the blockchain refers to how many transactions the blockchain can handle at any give time as its adoption grows. According to the trilemma, blockchains that perform really well even as adoption skyrockets often compromise on either security or decentralization.
Scalability is one of the ways that Blockchain technology can compete against older traditional systems in terms of transaction speed as the speeds of centralized systems are already stable and fast.
To put this in perspective, Visa processes 1,700 transactions per second while Blockchains such Solana can process up to 50,000 transactions per second while keeping transaction fees to the barest minimum. This is obviously way faster and way superior to an international credit card company but Solana has received far more criticism for being too centralized. Hopefully it can fix up its decentralization issues in the near future.
The blockchain is often seen as being secure which holds true for many cases, but does not mean that a blockchain is entirely immune to hacking. On a blockchain, the more the nodes, the greater and tighter its security.
In cases where a blockchain has too few decentralized nodes, a 51% attack is more likely than a blockchain with a lot of decentralized nodes. Taking a look at the Bitcoin blockchain, a 51% attack is theoretically possible but the impending costs far outweigh the benefits of doing so. On smaller blockchain networks such at ETC with a smaller hash rate compared to bitcoin, a 51% attack is more feasible and it has occurred for about three times consecutively in August,2020 alone.
In the quest for scalability and decentralization, most blockchains often sacrifice security which is evident in the number of high profile attacks that have happened on different blockchains on different occasions.
Solving the Blockchain Trilemma
We've gone through the core aspects of the blockchain with regards to the infamous trilemma and the one question that might come to mind right now as you read this is; How then can we solve the Blockchain Trilemma?
With that being said, many blockchains, both new and a few somewhat established ones seem to have different approaches to the way they handle the blockchain trilemma based on the structure of their network. Some blockchain networks combine more than one layer type solution to fix their scalability issues. I guess the more, the merrier.
There are two classes of solutions for the blockchain trilemma problem known as; Layer-1 solutions and Layer-2 solutions.
- Layer-1 Solutions: This refers to solutions that seek out to improve the scalability of the main blockchain network directly.
- Layer-2 Solutions: This refers to solutions that try to improve the scalability of the main blockchain network by offloading some of the work to a secondary blockchain network.
Let's take a look at some of the various methods some high profile blockchains employ to solve their scalability issues under both layers.
Sharding is the process of splitting a database horizontally to spread the load – it’s a common concept in computer science. In an Ethereum context, sharding will reduce network congestion and increase transactions per second by creating new chains, known as “shards”.
Ethereum: Consensus algorithm improvements
Like I mentioned earlier, some blockchains can employ more that one method to solve scalability issues. Ethereum uses more than these two mentioned. Ethereum runs on the Proof-of-Work Consensus algorithm to verify transactions and keep the network in check but this comes with some limitations. Because of these limitations, Ethereum had started the incremental upgrade towards switching to a Proof-of-Stake consensus algorithm as part of the long awaited ETH 2.0 upgrade.
Nervos Godwoken : Rollups
The Nervos blockchain is one of the fastest and cheapest networks out there, they solve the blockchain trilemma problem through the use of Rollups on their newly launched EVM compatible layer-2 blockchain network, Godwoken
Rollups are solutions that perform transaction execution outside the main blockchain, but post transaction data on layer 1. As transaction data is on layer 1, rollups are secured by layer 1. Inheriting the security properties of layer 1 while performing execution outside of layer 1 is a defining characteristic of rollups.
There are two type of Rollups; Optimistic and ZK Rollups. We won't get into the details of both of them. You can learn more about them here through a more visual guide.
Bitcoin Lightening Network: State Channels
The lightening network is a Layer-2 solution which sits over the main network and performs transactions on its behalf.
To use the lightening network, you have to create a channel with another user, which is a kind of smart contract to transact with them. Instead of all the information generated from the transactions that take place in the channel to be sent to the main network, only the opening and closing information is sent.
The lightening network reduces fees and increases speed for users which makes it scalable.
Solving the blockchain Trilemma just might be the key ingredient to increasing adoption of blockchain technology as users and developers don't have to worry about blockchain networks sacrificing one aspect such as security, decentralization or scalability for any of the other.