Rollkit’s recent announcement that they have made sovereign rollups on Bitcoin possible has taken crypto by storm. The integration has given new life to discussions about how rollups in general – zero-knowledge rollups and optimistic rollups included – can be carried out on the Bitcoin blockchain.
Trust Machines hosted a Twitter Spaces session on March 13 to dive into the potential for different types of rollups to occur on Bitcoin and what they could unlock for the world’s oldest cryptocurrency.
The session was moderated by Dan Held. He was joined by Trust Machines CEO and co-founder Muneeb Ali, Celestia Labs CEO and co-founder Mustafa Al-Bassam, Celestia Labs head of marketing and communications Ekram Ahmed, Freehold founder and CEO Patrick Stanley, and researcher John Light (who also does product work for Sovryn).
Here are highlights from their discussion. This first of two blog posts focuses on the basics of rollups including how rollups work, how they differ from other scaling solutions, and the challenges of bringing rollups to Bitcoin.
How are rollups different from other scaling solutions?
Dan: John, you’ve written some great content on [Bitcoin rollups]. We’d love for you to kick us off with some basics.
John Light: Fundamentally, a rollup is a blockchain that stores its state data in another blockchain. There are some roll ups – specifically layer 2 roll ups – that also have a trustless bridge to its parent blockchain. This enables users to transfer assets over the bridge between the parent blockchain and the rollup chain.
One of the benefits of the rollup technique – compared to other kinds of cross chain protocols like atomic swaps or side chains – is that rollup chains, because of the way that they store their state data in their parent chain, fully inherit the double spend security of their parent chain. So it's just as hard to double spend or reorganize rollups as it is to double spend Bitcoin on layer 1, and so you get back full Bitcoin grade security.
Dan: Something folks might be curious about is how rollups are different from a sidechain and other scaling solutions.
John: A sidechain is a separate blockchain that has its own consensus rules and security budget. The main feature of, say, a Bitcoin sidechain, is that it's another blockchain that uses BTC as its native currency. For example, Rootstock is a well-known sidechain to Bitcoin and it uses Bitcoin as its native currency instead of some altcoins.
Rootstock and other sidechains also have their own independent security budget. That's referring to how much it costs to actually reorganize the blockchain. Usually, this would be done to do a double spending attack where you send somebody money and then wind the blockchain back to before that transaction was confirmed in a block. Then, you do the same transaction but this time, instead of sending the money to the original recipient, you send the money to yourself, so you're able to basically spend the money twice. Because rollups fully inherit the double spend resistance of their parent chain, it would be just as hard and expensive to do a double spend attack on the rollup as it is to actually do a double spend attack on Bitcoin L1.
Another difference is that if you have a validity rollup, it also comes with a trustless bridge to its parent chain. Sidechains typically don't have a trustless bridge, they have some kind of trusted bridge. It might be a very strong trusted bridge with very high collateralization ratios, but fundamentally, it's still trusted in the sense that the bridge security is not being enforced by layer 1 Bitcoin consensus. It’s being enforced by some other kind of off-chain system that's controlled by third parties.
Why rollups on Bitcoin, and how do we make them happen?
Dan: I know internally at Trust Machines, you are really excited about Rollkit and Bitcoin rollups. Why should people be excited? Why is this a big deal?
Muneeb Ali: Let's zoom out a little bit and think about why you would want to start a rollup on Bitcoin versus going with a separate chain. Well, these networks are very hard to bootstrap, right? When you start a new blockchain, at least in the early days, it's pretty small in terms of security budget, community, and there isn't a lot of capital there. I would say Bitcoin and maybe Ethereum are the two that have reached some sort of a critical mass of capital, developers, community, and decentralization around it.
A rollup, especially a validity roll up, can benefit directly from an established blockchain like, I imagine, Bitcoin. It’s benefiting from 100% of Bitcoin’s security in terms of reorg protection, like John was talking about. But more importantly, if you can have this trustless bridge to the rollup and the movement of funds is actually being validated by the Bitcoin L1, that's why it's called validity roll up, then you have all the capital at your disposal as well.
So suddenly, Bitcoin goes from, you know, $500 billion of passive capital to $500 billion of active capital. You can do whatever you want with it. You can deploy different types of execution environments, you can move your money in and out in a completely trustless manner. It unlocks so much innovation around Bitcoin.
I do want to point out that validity rollups are not possible without actually qualifying Bitcoin L1. There are certain types of opcodes that you need to introduce to be able to basically give Bitcoin L1 the capability to actually validate the transfer of funds out of the rollup. But there is another type of rollup – sovereign rollups – that are possible today, which is super exciting.
So over there, you are getting the reorg protection from Bitcoin, but you would still require some sort of a trusted bridge or some other way to move your capital. I think at this point, people are wondering how the Stacks layer, the project I co-created, compares to these approaches. And I think the way to think about this is that Stacks, especially with a new version coming up, it is trying to get you close to Bitcoin-level reorg protection. We can get into the technical details, but basically, after a certain number of blocks, you'd have to go reorg Bitcoin to be able to reorg anything on the Stacks layer. So in that veil, it is somewhat similar to sovereign roll ups with some differences.
And then a lot of focus these days is actually on building a decentralized peg. You can think of that as a trust-minimized bridge, where there can be a set of decentralized signers that can find the peg-out transaction. It's the best you can do until Bitcoin L1 can actually have the opcodes to enable a fully trustless way of bringing your Bitcoin back. That research, I think, is directly applicable to sovereign rollups, because they would need some way of having the trust-minimized bridge.
Delving into Rollkit and sovereign rollups on Bitcoin
Ekram Ahmed: Ultimately, what we're trying to build is a modular blockchain stack, where you have a data availability layer and an execution layer. Having a data availability layer only makes sense if you actually have modular software for that layer, for people to actually build execution environments on. Building the software is really hard, so it made more sense for us to build a software as a public good that lots of people contribute to and that isn’t exclusive just to Celestia, but can be used on other data availability layers.
Last week, we added Bitcoin as a data availability layer to it to really showcase the potential of a modular blockchain stack in the sense that you can really customize it. You can customize the execution layer, and you can also customize the data availability layer. And so with what we did last week with Rollkit is we deployed the Ethereum Virtual Machine using Bitcoin as a data availability layer. This is really interesting because if you look at the history of Ethereum, in the alternative universe, Vitalik might have actually deployed Ethereum on Bitcoin, using [something like] a Mastercoin-style protocol.
Instead, Vitalik didn't want to build a protocol on top of something that the [Bitcoin core] developers might have been hostile towards. But now we're kind of going full circle, because with SegWit and Taproot you can post big data on the block. And so last week, we've kind of gone full circle by making it possible to deploy an Ethereum virtual machine on Bitcoin. And yes, at the moment it’s a sovereign rollup, which means that it's not possible to transfer Bitcoin in a trust-minimized way. You can do it in a semi-trusted way using a committee-based bridge or a somewhat more trust-minimized protocol like sBTC, maybe.
But in order for it to be fully trust-minimized, what we need in the future is some kind of ZK CPU proof verification code on Bitcoin. So what I hope that Rollkit released last will do is we’ll create the foundations to develop rollups on Bitcoin.
Dan: So basically, this brings the ability for folks to run more complex smart contracts on top of Bitcoin.
Ekram: That’s about right.
For more on ZK-rollups, validity proofs, optimistic rollups, and more, visit the Trust Machines Learn Center.