polynya

Posted on Apr 22, 2023Read on Mirror.xyz

Monolithic blockchains and breaking free

For me, a “monolithic blockchain” is one where every user has to naïvely reprocess all transactions to verify integrity. The more transactions the network processes, the higher the system hardware requirements. It’s not only requiring a powerful server to reprocess transactions in real time, but also state and history bloat builds up over time, potentially to the point the blockchain’s complete ledger is forgotten and inaccessible because it became economically infeasible. This causes two problems - social and economic unsustainability. Side-note: no, traditional light clients do not verify integrity of transactions.

For a public blockchain, you have to ensure that enough people, who are not validators, can verify the integrity of the network. Otherwise, it’s effectively a plutocratic cabal of its stakeholders - and we know token distribution for all crypto assets are grotesquely concentrated, often with GINI coefficients of over 0.99. Even the most distributed assets by far - BTC and ETH - are worse than the most inequal real-world nations. This leads to blockchains being a dystopia that’s 100x more centralized than traditional incumbents.

Addendum: the situation is even more dire with proof-of-work and hardware-based anti-sybil mechanisms. These suffer from extreme economies of scale - we have seen many Bitcoin mining firms declare bankruptcy over the last several months, as mining becomes increasingly most centralized. Without any anti-trust regulations, it’s inevitable economies of scale and dwindling subsidy will eventually force Bitcoin mining to be an oligopoly controlled by 2 or 3 companies. Another addendum, multi-chain networks are compromised because they fragment economic security.

Bitcoin targets pretty much any device, Ethereum targets a mid-range laptop, all the way up to ICP which requires exotic hardware not purchasable off-the-shelf. In 2017, the Bitcoin community splintered into one keeping Bitcoin accessible, and the other targeting an Ethereum-like spec - evidently, the market prefers to keep hardware requirements as low as possible. Now, one can debate about what the ideal target is, but thankfully, we don’t have to!

With new technologies like validity proofs, fraud proofs, verkle proofs, data availability sampling we can break free of the limitations of monolithic blockchains to a new paradigm where verification can be performed using proofs instead. You may have seen many memes being shilled to describe this, “disaggregation”, “modularizing”, “unbundling” - but the core concept is the same.

The target for hardware remains the same. For example, for Ethereum, it remains a mid-range laptop. However, instead of reprocessing all transactions and all data, you use validity proofs, verkle proofs and data availability proofs. Now, suddenly, your laptop, which could previously only verify 1000 TPS can now verify millions of TPS! (meme numbers, purely demonstrative, though it’s true a ZK-SNARK only a few kbs and easy to compute can effectively verify millions of transactions, but there are other bottlenecks)

This post was inspired by Barnabe’s tweet, which talks about the concept of verification throughput btw. I don’t fully understand what that means though, but I suspect it’s related to what I’m talking about here. Maybe we can consider a “verification throughput multiplier”? I.e. the multiple of transactions it can verify with proofs vs. monolithic on identical hardware? So, it would be 1,000x or something for the above example.

It doesn’t come for free, of course. Someone has to generate the proof - and this is computationally intensive. The good news is it comes with an honest-minority assumption, i.e. only one entity needs to do it, and once done it can be used across the network. Darth Vader himself could generate the proofs and they’ll be as good as if Anakin Skywalker did. Let’s say if one targets a network with 100,000 nodes - it leads to an incredible increase in efficiency. Even if generating the proof costs 10x as much naïve reprocessing, that still leads to roughly 10,000x reduction in compute requirements across the network, so the cost of operating the network plummets significantly (I should note that this wasn’t a bottleneck anyway - it was economic security, but that’s for another time). Put another way, the overall network’s efficiency has increased by 10,000x. Also, the cost of proving is exponentially down-only. Even the most complex proving, for a notoriously ZKP-unfriendly EVM, has plummeted from several $ to $0.0001 in just a couple of years.

There are still limits, obviously. Firstly, while the average user can verify millions of TPS on their laptop, someone has to process them and generate the necessary proofs. You can certainly target a powerful server, but perhaps not a supercomputer, to keep it accessible enough that anyone resourceful enough can do it. There’s also something I’d call “proving throughput” - you have to ensure the proofs are generated in time to be verified. Fortunately, this is a non-issue as proving is embarrassingly parallelizable. There are tons of other bottlenecks to solve for, but there’s one final boss - historical storage.

It is important to note that this is not just an “L2 thing” - indeed, it applies to L1 just as well. While there’s a lot of hype around zkEVM L2s, remember even Ethereum L1 plans to upgrade to zkEVM, which will lead to a throughput increase of 10x-100x on L1 itself. While the innovation landscape is dominated by Ethereum and L2s, non-Ethereum projects like Mina and Tezos are also building similar solutions.

Of course, nothing I have said here is new, and I have talked about all of this at length in 2020 and 2021. Vitalik covers the topic best in the Endgame post. But in 2023, it’s never been clearer that this is the present and future or scaling blockchains, and I anticipate all blockchains worth their salt will pivot away from purely monolithic, in some way or another, over the coming years. (Unless scale is not required, like Bitcoin.)