How Will Ethereum Scale?
Though we have been talking a lot about the benefits of the Ethereum blockchain and how it can completely transform certain industries, one problem which can hinder its growth significantly is scaling.
Ethereum is a decentralized app platform for developers to make apps that run on the Ethereum Blockchain. Developers have always known that the problem of scalability will haunt them in the times to come. This expectation quickly turned into reality towards the end of 2017 when a decentralized game called CryptoKitties caught so much attention that it slowed down the Ethereum network.
Recently, Etheremon has also shifted from Ethereum to Ziliqa to provide faster transactions and low transactions fee to its users.
Moreover, if Ethereum wants wide adoption and touches the lives of millions of people, it has to scale from 13-15 TPS to around 100,000 TPS.
The reason scalability is so hard for Blockchain is that all transactions on the network are to be verified by various nodes through consensus algorithms like Proof-of-Work. The size of each and every block is fixed which means that to store a higher number of transactions inside each block the block size has to be increased.
Increasing the block size is not a sustainable solution since a larger block would require more computational resources for mining which will restrict mining for only large ‘full’ nodes that can afford such computational powers. If the number of nodes on the network decrease due to this reason, the network becomes less decentralized and less secure.
There are several solutions for scaling and we can go through them one-by-one:
Sharding
Sharding is essentially a way to parallelize the computation and validation of blocks in a blockchain.
In this system, nodes will not store the complete state and transactions of the whole Ethereum blockchain but only a subset of it. Thus, the blockchain is divided into “shards” which is a smaller network of nodes that validate transactions happening within their shard.
It is similar to a technique related to “database sharding” wherein several pieces of a database are put on different servers.
Each shard contains “collators” that put together information about that shard known as “collation.” A block containing various collations from the network is then added to the blockchain.
Hence, by validating transactions simultaneously instead of sequentially, the blockchain becomes more scalable.
Sharding may appear to solve the problem of scalability, but it introduces the problem of decreased security of the network.
By dividing the blockchain into shards, the nodes of a particular shard may be able to join hands to gain 51% of the consensus power, thus, giving them the ability to forge fraudulent transactions.
The reliance of shards on other shards also poses a problem and makes it difficult to get information from other nodes present in a different shard.
Raiden
Raiden, unlike sharding, is an off-chain solution to solve the problem of scalability.
In this system, two nodes can open a payment channel between them and carry on transactions without broadcasting them onto the main blockchain. These transactions or “messages” are signed by both the nodes to ensure immutability
Raiden is particularly useful to enable nodes to spend Ethereum as a part of daily transactions such as getting a coffee or buying grocery items. This is feasible with Raiden as the gas prices are significantly lower.
Once one of the nodes in the payment channel decides to close the channel, the final result is broadcasted on the main blockchain as one single transaction. Thus, if you bought $100 worth of coffee in 10 visits to the shop, you can upload it is one transaction of $100 rather than 10 transactions of $10 each.
Plasma
Plasma is again an “off-chain” approach to solve the problem of scalability but it is quite different from the Raiden network as it facilitates the creation of ‘child’ blockchains which are attached to the main blockchain. These child blockchains can further be divided into child chains and so on. The more children are there in the network, the more will be the speed of Ethereum to handle transactions.
In simple words, it is a hierarchical structure created by smart contracts which enable various side-chains to function simultaneously and transfer information to the main blockchain only periodically.
Complex transactions can thus be performed in the child chains so that the main chain is not required to be involved to validate each and every transaction.
This was a brief description of the various solutions which have been proposed in order to scale Ethereum and trigger a wide scale adoption and allow developers to make more robust applications.
Stay informed with daily updates from Blockchain Magazine on Google News. Click here to follow us and mark as favorite: [Blockchain Magazine on Google News].
editor's pick
Get Blockchain Insights In Inbox
Stay ahead of the curve with expert analysis and market updates.
latest from tech
Disclaimer: Any post shared by a third-party agency are sponsored and Blockchain Magazine has no views on any such posts. The views and opinions expressed in this post are those of the clients and do not necessarily reflect the official policy or position of Blockchain Magazine. The information provided in this post is for informational purposes only and should not be considered as financial, investment, or professional advice. Blockchain Magazine does not endorse or promote any specific products, services, or companies mentioned in this posts. Readers are encouraged to conduct their own research and consult with a qualified professional before making any financial decisions.