The Blockchain Trilemma: An Inevitable Trade-Off?
DSRV Research publishes in-depth blockchain-related content with the aim of safely onboarding more people to Web3.
Disclaimer: This article is for informational purposes only and should not be taken as financial advice. No information contained within this article is a recommendation to invest in any of the assets mentioned. All investors are advised to thoroughly conduct their own research before making any financial decisions.
The Trilemma: Why blockchain adoption might still be difficult
Blockchain’s impact
The recent Russian invasion of Ukraine shocked the world. In response, the US, the EU, and the UK excluded key Russian banks from SWIFT to prevent Russia from paying for imported and exported goods with US dollars and euros. On top of that, they froze the government’s foreign currency reserves. As the US weaponized the global dollar financial system against Russia, cryptocurrency unexpectedly served as a shining beacon amidst the war.
In times of war, cryptocurrency has been proven to act as a ‘People’s Money,’ instead of as a currency controlled by a central authority. Ukraine became the first country to accept cryptocurrency donations and was able to fundraise around $55M from supporters worldwide. For Ukrainian citizens, cryptocurrency became a means of protecting their assets from the country’s currency collapse. Similarly in Canada, cryptocurrency became the only source of financial means for anti-vaxxers whose accounts were seized by the government.
Blockchain and cryptocurrency are based on the cypherpunk manifesto and its ultimate goal: cyberspace free from a central authority’s regulations and intervention. Cryptocurrency proved its value and delivered on that philosophy — freedom from censorship — in times of war.
Then is blockchain a perfect system?
If its value has been proven, why are we still not using cryptocurrency as a nationwide currency? While there are many limitations to adopting cryptocurrency, such as policy issues, the largest obstacle is scalability and speed.
In the case of Bitcoin, while it can process 3–7 transactions per second, it takes up to 10 minutes to generate a new block containing those transactions, and up to a whole hour to verify that there aren’t any risks of transactions being canceled. Visa, on the other hand, can process 65,000 transactions per second. Imagine waiting an hour at Walmart to buy a chocolate bar.
Solving this problem of scalability is not easy, however. While there are chains other than Bitcoin and Ethereum that aim for faster transaction processes, they too have to contend with the Scalability Trilemma. Let’s have a closer look at what that is.
Blockchain’s Scalability Trilemma
The term Scalability Trilemma was first coined by the founder of Ethereum, Vitalik Buterin. In essence, he explains that there will always be a trade-off when it comes to three fundamental properties: decentralization, security, and scalability. So a chain that achieves both decentralization and security must inevitably give up some of its scalability. This term became widely accepted as it captured some of blockchain’s core issues. But what is the meaning of each of these properties: decentralization, security, and scalability?
Decentralization: The chain can run without any trust dependencies on a small group of large centralized actors. This is typically interpreted to mean that there should not be any trust (or even honest-majority assumption) of a set of nodes that you cannot join with just a consumer laptop.
Security: The chain can resist a large percentage of participating nodes trying to attack it (ideally 50%; anything above 25% is fine, 5% is definitely not fine).
Scalability: The chain can process more transactions than a single regular node (think: a consumer laptop) can verify.
Those unfamiliar with the trilemma may have a hard time understanding these terms. To understand them better, we first need to know how a blockchain is structured.
❓ Terminology: Blockchain’s Structure
A blockchain is a system in which multiple interconnected computers within a decentralized P2P (Peer-to-Peer) network maintain the same ledger. A P2P network is a network where a group of computers with equal permissions and responsibilities are linked together. These computers within the P2P network are called ‘nodes.’ [3]
Every transaction that occurs on the blockchain is recorded on the chain. These transactions are bundled together into blocks, which are then linked together to form a chain. Nodes use a consensus algorithm to agree upon the order of the blocks, which allows them to maintain a single, valid chain.
We’re all set to figure out what Vitalik means by the trilemma. Let’s move on to unwrap more of the key terms.
Decentralization
The chain can run without any trust dependencies on a small group of large centralized actors. This is typically interpreted to mean that there should not be any trust (or even honest-majority assumption) of a set of nodes that you cannot join with just a consumer laptop.
Now that we’ve taken a look at blockchain’s structure, we can get a better grasp of what Vitalik means by decentralization. In a nutshell, P2P network nodes in a blockchain aim to establish trust in a trustless environment, without relying on a central authority like a bank.
As the number of nodes increases within a network and the network becomes more decentralized, the reliance on a ‘centralized entity’ is also further mitigated. In other words, the more nodes in the network, the safer the transaction validation and the more solid the consensus between nodes. If there are fewer nodes, a certain group could dominate the network by choosing not to validate a particular transaction, or by controlling network updates. This would eventually threaten the overall trust in the blockchain.
On top of that, more nodes lead to a lower probability of the network crashing even if some nodes fail. Hence why properly diversified nodes should be able to participate freely without high-end equipment or needing permission from a central authority.
But what if there’s a concentration of nodes in one region? If the internet connection is lost, the data center collapses, or operations are halted due to regional regulations, the network will stop running. Let’s imagine another scenario. What if all the nodes rely on one programming language or a single client, and that software has a bug? Every single node will be infected with the same bug, leading to a network crash as well. Decentralization therefore not only refers to how geographically dispersed the nodes are but also how different their client diversity is.
Security
The chain can resist a large percentage of participating nodes trying to attack it (ideally 50%; anything above 25% is fine, 5% is definitely not fine).
We’ve seen that decentralization is an essential property of a blockchain. And yet, this doesn’t mean that we can just infinitely increase the number of nodes in the network for better decentralization. Note that there can also always be malicious nodes, as we don’t know for sure which nodes are participating in the network. These malicious nodes can send incorrect messages to other nodes or validate an invalid transaction in order to maximize their profit.
To prevent this, blockchains use a ‘consensus algorithm’ to filter out malfunctioning or malicious nodes and secure the chain. This algorithm ensures that nodes are financially incentivized to preserve and contribute to network security. How does it achieve this? By rewarding nodes when they behave properly, giving penalties when they don’t, and disincentivizing attackers by raising the cost needed to attack the network. This ultimately makes it more profitable for nodes to participate honestly rather than attack.
The current consensus algorithm used for Bitcoin is PoW (Proof-of-Work), in which nodes compete with their computing power (i.e. hash power) to generate a new block. Nodes then accept the longest chain as the canonical chain. As they are incentivized by the rewards of successfully producing a new block, if an attack fails, the opportunity costs for the incentives and the energy used for mining all turn into penalties. Yet an attacker can still succeed in making their blockchain the longest by having more computational power (51%) than the rest of the network combined. In response, PoW aims to secure the network by increasing its hashing power and the costs needed to successfully conduct a 51% attack.
On the other hand, in networks using a PoS (Proof-of-Stake) consensus algorithm, the right to create a new block depends on the number of tokens one has. For a node to participate in producing a new block, it has to stake its tokens to the network as collateral. The more tokens that are staked, the higher the probability to generate a new block. If there is a malicious node, the algorithm penalizes it by slashing its staked tokens. Similar to the PoW, PoS is also vulnerable to the 51% attack when an attacker can hold more than 51% of the staked tokens. To prevent this, PoS increases its network’s market capitalization to increase the costs needed to attack the network.
Each blockchain thus has its own way of preventing attacks to maintain its security. We can now understand how blockchains use certain consensus algorithms to secure their transactions and how security is closely related to decentralization.
Scalability
The chain can process more transactions than a single regular node (think: a consumer laptop) can verify.
Scalability refers to the speed and number of transactions a blockchain can process so that more users can use the network.
In a blockchain, each node stores every single transaction that occurred on the chain. For a transaction to be processed, it first needs to be contained within a block and shared with other nodes. After all the nodes validate the block, there must be consensus on adding that block to the chain. From a larger perspective, as each node validates every transaction within a network, the number of transactions that an entire network can process is equal to the number of transactions a single node can process. In this case, as there are only so many transactions that hardware can process, blockchains run into bottlenecks at some point. Scalability aims to improve this problem.
Chains like Bitcoin or Ethereum have chosen decentralization and security over scalability, while other chains that improved their scalability sacrificed either some of their decentralization or security. Next, let’s look more closely at why one fundamental property suffers when chains prioritize the other two.
💡 One Step Further: Blockchain SpeedThe speed of a blockchain can be understood in terms of the number of transactions that can be processed per second, known as TPS (Transactions Per Second), as well as latency, which refers to the wait before a transaction is finalized. To solve the bottleneck issue, chains need to either increase TPS or decrease latency. As TPS refers to transactions within a block, a blockchain can either increase the number of transactions nodes can process *or* decrease the block time. Latency is closely related to the amount of time needed for a blockchain to reach consensus(finality). Based on the type of consensus algorithm used by a blockchain, there may be a longer waiting period after a block is produced, or conversely no waiting period at all.
- Low scalability, high decentralization and security
Chains that struggle with scalability are PoW-based blockchains like Bitcoin and Ethereum. These chains boast high degrees of decentralization as countless nodes have been joining the network and validating transactions over a long period of time. The security is also high thanks to the network’s strong hash power, and the competition between nodes to produce a block. However, PoW chains have a risk of splitting into multiple chains, called ‘forks,’ due to this competition. When this happens too frequently, hash power is wasted and establishing consensus on one valid chain becomes difficult. To prevent such a situation, PoW chains limit the quantity of transactions depending on block time and size. This in turn also limits the number of transactions that can be processed. Furthermore, transactions cannot be completely finalized given the architecture of the PoW consensus algorithm. Essentially, the more blocks are attached to a PoW chain, the lower the probability of a transaction being canceled. The chain therefore waits at least 6 blocks before lowering that probability. As it takes the Bitcoin network around 10 minutes to generate a single block, waiting for 6 blocks would take around an hour.
- Low decentralization, high scalability and security
Some representative blockchains that choose scalability over decentralization are Terra and Solana. They use consensus algorithms that reduce latency by involving only a small number of nodes, or by increasing a node’s ability to process and finalize transactions (thereby increasing TPS).
Terra nodes communicate with one another to reach consensus over a single chain. However, this process requires both a lot of time and interaction between the nodes as an unlimited number of nodes can freely participate and enter the network. Terra addresses this constraint by limiting the number of nodes involved in consensus, which increases scalability but relinquishes some decentralization. In the case of Solana, the chain requires powerful hardware that can process and store the rapidly increasing amounts of newly-produced blocks and data. This not only results in higher maintenance costs, but also increases the barrier for other nodes to join the network, therefore lessening the chain’s decentralization.
While these chains risk becoming centralized, they use the PoS algorithm to increase their native tokens’ market cap so that the cost of an attack becomes prohibitively expensive. Moreover, they implement penalties, such as slashing the stake of malicious nodes, to increase network security.
- Low security, high scalability and decentralization
Vitalik refers to chains that choose high scalability at the expense of security as belonging to the multi-chain ecosystem. Ecosystems like Polkadot and Cosmos increase their scalability by allowing multiple applications, each using their own chain to communicate with one another, to handle a great number of transactions. In these ecosystems, there is considerable decentralization as various nodes participate in various chains. And yet, these systems suffer from low security. For instance, a blockchain specific to one application takes up only a small part of the ecosystem compared to other generic blockchains. Vitalik stated that in this scenario, as the chains within the ecosystem are closely connected, the high security risk of this small-sized blockchain can also threaten other chains, thereby harming the overall security of the ecosystem.
Will we be able to overcome the Blockchain Trilemma?
So far, we’ve taken a look at the benefits and drawbacks of each combination of properties. As you might have noticed, there is no definitive rule or guide on how much a blockchain should satisfy each property. Instead, they should each be understood as a relative concept.
Let’s assume there is a chain A that only processes $10 transactions. For the users of this network, faster transactions are more important than decentralization or security. On the other hand, if chain B deals with transactions that value up to $1M, security should be a top priority. In any case, whichever property a chain gives up on, it has to bear with its pros and cons. This means that a chain with improved scalability has most certainly carefully considered the degree of decentralization and security it must maintain in order to satisfy its users.
So will we ever be able to overcome the trilemma? These days, various solutions are attempting to increase scalability without giving up on decentralization or security. For example, Layer 2 blockchains base their foundation on Ethereum’s high decentralization and security, and simultaneously try to increase their TPS by processing transactions off-chain. Another example proposed by Vitalik is Ethereum sharding: splitting nodes into smaller chunks called shards to validate transactions in parallel. (Stay tuned for future articles on Sharding, Layer 2, Side Chains, Modular Blockchains, and so on!) However, it’s hard to call them perfect solutions. If transactions are processed off-chain or through sharding, there are still issues such as data availability (how to prove the validity of the data) and system overload as the methods of processing transactions become too sophisticated.
To conclude, the Scalability Trilemma still remains a challenge that the blockchain industry must solve. And yet, as each of the properties of the trilemma exists in relation to one another, there might not even be a perfect solution. Instead, we should focus on the process of reworking the trilemma into a larger and more balanced triangle. As you will most likely continue to encounter projects that seek to address this issue, we hope this article has given you a more holistic understanding of the elements that must be considered.
Written by
Youngbin Park, DSRV Researcher (Twitter @bin0_0bin)
Reviewed by
Owen Hwang, DSRV Research Manager (Twitter @journeywith_eth)
Seokjoong Yoon, DSRV Researcher (Twitter @imlearning_eth)
Domitille Colin, Communications Manager (Twitter @domitille_marie)
Translated by
Cailyn Yong, Contribution Writer (Twitter @cailynyongyong)
Illustrations by
Heeyoung Moon, Brand Designer
💊 Key Takeaways
- Vitalik first coined the term Scalability Trilemma, which refers to the trade-off between three fundamental elements of a blockchain: decentralization, security, and scalability.
- Decentralization refers to a system that does not rely on a centralized authority. Security refers to a network that can reach consensus even with the presence of a malicious node. Scalability refers to how many transactions a blockchain can process, and how fast.
- One should understand the trilemma properties as a relative concept. There is no one best way, and there will always be pros and cons to whichever property a chain chooses to improve.
References
[1] Visa Homepage, About Visa, Visanet
[2] Why sharding is great: demystifying the technical properties by Vitalik Buterin
[3] Mastering Bitcoin, Chap6. The Bitcoin Network
[4] Ethereum docs, Client Diversity
[5] The mystery behind block time by Prabath Siriwardena
[6] On settlement finality by Vitalik Buterin