Ethereum’s Layer 2 solutions may have the potential to keep Ethereum in its top altcoin spot despite the panoply of newer competitors.

layer 2 solutions on eth
Courtesy of Jeivani via Pexels

Table of Contents

How can layer 2 solutions help Ethereum?

What are layer 2 solutions all about?

How crypto developers approach building L2 solutions

Why not just scale Layer 1 solutions instead?

Layer 2 Solutions: Channels

Layer 2 Solutions: Rollups

Layer 2 Solutions: Sidechains

Our conclusions on Layer 2 solutions

How can layer 2 solutions help the Ethereum ecosystem?

Well, Ethereum is easily one of the most widely used blockchain networks in the world. With over 3,000 decentralized apps (dApps) already active and even more being created every day, this blockchain will continue its existence into the future.

As is the case with every (public) blockchain network though, there was no escaping the “blockchain trilemma” (you know.. like ‘dilemma’, but with three instead of two).

This refers to the issues that the developers run into when it comes to three core traits of the blockchain:

  • Decentralization – no central authority owns/controls the blockchain
  • Security – the network and its users are protected against bad actors
  • Scalability – the network can grow and be expanded to accommodate more user traffic with higher transaction speeds and throughputs

Cryptocurrency developers have not yet found a way to fully optimize all three of these traits and oftentimes, whenever they work to improve one, the other two tend to suffer and fall behind.

For today’s topic, we’ll be focusing on Ethereum’s scalability and how “Layer 2 (L2) solutions” have come to be an effective way to support the network’s development.

What are Layer 2 solutions all about?

As one of the core traits in the blockchain space, handling transactions at scale has always been one of the most valuable propositions of this groundbreaking technology. The conversation just gets a bit louder whenever a major event happens that emphasizes the network’s need for growth and expansion.

Take a quick trip with us down memory lane..

*cue late 90s sitcom, Fresh Prince-esque flashback sequence.. you know.. the one with the harp, fog, slow fadeout, etc.*

It’s late 2017. Bitcoin’s price is going nuts.

Crypto is starting to get some major, mainstream attention. You try to move some of your ETH to Binance because you got a tip to buy some BNB and XVG.

But wait.. what’s this?

You want to send $100 in ETH and the gas fees are…$300?!

Well, it turns out those “silly” Crypto Kitties and the hundreds of ICOs flooding the Ethereum blockchain are clogging the entire network, causing a huge spike in both the gas fees and the tx verification times.

Sound familiar?

Well, it should.. this is what’s been happening just this year (2021) with the meteoric rise of DeFi and NFTs using up significant bandwidth of the Ethereum blockchain.

Total Value Locked in Ethereum DeFi Apps (USD) Dec-2020-October 2021

How crypto developers typically approach layer 2 solutions

When it comes to layer 2 solutions for scaling on Ethereum (or any blockchain, really), there are two main ways that crypto devs use in their approach:

  • Scale the base layer itself (Layer 1/L1)
  • Offload some of the computational work to another layer (Layer 2 aka “L2”).

Layer 1 solutions, just as it the term sounds, is the first or “base layer” where pretty much all of the regular transactions occur.

Layer 2 solutions, in relation, refers to another computational layer built on top of Layer 1. These stack up like a cake, or a pyramid (actually.. maybe I shouldn’t use “pyramids” while talking about money-related stuff huh.. let’s stick with the cake.. that one’s safe).

Why not just scale Layer 1 solutions instead?

That’s definitely the most straightforward way to approach the problem, but remember that “trilemma” that I mentioned earlier? Well.. the devs have found that too much of the network’s decentralization and security is sacrificed when they try to directly improve scalability on L1.

Enter.. Layer 2 solutions.

An important note regarding L2: it doesn’t affect L1’s code –  it’s built on top of L1, so it can use L1’s existing functions/elements.

Think of the L1 of a blockchain network as an open highway that allows you to get from point A to point B. As it stands right now, you can walk, jog or run to get where you need to go, but at a certain point, it’s just not efficient.

That being the case, the different L2 solutions would be like different types of vehicles that you can drive on top of the L1 highway and could use for specific purposes (i.e. if you wanted to speed and get an adrenaline rush, you would use the motorcycle L2, but if you wanted to haul your furniture as you move between apartments, you would use the Uhaul truck L2.. you get the idea).

Boom! solutions on Layer 2.. explained.

Now, let’s look specifically at Ethereum’s layer 2 solutions.

Ethereum, at its base layer, can currently process about 15 tx/s. Next to a centralized establishment like Visa, that can process over 100K tx/s, Ethereum’s processing speed seems laughable.

crypto transaction speeds vs financial transaction speeds
Transaction speed by various asset types. Courtesy of ResearchGate

There needs to be some way to increase the transaction speed if the blockchain is to ever become a viable competitor against these giant financial mega-corps.

What happened when they tried scaling the L1? Isn’t that what the whole “Ethereum 2.0” thing was about?

Yea, the Ethereum 2.0 update does introduce methods like Proof of Stake (PoS) and sharding (we’ll get more into sharding another time), that should drastically increase the L1 tx throughput.

If that’s going to work, why do we need any L2 solutions?

Well.. PoS and sharding alone still wouldn’t be enough–Ethereum would still need L2 scaling alongside those L1 tweaks to be able to truly compete with legacy finance in the future.

