The past few weeks have seen a wave of zero-knowledge proof project launches, including Polygon’s zkEVM and Matter Lab’s zkSync Era on mainnet, and the Linea zkEVM from ConsenSys on testnet.
They join StarkWare’s long-running StarkEx solution and its decentralized cousin StarkNet along with a variety of other projects in development from Polygon (Miden, Zero, etc.) and Scroll.
They all promise faster and cheaper transactions to scale Ethereum using zero-knowledge proofs.
But is the brutal competition between ZK-rollups a zero-sum game where there can be only one winner? Or are we looking at a future in which lots of different rollups are able to work in harmony and interoperably?
Anthony Rose, head of engineering for zkSync, thinks the latter future is much more likely and predicts that one day, no one will think about which ZK-rollup they are on because it’ll all just be infrastructure.
“I think that if we don’t get to that world, then we’ve probably failed,” he says. “It’s the same way as somebody using Snapchat or Facebook doesn’t really have to know about TCP/IP or HTTP — it’s just the plumbing of the way the internet works.”
But how do we move from a bunch of competing sovereign rollups to an ecosystem of ZK solutions that are interoperable and composable?
People are already starting to think about this question, and all of the ZK projects Magazine spoke to have plans to make their projects interoperable with at least some other rollups — although the extent to which that can happen likely depends on the development of standards and protocols.
Also read: Attack of the zkEVMs! Crypto’s 10x moment
Zero knowledge about ZK-rollups?
If you’re unfamiliar with the term “zero-knowledge proofs” — which StarkWare insists should be called “validity proofs” — they’re a way to scale Ethereum using cryptography. Rollups take the computation for tens of thousands of transactions off the main blockchain and write a tiny cryptographic proof back to Ethereum that proves the computation was carried out correctly.
“Every proof we generate covers roughly 20,000 transactions and fits inside a single block of Ethereum,” explains StarkWare co-founder Eli Ben-Sasson.
Despite this increase in transactions per block, zkSync’s Rose doesn’t think Ethereum can come close to scaling up to become the base layer for everything via a single rollup.
“A ZK-rollup on its own will not scale to the world that we’re talking about,” Rose says. “If we think that applications with some interactions on the blockchain are providing value to hundreds of millions of people, the scalability problem is still there to be solved.”
Scaling is a little like internet bandwidth, in that the more you get, the more you realize you need. Back in 2017, Ethereum planned to scale using “Eth2” sharding. This roadmap was then ripped up after ZK-rollups emerged in 2018 and promised vastly greater scaling, but only if Ethereum upgraded the blockchain with a different form of sharding (proto danksharding and then danksharding) to enable the ZK-rollups to achieve higher throughput.
Even then, Rose says it’s likely rollups will need to work in collaboration. “This is a big active area of research for us,” Rose says of interoperability. “As the systems mature as well… I think, naturally, this is kind of the pattern that these systems suggest.”
Ethereum scaling is some way off
It’s the early days yet for scaling, however. Although various solutions claim they can theoretically hit tens of thousands of transactions per second (or even talk about “unlimited” scaling), in practice, they’re hamstrung by data availability on Ethereum.
At present, between them, the various Ethereum scaling solutions and Ethereum are running at about 25 transactions per second (TPS). Ethereum itself has performed an average of about 12 TPS over the past month, Arbitrum One was at 7.2 TPS, Optimism at 2.65 TPS and zkSync at 1.6 TPS, according to ETHTPS.info.
These numbers move around a bit and are low mostly due to demand rather than capacity. StarkEx is not covered, but StarkWare tells Magazine it averaged 5 TPS over the past month.
Despite supply outweighing demand so far, interoperability between rollups would already be helpful to ensure that users don’t get stuck in walled gardens. Optimistic Rollup users, for example, have to wait a week to withdraw funds, which rather limits interoperability.
ZK-rollups don’t have that limitation and can allow instant withdrawals (but don’t).
Interoperable ZK-rollups are possible, but is it probable?
Bobbin Threadbare, founder of Polygon Miden, says interoperability between ZK-rollups is certainly technically possible, but “whether it will happen in practice is a different question.”
He explains that withdrawals aren’t instant yet because it’s not financially viable to put proofs on Ethereum that frequently, so transactions are fired off roughly every 10 or 20 minutes. As demand and throughput go up, this delay will become quicker and quicker.
“And in that case, you get closer, closer and closer to this instant kind of movement between different places,” he says.
“The second thing is that different rollups will have to have some kind of incentives to say, ‘Okay, let’s figure out how we can seamlessly move things from this to that.’”
Threadbare adds, “Very fast interoperability between ZK-rollups is technically possible, but a) People need to agree on standards, and b) They need to actually implement these standards in their systems.”
“And I think that’s a much, much more complicated thing to do.”
Interoperability is not composability
There’s a difference between “interoperability” and “composability” — although people often use them interchangeably.
Interoperability is easier and basically involves being able to move funds from one layer-2 (L2) solution to another. “By this definition, at least all of the rollups which share an L1 today already are interoperable!” notes Optimism co-founder Ben Jones.
Arbitrum’s Patrick McCorry also says that for basic interoperability, you can already send an asset from one rollup to another via Ethereum — it’s just slow.
“Or you could have some off-chain solution, maybe like Hop protocol, where there’s someone in the middle who you give them the assets from StarkWare and then you take the assets to Scroll, and they provide some way to synchronize. So, there’s ways to do that,” he says.
Hop Protocol currently allows users to send funds between Ethereum, Polygon, Gnosis, Optimism and Arbitrum, though ZK-rollups aren’t currently supported. Connext offers a similar service, including BNB. A cross-chain DEX and bridge aggregator called Rango already connects StarkNet to other L2s.
Declan Fox, product lead for the ConsenSys Linea zkEVM, expects support will be added soon. “Many third-party bridge providers will continue to offer interoperability solutions for ZK-rollups,” he says, adding that bridges have drawbacks around trust and fees.
“At Linea, we value open systems and interoperability highly. The Linea testnet has already integrated many of the leading bridging solutions for this reason. In the future, Linea will be able to trustlessly interoperate with any of the layer 3 off-chain systems deployed on top of the layer 2 through their validating bridges.”
MetaMask Snaps might help
Another possibility for interoperability is via the browser wallet MetaMask. ConsenSys is in the midst of developing new crowdsourced wallet extensions called Snaps that projects can develop that extend the capabilities of MetaMask.
MetaMask senior product manager Alex Jupiter says Snaps are still in the testing phase, “but if we imagine a future where you know Snaps is stable, developers can extend it in all manner of ways. Of course, the next step is to get these different Snaps talking to each other. So, one ZK-rollup can talk to another ZK-rollup, right? And that’s part of the vision of Snaps, and yeah, we want to make that world possible.”
One Snap that has been demoed already enables MetaMask users to control Bitcoin via their Ethereum wallet, so getting ZK-rollups talking to each other certainly seems achievable.
“Who knows where bridging is gonna go in the future as well. I’m not an expert on ZK-rollups, but I don’t think there’s a core technical limitation of that being a problem in the future.”
ZK-rollups and composability
Composability is the ability to initiate a transaction that involves operations on more than one different rollup. Jones calls it “a stronger form” of interoperability “where chains can do more than just communicate asynchronously with each other but actually have transactions, which are aware of the state of each chain in some more ‘real-time’ manner (think cross-chain flash loans).”
This is likely to require the development of new standards and protocols, and Rose says that the sooner this happens the better.
“It is a strictly better user experience if teams can build through an interface, and we can attempt to have more standardization. I think there is appetite for some of this standardization as well, and I do think we will see more of it as these systems mature.”
Fox says that “to get to a point where we have synchronous composability, there will need to be a globally sequenced and ordered set of transactions across the different off-chain systems. This is theoretically possible with ZK-rollups thanks to SNARKs [a type of ZK proof] where, for example, a common sequencer could offer a UX of unified execution and pooled liquidity,” he says.
“Imagine making a DeFi trade where parts of the trade are executed on different chains for optimal liquidity all within the same transaction.”
Optimistic about the Superchain
One potential coordination method might be Optimism’s Superchain concept, which it announced at the same time Coinbase unveiled its base layer-2 fork of Optimism.
Optimism is an Optimistic Rollup, which is another way to scale Ethereum, though more limited in potential throughput. According to the announcement:
“The Superchain seeks to integrate otherwise siloed L2s into a single interoperable and composable system.”
Jones tells Magazine, “There is no silver bullet,” but there are a couple of requirements for interoperability and composability the Superchain aims to address:
Shared Sequencing: “To have a system where you can do a cross-chain flash loan, at the very least, at the time when that transaction is being processed, it needs to be included in both of the chains reliably. This requires some notion of sequencers being able to communicate, merge or otherwise network together.”
Separation of Proving and Execution: “Different applications have different security requirements, and those security requirements impose different kinds of restrictions on what interoperability properties can be achieved. By de-coupling the computation of chain state from the proving of cross-chain messages, we can maximize the interoperability of applications without fragmenting them to other chains.”
He says the Superchain can connect optimistic and ZK-rollups as well as other chains, providing a shared, modular “standard for all these innovations to happen on.”
“It is going to be far easier to make these chains interoperate when they are built on the same codebase, compared to interoperating chains, which were written separately from the ground up,” he says.
However, underscoring Threadbare’s point about political issues being more complicated than technical issues, Arbitrum CEO Steven Goldfeder dismissed the concept out of hand.
“The notion that we’re going to sort of coalesce on one particular technology stack — a technology stack that’s not even built out today, that doesn’t have the core features that make it a layer 2 or make it a rollup — the notion that we do that is, I think, a bit presumptuous,” he told The Defiant.
Why connect ZK-rollups with Optimism?
And Arbitrum is built using Optimistic Rollups. It might be even harder to convince ZK-rollups with their higher potential throughput, to coordinate via Optimism. To some it might seem like connecting fiber optic cables together with copper wire.
However, Optimism is laying the groundwork to incorporate ZK proofs (validity proofs) in its systems with the Bedrock upgrade, and the Superchain will take this idea even further. “Compatibility there is the goal,” says Jones.
Other potential coordination methods are the Inter-Blockchain Communication Protocol from Cosmos or “modular blockchain” Celestia (though the latter seems to be trying to replace Ethereum as the data availability layer).
But ZK-rollups could also connect directly with each other.
Polygon ZK-rollups will be interoperable
Polygon has a variety of flavors of ZK-rollup possible in development. They include Polygon Miden (similar to StarkNet), the Polygon zkEVM (compatible with existing EVM projects), Zero (recursive scaling) and Nightfall (Optimistic Rollups meet zero-knowledge cryptography).
Threadbare says that coordinating internally to hook up Polygon’s ZK solutions is easier than coordinating with outside projects, and he believes the technical challenges are doable. The team is working on the LX-LY bridge to enable this interoperability already.
“Because we are all part of the same company, then the technical integration becomes much easier to solve,” he says. “Moving between these rollups will be super, super simple.”
“The friction, it’s not two separate chains or three separate chains. It doesn’t appear like that. It’s just one Polygon that settles on Ethereum. And moving assets or funds or tokens between these different environments is super, super straightforward and easy. That’s the end game.”
StarkEx and StarkNet
StarkWare’s Ben-Sasson says they are building similar interoperability between StarkEx and StarkNet.
“Yeah, definitely. We’re gonna be porting the StarkEx systems to be layer 3s over at StarkNet, and, at some point, for them to be solutions on top of StarkNet. That’s definitely the plan,” he says.
Back in 2020, StarkWare released a blog laying out its plans for interoperability, but Ben-Sasson says that has been superseded. StarkWare’s Cairo is a Turing-complete language and virtual machine, which makes it similar in capability to a general-purpose computer.
“A good analogy is to think of a layer 2 or a layer 1 as some computer that is just a bit slower than your laptop, but it has a lot of integrity and safety,” he says. “So, you can start just connecting these computer programs in various ways. Just like today, computers talk to each other and inter-operate or compose.”
To get computers to talk to each other over the internet, a set of standards like TCP/IP and HTTP were developed. Ben-Sasson agrees that’s the likely path for connecting validity-proof rollups, too.
Perhaps ZK-rollups can connect direct
StarkNet isn’t working on standards like that at present, but Ben-Sasson suggests there may be other paths to interoperability. He says smart contracts can be written to interpret the different types of incompatible proofs used by different rollups. StarkNet uses STARKs as the name suggests; zkSync uses SNARKs, for example, while Polygon Zero uses recursive SNARKs called PLONKs.
“Someone already wrote on StarkNet a smart contract that allows you to verify a Groth 16 SNARK,” he says.
This means the two rollups can communicate directly.
“As long as you can, in chain one, verify the proofs of chain two, you can start having interoperability. StarkNet is already able to verify STARKs, and now also Groth 16 SNARKs, and I’m pretty sure that very soon, we’ll have things like, you know, PLONKs and Plonky and other kinds of systems.”
“So, at least in StarkNet, it should be relatively straightforward to be able to prove things happened correctly in other chains, and you can start having interoperability.”
Fox tells me separately that Linea’s system “is already using the EVM to verify proofs (Groth16, PlonK, etc.) in a smart contract,” which he says can make it interoperable with L3s.
Ben-Sasson says it seems likely that StarkNet would be able to connect to different rollups directly.
“You can do it directly. You can do it because it’s a general-purpose computer and because of the validity rollup nature, right, that you can just have these systems talking to each other.”
So, it sounds like the future is interoperable and composable.
“Yes, it definitely is interoperable and composable. Yes. Definitely.”
The most engaging reads in blockchain. Delivered once a