Scalability is a big issue at the fundamental core of blockchain technology. How can millions of people use bitcoin to transfer funds between themselves if there is a limit on the number of transactions the network can process at any given time? The answer is they can, but true adoption of this payment system will never occur if the fees and processing time for these transactions is too high. This article will discuss some of the proposed scaling solutions for blockchain.
First Layer Solutions
First layer solutions propose to change a fundamental aspect of the cryptocurrency. For example, a first layer solution for bitcoin would be to increase the block size from 1MB to 10 MB or by reducing the block creation time from 10 minutes to 5 minutes. A first layer solution requires a hard-fork of the cryptocurrency which means the creation of a new cryptocurrency altogether. Bitcoin Cash hard-forked from Bitcoin after some developers wanted to increase the block size from 1MB to 8MB. For Ethereum, a proposed solution has been sharding which means breaking a blockchain up into manageable parts. The shards are responsible for different groups of transactions, which increases the throughput of the network. This solution is expected to be put in production in 2020 after the Ethereum network moves to a Proof-of-Stake (PoS) consensus algorithm.
Second-Layer Solutions (Off-Chain)
Second-Layer solutions involve adding a new protocol on top of the already existing one. Transactions are off-loaded onto a side-chain to relieve congestion on the main blockchain. The lightning network for Bitcoin is an example. The lightning network will instantiate smart-contracts on top of the Bitcoin protocol to allow for the creation of private off-chain blockchains that help facilitate the processes of the network. Two proposed second-layer solutions for Ethereum are the Raiden Network and Plasma. The Raiden Network allows users to create State Channels which broadcast information to the rest of the network. Plasma utilizes child chains that run off the main blockchain to process transactions and report the consensus back to the main chain. Each child chain can have its own set of rules and processes which allows them to target specific types of transactions.
Scalable Consensus Mechanism
Another proposed scalability solution is to change the consensus algorithm of the protocol. Consensus algorithms like PoS or the Byzantine Fault Tolerance (BFT) allow for a higher throughput of transactions per second and overall greater efficiency in the network. Hyperledger is an example of a project that utilizes BFT.
Currently, blockchain only supports two out of these three properties — scalability, security, or decentralization. By implementing the proposed solutions above, it will hopefully reach a point where scalability is solved and the focus of the blockchain can be attaining true decentralization for its network.