Modular execution layers

Polynya
4 min readMar 20, 2022

You may have read about how execution layer can be separated from settlement & data availability. But an interesting trend is unfolding where the execution layer itself can be further modularized.

With Arbitrum Nitro and Optimism Cannon, you have an “EVM sandwich” with an intermediate — WASM for Nitro; MIPS for Cannon — in the middle. Though not quite the same, zkSync 2.0 also uses an intermediate — LLVM.

While the first iterations of these will be an “EVM sandwich”, in reality, the different layers can be swapped out. So, you can have a different non-EVM VM for the rollup. Anything that compiles to WASM can work with Arbitrum Nitro, for example. You can also prove to a different non-EVM settlement layer.

But you can also change the proving systems. While Nitro makes WASM fraud provable, Cannon makes MIPS fraud provable, and zkSync 2.0 makes LLVM validity provable — you can also have WASM validity proofs, MIPS validity proofs and LLVM fraud proofs. Easier said than done, of course! But eventually, I fully believe Arbitrum & Optimism will use validity proofs in some form, and this is their path to get there.

So, we’re now starting to see a stack building up for modular execution layers where you can mix and match between different execution VMs, settle on different VMs, and have different proving mechanisms.

While there are many novel consensus protocols being developed for rollups — proof-of-efficiency by Polygon Hermez or StarkNet’s solution where sequencers have to prove to L1 — there’s interesting solutions that are neither rollups or validiums, nor sidechains or L1s.

Think of a class of execution layers that can be described as “honest minority sidechain with rollup fallback”. Offchain Labs are pioneers of this concept with AnyTrust — indeed, this was their focus before rollups became a thing. A regular sidechain or alt-L1 function very much with an honest majority consensus — i.e. you need to trust 67 out of 100 validators, for example — to be honest at all times. With AnyTrust, you only need to trust 2 honest parties. Why haven’t these existed before? As a regular sidechain or alt-L1, if at any time the honest minority dissents, it would simply come to a halt. But the ace up AnyTrust is it can simply fallback to an optimistic rollup and continue being live.

From here, we’ll get into speculative territory — I’ll once again remind you I’m not a researcher and developer, just an armchair hobbyist who finds this stuff interesting. Arbitrum AnyTrust chains can be any VM, application specific etc. I also feel validity proofs are a more natural fit for this type of construction — and they have a direct path by making WASM validity provable. With validity proofs, honest minority chains can seamlessly fall back in and out of being a ZK rollup or a sidechain. Following EIP-4844, data becomes so cheap that validiums no longer make sense for most general-purpose smart contracts (except for specific application scenarios) as proving & sequencing costs become the dominant cost — but an honest minority sidechain with a validity proof fallback could be the next frontier for specific application scenarios. In an optimistic scenario when all validators agree, you can simply skip the prover cost. To be clear, this is not as secure as a validium — but honest minority is the next best thing and significantly more secure than a regular (honest majority) sidechain or alt-L1.

There is also an interesting middle-ground between AnyTrust and an optimistic rollup — something I had mentioned on Twitter a few months ago. Post-4844 data becomes negligible, so might as well commit all data to L1. Instead of 7 days, have an honest minority consensus, and a short dispute window where anyone can post fraud proofs. This could be a few minutes, an hour — the longer it is, the closer this construction gets to an optimistic rollup. IMO, the 7 days seems excessive anyway, especially now that optimistic rollups have multiple bridges watching very closely. To expedite the dispute resolution, we can use validity proofs instead of interactive fraud proofs.

Another potential option to AnyTrust could be having more than 20 validators, but rotating between them. So, you can have 100 validators, but only 20 are active at a given time. This makes collusion significantly harder, as you’d really need to compromise very close to all 100 validators to attack the chain for any significant duration. As a reminder, many sidechains/L1s live today need less than 10 validators colluding to shut down the network.

There’s also the possibility of sovereign rollups which do not verify state transitions on secured bridges. These rollups can settle disputes themselves, though it’s unclear to me which scenarios this construction makes sense.

To be frank, while such experimentation (validium, volition, AnyTrust, celestium, sovereign rollups etc.) is very interesting, I still consider secured rollups to be the most compelling execution layer solutions — the gold standard. With EIP-4844 , danksharding and proving costs continuing to decrease, I believe rollups will be ideal for >90% usecases.

Finally, then there’s the matter of fractal scaling. StarkNet has some intriguing ideas about L3s and recursive rollups. Optimism has mentioned using PBS to achieve “superchains”. It could be that if there’s a solid solution to interoperability and composability, we no longer have discrete execution layers, but many execution shards combine to become an “execution network” — which to L1 just looks like one execution layer.

--

--

Polynya

Rants and musings on blockchain tech. All content here in the public domain, please feel free to share/adapt/republish.