When it comes to these layer 2 solutions, there are multiple options available, each with their own benefits and special functions. To understand some of them better, let’s look at some of the most popular L2 scaling solutions for Ethereum.

Layer 2 Solutions: Channels

Channels are one of the first widely discussed scaling solutions.

Channels are essentially a way to store your funds in a trusted secondary location (kind of like an escrow), then trade a virtual/simulated version of your funds on a much faster, off-chain network..

The beauty of this is that once a channel is set up between participants, and the initial funds are loaded into the channel, those funds can be exchanged dozens of times off-chain, with almost non-existent fees and instantaneous tx.

Then, when the funds are ready to be withdrawn, the net total of all the tx are calculated and the final product is loaded onto the main/L1 chain.

So all in all, the base layer only registers two tx, the initial tx onto the channel, and the final tx leaving the channel.

Ok.. let’s try to get a bit creative.

Think of yourself having a regular bank account. You take $12,000 and deposit it into your “rent” checking account so that you can pay your rent of $1,000/mo. Each month, you authorize the bank to send your landlord $1,000 from the account, but on two of those months, the landlord refunded you $250 (for whatever reason) and you didn’t know it. At the end of the year, you ask the bank to withdraw whatever money is in that “rent” account, and they give you $500.

In that example, the US dollars in your possession were the blockchain L1 and the bank account serves as the L2 channel between the two users (you and your landlord).

On the channel, there were 14 tx, but on the blockchain itself, only 2 tx were registered (when you first put money into the channel, and when you finally took money out of the channel).

Not the most airtight example, but it gets the job done.

Although they sound amazing, layer 2 channel solutions do have downsides:

  • they aren’t completely open for participation; channels must be set up between individuals and funds must be locked up in the channel’s contract before the channel can be used
  • their only applicable use is in tx; they cannot be used for more advanced tasks like running smart contracts and VM code

eg. Ethereum’s Raiden & Bitcoin’s Lightning Network.

Layer 2 Solutions: Rollups

If you take a wild guess at how rollups work, you would probably be pretty close to the right answer.

Rollups, as the name suggests, provide scaling by “rolling up” multiple tx into a single tx, and generating a cryptographic proof, also known as a “snark” (an acronym for “succinct, non-interactive, argument of knowledge”).

This single, “rolled up” proof is then submitted to Ethereum’s L1 ledger.

how blockchain scaling rollups work diagram
Courtesy of Vitalik Buterin

There are two main forms of rollups:

zKrollups

  • Faster and more efficient than optimistic rollups; ideal for transaction
  • Not a good fit for complex actions such as smart contracts

Optimistic rollups

  • Runs an EVM-compatible virtual machine called OVM (Optimistic Virtual Machine), allowing the use of smart contracts on Ethereum
  • Slower and less efficient than zkrollups

Layer 2 Solutions: Sidechains

Again.. if you take a wild swing at this, you probably wouldn’t be too far off.

Sidechains are independent, secondary blockchains that run parallel to the main L1 chain, but cannot function without it.

layer 2 solutions sidechains diagram
Courtesy of Horizen Academy

While these chains are completely compatible with the Ethereum L1 and the EVM, they can also have their own consensus models and VM to cater to a specific function. Because of this, the sidechain can take information/data directly from the main chain, run its own computations through its custom VM, then send the results back to the main chain.

eg. Polygon/MATIC, xDai

Plasma

I’ll be honest.. this one is probably the most confusing of the bunch, so I’ll do my best to break it down.

Minimal Viable Plasma – the L2 solution that was originally proposed by Joseph Poon and Vitalik Buterin. In truth, this can be viewed as a subcategory of “sidechains.”

To put it simply, it uses child (or plasma) chains that can have their own child chains that can be used to broadcast tons of different information to the parent layer 1 chain.

Through the use of smart contracts and Merkle trees, an unlimited number of child chains can be created.

Offloading transactions from the main chain into various child chains allows for faster and cheaper transactions based on the specific needs of each child chain.

I know.. it’s a bit weird, but bear with me.

Think of it like this: if the United States as a whole is the Ethereum network, federal laws could be one of the child chains, state laws could be another child chain, and local laws could be another child chain. While they all have different degrees of power/influence and how they go about their functions may differ, at the end of the day, they are designed to collectively help maintain the functions of the US (aka Ethereum).

Plasma does have its flaws as well, though.

For one thing, there can be long waiting periods for users who want to withdraw their funds from the L2. Also, Plasma can’t be used to scale general purpose smart contracts.

eg. OMG Network

Our Conclusion on Layer 2 Solutions

These are just some of the most popular Layer 2 solutions presented for the Ethereum network, but the blockchain scaling opportunity is constantly being worked on by crypto developers worldwide.

The Ethereum community has shown to have a preference for scaling primarily through a combination of rollups and Ethereum 2.0 data sharding, an approach that has been confirmed by Vitalik Buterin himself, called “a rollup-centric Ethereum roadmap.”

As with everything else in the space though, only time will tell how these solutions will pan out and what these networks will look like in the next 5/10/20 years. 

Interested in learning more about the cryptocurrency industry? Take our industry-leading cryptocurrency masterclass and get a jump start on your competition.


0 Comments

Leave a Reply

Avatar placeholder

Your email address will not be published. Required fields are marked *