Blockchain Trilemma - Crypto Academy / S5W2 - Homework post for nane15
Hello dear Professors and students. It was a lovely lecture presented by Professor @nane15. I am glad to be able to provide answers to the asked questions based on my understanding and further research.
Blockchain Trilemma
When we hear the concept of Blockchain Trilemma, we see that it is made up of two words; Blockchain and Trilemma. I will start by defining these individual terms.
A blockchain refers to a type of database system, wherein data is bring kept or stored in blocks. New data is put into a new block and this block is added to the previous block using a hash. This thus forms a blockchain which in a bid to understand better, is simply a chain of blocks containing data.
We are all used to heating about dilemmas, where one has to choose between two options that are not desirable. Take away the di prefix and add tri and you get a trilemma where the choice is being made between here options. The difference here now is that with a trilemma, one has to sacrifice one option for the other two options.
So now what is the blockchain trilemma? The Blockchain Trilemma refers to the concept that suggests that there are certain three major problems faced when blockchains are being developed. These force the blockchain developers to ultimately sacrifice one of the options for the other two.
The three issues are decentralization, scalability, and security. Thus, the options developers are forced to bear with include:
- Decentralisation and scalability
- Decentralisation and security
- Scalability and security
This concept that was coined by Vitalik Buterin, makes us know that we can't have our cake and eat it. We must sacrifice one. Having all three options included successfully in the blockchain is an impossibility. But is it impossible?
What if there is a way for a blockchain to be fully decentralized, highly scalable with high security? If this can be achieved successfully, then we will not have a dilemma on our hands.
Since Bitcoin came about with its low scalability yet decentralized and secured nature, blockchain developers have been trying to create blockchains that will be decentralized, scalable, and also secured. Ethereum developers tried their best but ended up with a blockchain with limited decentralization. Then we have the Binance Smart Chain. This blockchain fails to be fully decentralized.
The Cardano blockchain has come up with a solution to this trilemma but we are yet to fully see the solution being implemented in the blockchain practically. You also have the Solana blockchain which fails to be fully decentralized.
Then when you consider the existence of things like side chains and ZK-Rollups which help most with scalability, you see that there are ways to go about solving the trilemma through second layers as well.
So I don't think the blockchain Trilemma is really a trilemma. This is because it is not completely impossible. As long as developers keep working, this trilemma would be solved one day.
A. Decentralization
Decentralization can be defined as the situation whereby the control is transferred to the users and is not held by a particular person or central entity. Thus, when you say that a blockchain is decentralized, this means that there is no single person in control.
All information of users is being controlled by the users themselves. So the more data and control that is given to the users, the more decentralized the blockchain is. But one which gives certain limitations to users is less decentralized.
B. Scalability
When we talk of scalability, we are referring to how able a blockchain is in handling many transactions within a short time. So it is a measure of how many transactions can be processed at a time on a blockchain.
For example, the Bitcoin blockchain can process only seven transactions per second and thus, is less scalable. If the number of transactions per second increases, the blockchain will not function smoothly. A blockchain like Ethereum 1.0 can process 30 transactions per second. This makes it more scalable than Bitcoin.
C. Blockchain Security
Blockchain security simply refers to the measure of how resistant a -blockchain is to attacks. So it measures just how secure a blockchain is. Blockchains by their very nature are designed to be secure due to the knowledge of cryptography used to build them.
It is thus understandable that a more decentralized blockchain will be more secured since each user has access to the data so a loss in one node will not harm it. On the other hand, a blockchain that has more of a centralized nature will be less secured.
We have seen that it is not an easy task trying to make a blockchain decentralized, scalable, and secured too, as in the process one ends up being sacrificed. But in the innovative world that we are in, developers have been looking for ways to either get through the problem or go around it. I will talk about two of such solutions below.
- First layer solutions
These solutions seek to solve the dilemma by going directly through it. It involves trying to solve the trilemma directly on the blockchain in its development protocols.
For example, the Solana blockchain claims to have solved the trilemma. This blockchain has employed the use of the Proof of History and Proof of Stake consensus protocols. It is also highly scalable, processing up to 50,000 transactions per second. Due to its consensus mechanisms, the blockchain is secure.
But since the blockchain depends on the Solana Foundation which is a single entity, arguments are put forth that it is not fully decentralized and thus, doesn't solve the trilemma. But if the blockchain becomes more decentralized, it will be able to confidently say it has solved the trilemma.
- Second layer solutions
Now another way to go around this is through second layers. That is we solve an issue on the blockchain using something else that is not the blockchain. An example of such a solution is a sidechain. Blockchains that are decentralized and secure yet not very scalable tend to adopt the use of sidechains.
Sidechains are alternative routes used when there is just so much traffic on the blockchain. They process transactions at very high speeds which makes them process so many per second. Thus, their scalability. A blockchain that uses this will be able to solve the blockchain trilemma.
Examples of blockchains that use this are:
- Bitcoin with the Liquid Network Sidechain
- Ethereum with the Polygon Sidechain
Conclusion
It is very hard for blockchain developers to be able to have full decentralization, high scalability, and high security on their blockchain. And these three issues are of high importance to blockchains. Thus, due to this trilemma, the blockchains are left wanting or lacking.
But as time is going by, more and more solutions are being developed to help tackle this trilemma of an issue, to have the best blockchain which will be best for users. But until we can get there, we have to settle for other solutions to help us solve this problem in the best way possible.