When someone says the word blockchain, most think of the boom and bust cycle in cryptocurrency prices, creating and destroying fortunes in a matter of days. Taking a look behind this wild price action reveals a technology which aims to disrupt the way value is exchanged between individuals and organizations, by creating a secure world database of all transactions.
In the past, networks which had to agree on the state of a database required a centralized entity. In 2009, an unknown programmer by the pseudonym Satoshi Nakamoto invented the blockchain: a method to reach decentralized consensus. For the first time, the state of a database could be agreed upon by entities who didn’t know each other. Blockchains work by having individuals compete to input new data into the database, these individuals are called miners or validators. When a user wants a miner to include new data in the database, they pay a small fee. Blocks are a collection of all the changes users want to make over a set time frame, and miners fight over the ability to input these new blocks for a reward.
A blockchain is a series of blocks full of edits made to an original database, and this blockchain is downloaded and stored by nodes. Nodes are participants that support the use of the network by downloading the blockchain allowing users to connect and make changes to the database. This specific architecture is alive and well on hundreds of blockchains, the most popular being Bitcoin. Bitcoin is a blockchain with a maximum block size of 1MB occurring every 10 minutes. Therefore users can only make 1MB of changes to the database every 10 minutes, amounting to about four transactions per second. This transaction scarcity caused problems in late 2017: more than four people wanted to transact every second and people started bidding higher and higher to get their transaction included in the latest block. This was the first occurrence of a blockchain struggling to scale.
Bitcoin: Node Decentralization or Death
The Bitcoin community refused to increase the block size above 1MB to allow more users to download the blockchain and run nodes, but this has a cost: when a user wants their transaction to be included in the block, it has to bid for a position. If there are more bids than there is space in the block, the price of this space grows. This fee bidding war came to a climax in 2017 where users were paying up to 55$ at peak times.
The Bitcoin community’s response was to either use a fledgling and experimental technology called the Lightning Network, or to rely on centralized intermediaries such as Visa and Paypal. As of 2021, a small minority of users and services have adopted the former, and cheap transfers are generally executed through centralized services who have built Bitcoin payment rails. For many, Bitcoin’s originally stated goal of being a peer-to-peer electronic cash system has become secondary to being a robust “store of value”.[3,4,5,6,7]
This resulted in many innovators moving to other blockchain ecosystems, and Bitcoin’s dominance of the total cryptocurrency market value fell from 85% to 35%. Some competing cryptocurrencies that were previously considered scams or Ponzi schemes started to threaten Bitcoin’s position at the top.
Bitcoin Cash: A Simple Solution to a Complicated Problem
One of these competitors is a fork of Bitcoin called Bitcoin Cash. A fork occurs in a blockchain when nodes disagree on the rules that determine whether a new block is acceptable or not. This splits the blockchain network in two, each maintaining a different version of their database completely isolated from the other. The Bitcoin Cash community decided to raise the maximum block size from 1MB to 8MB and then later to 32MB. This was done in retort to the rhetoric from the Bitcoin community that scaling in this manner would lead to centralization. To prove this point further the Bitcoin-Cash community even did stress tests on both the main chain and a test-net to show that full 32MB blocks don’t harm the network, and that blocks can be bigger if need be. In the past forks and spinoffs have failed to gain traction, but today Bitcoin Cash occasionally processes more transactions than Bitcoin. On top of simple transfers, Bitcoin Cash allows for greater development by individuals creating auxiliary protocols which improve both the privacy and functionality of the chain.
Welcome to Blockchain city, It’s Kind of a Mess
To discuss more technical implementations of blockchain technology, I think it would be best to introduce an analogy to aid comprehension. Think of the blockchain as the layout of a city where houses are wallets or users, and cars are transactions. As the transaction value is dependent on how many people are in the car, more valuable transactions don’t take up any more space on the blockchain than a car with more people inside of it takes up space on the road. For the simplest implementation of Blockchain City, it is best to think of all of these houses surrounding one small roundabout. As more people move into this fictional city, the magical roundabout expands to accommodate people moving into the city, but lanes are not added to the road. If too many houses are built around this roundabout, it becomes harder to maintain, as cracks and potholes appear more frequently. However, as the population grows, more people have the option to help maintain the road if they choose to do so. It isn’t possible to have an infinitely large roundabout, but theoretically, an optimal maintenance/throughput balance exists. It’s easy to imagine how in Bitcoin’s beginnings, it was easy for cars to move from house to house or transactions to move from wallet to wallet: oftentimes, there were no other cars on the road.
The Bitcoin Blockchain City
During Bitcoin’s infancy, blocks contained few transactions, so they were confirmed quickly and often for free. Over time, as the population of the city grew, more people needed to use the roundabout and it started to get congested. Bitcoin solved this problem by adding a toll to the road creating a system where only transactions above a specific value could be made. Now, the only transactions that can take place on Bitcoin are those worth substantially more than the current transaction fee, potentially pricing out billions of users.
A Fork in the Road
This debate, known as the block size war, was what caused a fork in the road leading to the creation of Bitcoin Cash, a community that chose to make the blocks gradually grow over time. Scaling in this manner may seem frivolous, but to date this has only made the blocks 32MB in maximum size. In our analogy, it’s roughly equivalent to turning a well-used dirt path into a two-lane paved road. Upkeep might be more demanding, but it is worth it for the value it brings. When the blocks are full, a node can keep up with the blockchain with a connection of less than 1MB/s. Even in rural areas, internet speeds can be around 20MB/s, and data storage on phones can be over a terabyte. This upgrade was tiny and has had no adverse effects on the decentralization of the Bitcoin Cash blockchain.
These days, Bitcoin Cash occasionally processes more transactions despite its rough start. So it is easy to conclude that people like large blocks the same way people like living in cities with no traffic. That said, I would argue that increasing block size alone is not a long term solution: in the future, blockchains might need to process thousands of times more transactions than 32MB can accommodate. Raising the block size to this limit will not be a wise scaling strategy, as it suffers many design flaws. Scaling purely off of raising block sizes is similar to a city being built around one enormous roundabout. Imagine a scenario where one-fifth of the people on this roundabout wish to spend all day going to and from a single shop, suddenly a mundane need could cause significant congestion for everyone.
The current model of scaling blockchain city has worked in the past but will not work in the future. This city needs three things to scale:
- A Hierarchical Road Network, creating localized maintenance and allowing for greater throughput. This is achieved on a blockchain through Sharding.
- A Public Transport System, such as a metro line or bus system where people going to the same place are batched into one. This is achieved on a blockchain through Layer 2 Rollups.
- Consensus on How Large Roads Should Be, not too big to be unmaintainable and not too small to be unusable. This is achieved on a blockchain by setting future block sizes based on certain parameters.
Ethereum: A Limited Analysis
Today, the vast majority of scaling solutions are being built on top of the Ethereum blockchain. Ethereum, for the purposes of this article, is simply a blockchain like any other but with more functionality. This allows for what are called decentralized applications (or dapps): applications with which users can interact with no intermediary except for the Ethereum blockchain. When Bitcoin’s market value dominance fell to 35%, it wasn’t just Bitcoin Cash that saw an uptick in usage, Ethereum was the blockchain most developers and users flocked to. Despite the fact that Ethereum raised its block size periodically, it wasn’t enough to withstand the enormous wave of adoption, and the network’s fees skyrocketed. What set the two blockchains apart was the response. Instead of the developers telling users to move to centralized services, Ethereum opened the doors to a variety of different scaling solutions. This caused a Cambrian explosion of innovation, eventually yielding the different technologies explained in this article.
The Bones of the City
Imagine for a moment that you live in a big city such as London or New York. Traffic is constant, and going from point A to point B usually takes longer than it should. Travel through the busy center is avoided for obvious reasons, especially when going to a local coffee shop or a friend’s house. Imagine how absurd it would be if you had to drive to the busy center every time you wanted to travel locally. Imagine how much traffic this would cause and how much tarmac you would have to put down in the middle of this city to handle all the traffic. This absurd design is present in every blockchain, and sharding is the solution to this problem.
The Benefits of Sharding
Sharding breaks down a blockchain into several smaller blockchains known as shards. A central “beacon” chain coordinates what is going on in the network, and several data layer shards allow for user activity to occur. Nodes on a sharded network only have to account for a chosen number of shards. This localized security model gives two benefits: people running nodes only need to maintain one shard at a minimum, allowing for a bigger blockchain overall; and people transacting on a sharded blockchain only have to handle the congestion on the shard they are using, not the overall blockchain. The former advantage is similar to the borough or council model in large metropolitan areas, and the latter advantage is the UX equivalent of avoiding the busy center.
The Blockchain Metro
When a city becomes large enough, it is wise to move traffic off the roads. Roads can only be organized so well, and all that work becomes pointless during rush hour when everyone is trying to get to the same place. The same will happen on blockchains. Every Monday morning, traders will have to pay up if they wish to use a decentralized exchange. Every customer will have to pay up on black Friday when everybody is spending at the same time. A blockchain needs a method to batch transactions. The technology used to do this is called a Rollup, such as the so-called “Optimistic Rollup” and “ZK Rollup”. Rollups are very similar to public transport in that on a bus or in a metro carriage, people going to the same place are batched together. One large transaction happens on the main blockchain, but thousands of transactions may have taken place in the Rollup. Blockchains treat Rollups as roads treat busses.
The Difference Between the Two Rollups
The difference between Optimistic Rollups and ZK Rollups is that the former does not prove that the transition from the Rollup to Ethereum is correct. Instead, people are free to check for a reward manually. For a change to the database to be fully confirmed on the blockchain, it can take up to a week, which can be problematic if users want to quickly move from an Optimistic Rollup to a blockchain. The advantages of Optimistic Rollups is that they are entirely compatible with programmable smart-contracts, meaning developers can copy and paste existing applications onto layer 2. ZK Rollups generate their proof for database changes mathematically and are therefore faster and more secure to move cryptocurrency on and off the layer 2. However, they are not entirely compatible yet, so development is lacking. The only successful ZK Rollups are application-specific, meaning users can only do one thing on each layer 2.
Despite the infancy of the space, there are plenty of projects currently running on Rollups. Loopring is a decentralized finance app where users can trade, stake, swap, and send until their hearts content for very little in fees. ImmutableX, is a marketplace where users can buy, sell, and send digital collectibles called NFTs. Usually, NFT transactions are more expensive than regular transactions, costing up to 50$ to move an NFT. On ImmutableX, users can move NFTs for free for the first couple of months, as the company that runs the Rollup has promised to pay for all transactions that occur. After this, transactions should only be a couple of pennies as the network can handle up to 9,000 transactions per second. Today, Arbitrum and Optimism, two different implementations of Optimistic Rollups, are up and running, as well as zkSync, a fully compatible ZK Rollup. The final exciting layer 2 platform is Polygon, a fully compatible sidechain.
The Difference Between Sidechains and Rollups
Within the analogy of the city, Rollups are similar to buses or metro systems. They take up space like roads and cars; they are just more efficient. Sidechains use a separate road network entirely and therefore do not inherit the same security as the main chain. This system is analogous to taking a train out to a different, less congested city and using their facilities. Sidechains usually prioritize the speed and size of new blocks over the security of the network. This might sound like a bad trade, but there is not a need for extraordinary security to do basic transactions for most people. When given a choice between less security and higher throughput, many people are more than happy to move a portion of their cryptocurrency to a sidechain that is cheaper to use.
Consensus to Secure the Future
The last thing a network needs is certainty. In the future, blockchains are going to face tough challenges. Scaling problems are not going to go away, possible attackers are only going to get more competent, and blockchains will likely become critical financial infrastructure for businesses and individuals. For a network to be secure and reliable enough for them, it must operate on a stable set of rules which are predictably followed. This ensures they trust the strength and resilience of the foundations on top of which they are building their systems. Most things on a decentralized network can be liquid and diverse, layer 2’s and other scaling solutions can continue to innovate, but the underlying network should be slow to evolve. This model has a few notable advantages.
- Asset Price Predictability: If issuance is predictable, the price of a network’s underlying asset can also be predictable, this overtime should lead to lower price volatility.
- Block Size Predictability: If the block size and the block size growth is predictable, nodes can handle the size increase, and fees can become more predictable. This gives the network a large amount of decentralization protecting the network from possible attackers.
- User Experience Predictability: If the network operates consistently over time, users will feel as if there is a certain level of permanence in what they do on the network and will feel more confident in storing liquidity on the blockchain.
Block Size and Issuance
A blockchain has many technical parameters, the two most important being maximum block size and issuance of its native asset. Ignoring other parameters may worsen the user experience, but these two make or break a network. The most popular crypto-assets feature issuance rates that tend to zero in the long term, but some research states this may be harmful to the network in the long run. Some networks, like Ethereum, aim to solve this by compensating miners through a flat issuance rate. This causes inflation, which is then mitigated by burning a portion of the transaction fees. If the network is very solicited, inflation can then even become negative.
Some cryptocurrency projects take a hard stand against any increase in block size, a puzzling position when steady technological advancement provides increasingly cheap and capable hardware. Blockchains should look to increase maximum block size at a similar rate to the increase of hardware performance for the same cost, allowing nodes to scale safely. How blockchains should do this in an adequately decentralized manner is unclear, but the payoff could be well worth it.
Even though we discussed a variety of ways to scale a blockchain, I don’t expect that everything I have written here is the correct path for all such networks… Only time will tell which technology achieves widespread adoption. Ultimately, I’m more interested in the end than the means. A well scaled blockchain has the power to replace not only most of the traditional financial system, but most forms of commerce, regulation, governance, and more.