On Ethereum and Layer 2…
I have a friend who is a content creator, and alongside his daily newsletter he produces a NFT that’s uniquely linked to the newsletter. It’s a cool idea and I want to support it. He’s a generous guy so the asking price is low (~$2.00), so I tried to buy the NFT. One problem, gas prices are simply outrageous (checking at various points in my day the gas to complete this transaction ranges from $50-$80).
This is nothing new, gas prices have been high in the past and are currently high again. This prices out the small fish across the board whether you’re trying to buy an NFT or get into some of the DeFi protocols. So what can be done to solve this issue? As Vitalik himself said, either the layer 1 itself must scale (i.e. sharding) or work must be offloaded from layer 1 and placed onto layer 2 or a combination of both. Ethereum is in the process of upgrading its own layer 1, but the timeline for the upgrade typically is talked about in years. Scaling solutions are needed now (so says this small fish!). So, what does the layer 2 landscape currently look like and where might the space be headed?
Layer 2’s, Side Chains and State Channels
This article which Vitalik authored succinctly outlines each of the three varieties of non-L1 scaling solutions (state channels, plasma, and rollups). It is very much worth the read, as it presents a vision of Ethereum scaling from the founder himself. Side chains such as the Matic Network have the potential to function as application-specific chains in their own right. It is important to remember, though, that a true side chain must bootstrap up its own security. In the end, rollups (which are further split into two groups: optimistic and ZK) tend to be the preferred solution for layer 2 scaling. Again, the article by Vitalik linked above provides a great overview of the differences between the two rollup solutions.
Where’s the Money?
So how are current implementations of these solutions looking? There are different approaches to understanding the landscape. One approach may be comparing market caps of L2’s to other (non-Ethereum) L1’s as Saypien has done. You’ll see the L2’s lag woefully behind the market caps of the L1’s. The other L1’s may have some tribalism driving their market cap, as well as the fact that they are seen as a separate settlement layer relative to Ethereum. As for TVL, below is a glimpse at the TVL for some of the top layer 2 protocols.
- Loopring at $213M
- Matic network at $70.2M
- xDai at $27.2M
To put some perspective on this, Uniswap sits currently at ~$3.88B in TVL. But, we must remember these rollup solutions are very new (even on the crypto-time scale!). As of August 27 2020 Uniswap was only at ~$230M TVL! That’s a (much needed) reminder of the pace at which the DeFi space has grown. Loopring has only launched their latest ZKRollup (v3.6) in December 2020.
Users need time to understand this new technology, and it’s no small task to move between a layer 1 and layer 2. There is a real (gas) cost associated with movements between layer 1 and layer 2. From a development perspective, ZK rollups are complex and difficult to implement. If a rollup solution is successfully implemented and a protocol manages to get users to migrate over to their L2, there still exists the issue of composability. All the fun DeFi protocols have with each other on the L1 depends upon the fact that they are composable with one another. This “money lego” feature is currently lost on layer 2. All of this is to show there is a web of complexity that must be properly navigated to gain meaningful velocity and traction for an L2.
There’s a relevant analogy that’s been used multiple times that I like. The Ethereum mainnet is similar to Manhattan, living there is quite expensive and real estate comes at a premium (gas prices are high and block space comes at a premium). Layer 2’s are similar to suburbs, living expenses are much lower and real estate is abundant. Right now some folks have moved out to the suburbs (think of the $213M in TVL with Loopring). They are helping build the first subdivisions, and any neighbors live miles and miles away. But the streets of Manhattan are still filled with homeless Ethereans who are stuck, they can’t afford to participate in the ecosystem there but aren’t sure how to exit out of Manhattan. What can be done to help guide these Ethereans to greener pastures?
Centralized Exchange Ramps
A useful question to reflect on is how did we end up with so many homeless Ethereans on layer 1? The answer is likely convenience; the mainnet is the first (and only) stop when leaving Coinbase or Gemini. And those exchanges are where most users start their crypto journeys. I expect to see these exchanges creating ramps onto L2’s very soon. Being able to hop straight from Coinbase to Matic (now Polygon), Loopring, or Synthetix will obviously be a huge boost to these L2 networks; user demand at the exchange level will (and must) continue to grow with regards to this functionality.
A direct injection of tokens to an L2 from a centralized exchange will, I’m sure, gladly be taken from those L2’s. But, there is potentially another abstract layer that could be utilized. InstaDapp has recently made an announcement which describes their “DeFi Smart Layer”. User accounts (over 18k of these accounts currently exist) sit within this smart layer, and devs can also build apps that access this smart layer which then can use connectors to interact with L1 or L2 DeFi protocols. InstaDapp already has over $1B in TVL and as their ecosystem grows I’d expect to see this increase. If a user can go from Coinbase/Gemini straight into their “smart account” with InstaDapp, then a wider ecosystem of L2’s and L1’s are potentially available compared to a straight bridge to, say, Loopring. This approach will naturally be on a longer timeline as more development is needed on both sides of these “smart accounts”.
Coordination of L1 DeFi
As mentioned earlier, the value of composability (“money legos”) across L1 DeFi protocols cannot be understated. To keep this feature alive within the L2 landscape there must be deliberate coordination across these DeFi camps. For example, Loopring runs on its own L2 ZKRollup. Right now there are no other legos to play with once tokens are moved there. While financial incentives to move tokens there do exist (think LP swap fee rewards), the composability loss is devastating for protocol growth. This points to the need of the major L1 DeFi players to have coordination in their moves to L2. Uniswap v3 will likely involve some form of L2 scaling solution. Maybe other protocols are waiting and watching to see what move Uniswap makes. It seems likely, though, that multiple L2’s will exist simultaneously. If this is the case, then bridges will have to be built between these L2’s and that will be no trivial task.
Within a single DeFi protocol there are other important questions that are surely being discussed. For instance, a DeFi protocol may decide to make a play at an L2 solution. But which solution will they choose? Optimistic rollups are currently easier to implement relative to ZKRollups, but they still have their drawbacks such as a withdrawal waiting period (due to the nature of optimistic rollups). Does a limitation like that make sense for the business application? A protocol may decide to shift only a portion of their workload off-chain. How do you determine which portions can be safely moved off-chain? Can a lending/borrowing protocol, for instance, manage to fragment their liquidity somehow and still provide the assurance they’ll remain solvent? These are not trivial challenges and there’s certainly no playbook on how to maneuver through them.
Successfully implementing a layer 2 scaling solution (in particular the ZKRollup flavor) is extremely challenging technically, and brings with it other challenges such as effective ecosystem development. Why not ditch the rollups and use another L1 such as Polkadot or Cosmos? I’ll answer my own question with another question. Why attempt to bootstrap security when you can leverage Ethereum’s? Ethereum has been kicked around and battle tested for much longer than other L1’s. By definition, ZKRollups inherit the security that Ethereum has built. If you build on Polkadot, then you’re relying on its security. It may very well have no issues, but the point is that if you want to leverage a networks security (keep in mind something like Polygon stand alone chains do not leverage Ethereum’s security, as they have their own pool of validators) then why not go with the network with the most proven security?
I’m excited to see how the scaling scene develops, from a technical perspective I find it interesting but also, as one of those homeless people on the Manhattan streets, I want to continue playing around with DeFi. My friend that I referenced in the beginning of the article made a great point: there’s a lot of chatter around scaling needs, but really is there going to be any meaningful solutions implemented any time soon? A huge percentage of the Ethereum user population is tremendously impacted by high gas prices. But these folks only make up a small percentage of the overall capital pool on the Ethereum network. Will the small fish be able to drive the DeFi protocols to push scaling solutions forward? It’s not clear what will come of that question, but it’s difficult to imagine that small fish will get quieter any time soon.