From the beginning, one of the main limitations that we have found in Blockchain technology when developing solutions is scalability. This concept refers to the ability to continue offering a service without compromising its functionality as the number of transactions or requests made increases.
This limitation is inherited from what is known as the blockchain technology trilemma, which is based on three fundamental pillars: security, decentralisation and scalability. This trilemma, like others, alludes to the fact that any network implementation must choose two of these three characteristics and leave one of them in the background. Therefore, by definition, public blockchain networks must be primarily secure and decentralised, so scalability is relegated to the background. In contrast, private blockchains are secure and scalable, but they are not as decentralised as public blockchains.
Ethereum, as a public blockchain network, was not going to be any less, and during all these years different events have occurred which have led to compromising its functionality. The first of these occurred at the end of 2017 when the world of ICOs (Initial Coin Offerings) was booming. These trends also coincided with the first NFTs in the history of this platform, the Cryptokitties, which came to account for 15% of the network’s traffic.
The second one, we have been experiencing it since the summer of 2020, as two ecosystems are being adopted on a massive scale: DeFI (decentralised finance) and NFTs (Non-Fungible Tokens).
These scalability issues are due to Ethereum’s current mainnet consensus algorithm, the Proof of Work. This algorithm is computationally very expensive and causes the number of transactions per second on this network to be approximately fifteen to twenty.
Every write transaction carries an associated cost called gas and this cost, paid in ether, is calculated by reference to the computational cost of the transaction.
Furthermore, the transaction can be executed faster or slower depending on the ether we want to pay per unit of gas. Therefore, when the network is very congested because of the poor scalability and we increase what we pay for gas to speed up the transaction, we increase what is known as the gas price.
Why would this be considered a problem in the business world, you may ask. The answer is simple, and it is because of the associated cost that we find when acquiring or selling a software product.
Imagine now that you want to make a service that is deployed on the public Ethereum network, how would it be monetised if it depends on the value of the ether coin and the gas to be paid for those transactions? How would we cover costs when there are peaks of transactions on the network that end up rising uncontrollably?
Last but not least, two other limitations are the energy cost of validating blocks using the PoW consensus algorithm and the disk space required to store the network blockchain today.
For this reason, more and more solutions are appearing in the ecosystem that independently or jointly try to mitigate these limitations. These can be divided into two groups.
Layer 1 solution
These types of solutions require changes to the Ethereum network protocol and are contemplated in what is known as Ethereum 2.0. Their aim is to attack the Blockchain trilemma and ensure that the network is able to enjoy the three characteristics we talked about at the beginning of the article: security, scalability and decentralisation.
To this end, on the one hand, the Ethereum community has decided to change the network’s consensus algorithm from Proof of Work (PoW) to Proof of Stake (PoS) and, on the other, to fragment the network into different subnetworks using a technique called “sharding”.
Focusing on the first case, it is important to understand the main difference between the two consensus algorithms. While PoW validates transactions by solving a computational problem, which makes it computationally very expensive, PoS uses the coins wagered by users (stake) to validate transactions, eliminating the need for computational power.
This change, in the consensus algorithm, has already begun with a network known as the “Beacon chain”, which has already been implemented and is currently being tested. The purpose of this chain is to use the Proof of Stake consensus algorithm and coordinate shards or sub-networks. This chain cannot handle accounts or smart contracts. It was planned that by 2021 this network would be merged with the Ethereum mainnet, however, everything points to a delay. In addition, this makes it easier to run a node by keeping hardware requirements low.
As for sharding, this is not a Blockchain-specific technique but is already used in conventional databases. This solution involves dividing the chain into 64 sub-networks or shards horizontally to spread the transaction load. This technique allows for higher performance as each subnetwork operates a set of transactions in parallel. In this way, a validator (equivalent to a PoW miner) no longer must process all the transactions occurring in the entire network, thus lightening the transactional load and improving scalability.
Layer 2 solutions
As for the second layer solutions, the final intention is to minimise the number of interactions with the Ethereum main chain, thus grouping transactions in a secure way.
Thus, by eliminating the number of interactions, the cost that users must pay to write to the network is considerably reduced and, on the other hand, the performance of processed transactions is increased, due to the fact that they are processed in a group and not in an individualised manner.
Two types of second layer solutions are available: channels and sidechains and rollups.
- Channels: This technique is used when two users want to carry out a series of transactions in a row in a short period of time, such as in a chess game. The objective is that, by means of a smart contract, only two transactions are made on the network: the initial one to open the channel and the final one to close it. As long as the channel is open, users can exchange as many transactions as they wish instantaneously without having to rely on blockchain validation.
- So, if we were in that chess game, you would write the start of the game to open the channel, you would interact on every single move in the channel, and at the moment of checkmate you would close the channel.
- Sidechains and rollups: A sidechain, or alternative blockchain, is an independent blockchain network that is used to enhance the features of the main blockchain. One of the most widely adopted sidechains today is the Ethereum-compatible Polygon network.
- A rollup is also a solution that allows a group of transactions to be grouped into a single transaction. In other words, transactions are carried out in a sidechain and then, once the interaction is finished, the strictly necessary data is sent in a grouped manner to the main blockchain.
In turn, rollups are classified into two types, depending on the security model to be implemented:
- ZK-Rollup: executes the calculation outside the chain and sends a proof of validity, following the Zero Knowledge Proof protocol, and sends a proof of validity to the main chain.
- Optimistic Rollup: assumes that transactions are always valid by default and the computation is only executed in case of a challenge. In other words, every transaction that is aggregated is assumed to work without committing fraud and proofs are only provided in case of fraud.
Therefore, we can determine that in the Blockchain ecosystem there is a clear trend that focuses on solving the scalability problems of public blockchain networks. One of the solutions that we are observing the most in the short term, and which are already operational, are second-layer solutions. A clear example is the adoption of Polygon as a sidechain in the DeFi ecosystem. This network in particular is experiencing more transactions than the Ethereum network.
However, regarding the first layer solutions, nowadays, these solutions are still in a period of development or testing, so it is not usual to see them applied in productive environments.
Nevertheless, we will soon be able to see these solutions already applied in the ecosystem and we will be able to determine which of them has succeeded over all the others.
Illustration 1 Photo by Max Ostrozhinskiy on Unsplash