Reflections on Terminology for Rollups, by Jeroen van de Graaf
Share on

One of the more stimulating talks I saw in Bangkok was about terminology for rollups, by @KelvinFichter: https://www.youtube.com/watch?v=c1IbglrscSU. It gave me several new insights, though in the beginning I was quite confused. But after watching the video a couple of times, it all sank in. I'll explain it in my own words.

Kelvin starts his talk with a very powerful definition of a rollup: "A rollup is simply a blockchain that uses another blockchain for ordering and data availability". Obviously 'blockchain' stands for 'distributed ledger', to be precise. The primary goal of a blockchain is to implement a ledger, i.e. to process transactions.

In this context it is meaningful to distinguish the following functionalities/properties of a blockchain:

1) time stamping, which provides transaction ordering

2) (independently) ledger functionality

The latter, on its turn, has two properties

1) accounting/bookkeeping of all assets

2) availability of transaction data

And since a rollup is a distributed ledger, it should have these properties.

Let me try to clarify this a bit. In the most general setting, the term consensus just refers to agreement on the state of a distributed system, whatever the functionality is that this system is executing. In the context of a ledger functionality, this consensus is on the transaction order. The consensus on the states of all the assets (account balance) is merely an arithmetic consequence of this transaction order.

However, this is only verifiable if all transactions are public. So when people say 'data availability', in the context of ledgers, this refers to transaction data. And in the context of a rollup, the transaction data must be available, though it can be stored in batches, in compressed form. So any diligent person who is willing to make the effort is able to reconstruct the original transaction order and verify asset correctness.

Now after my nitpicking on terminology, here comes the second interesting part from KF's talk. He argues that if you believe a rollup is just another blockchain, then the adjectives optimistic or zk in the terms optimistic rollup or zk rollup do not make sense. Because if assets are sent from the rollup to the base chain or vice versa, these cross-chain asset transfers are executed by a bridge, not a rollup. In other words, it is the type of proof that is being used by the bridge that can be optimistic or zk (or even an atomic transaction, in some specific cases). That's why he insists: rollups don't use proofs, bridges do.

But I disagree. To justify a bridge, one must assume the existence of cross-chain asset transfer (peg/unpeg), between the rollup and the base layer. But suppose the existence of a rollup, but without cross-chain transactions? Through the simplified definition, a rollup could in theory live alone without an asset related to the mainchain, and so no pegging/unpegging. The rollup token can be completely separate, or it can have multiple tokens. So no need to introduce a bridge (peg/unpeg).

The way I see it, rollups store a copy of their data on the basechain, and the correctness (faithfulness) of this copy is guaranteed (or anchored for lack of a better word) through some trust mechanism: optimistic (fault proof) or zk (validy proof). No bridge involved, IMO.

This is also the way it is described by @VitalikButerin:

https://vitalik.eth.limo/general/2021/01/05/rollup.html, who also answers another question posed by KF: What is a Layer 2? Vitalik considers any technique to optimize L1 transaction a Layer 2, mentioning state channels, plasma, and rollups explicitly as explicit solutions.

This piece was written by Jeroen van de Graaf, Senior Cryptographer at ZKM.

More articles
The Plonky2 Recursive Zero-Knowledge Proof
Recursive Zero-Knowledge Proof (Recursive ZKP) is a type of zero-knowledge proof that utilizes the concept of recursion to generate proofs that are more efficiently verifiable. In some cases, it can even combine multiple proofs into a single proof. This is particularly important in blockchain systems, where efficiency and scalability are crucial.
zkMIPS: What “Security” Means for Our zkVM’s Proofs (Part 1)
Understanding the security properties of ZK proofs is a monumental challenge. Since we are building a universal-purpose zkVM (called zkMIPS, because it combines zero-knowledge proofs with the MIPS instruction set), it’s vital that we consider security within every line of code that we develop.
Reflections on Terminology for Rollups, by Jeroen van de Graaf

One of the more stimulating talks I saw in Bangkok was about terminology for rollups, by @KelvinFichter: https://www.youtube.com/watch?v=c1IbglrscSU. It gave me several new insights, though in the beginning I was quite confused. But after watching the video a couple of times, it all sank in. I'll explain it in my own words.

Kelvin starts his talk with a very powerful definition of a rollup: "A rollup is simply a blockchain that uses another blockchain for ordering and data availability". Obviously 'blockchain' stands for 'distributed ledger', to be precise. The primary goal of a blockchain is to implement a ledger, i.e. to process transactions.

In this context it is meaningful to distinguish the following functionalities/properties of a blockchain:

1) time stamping, which provides transaction ordering

2) (independently) ledger functionality

The latter, on its turn, has two properties

1) accounting/bookkeeping of all assets

2) availability of transaction data

And since a rollup is a distributed ledger, it should have these properties.

Let me try to clarify this a bit. In the most general setting, the term consensus just refers to agreement on the state of a distributed system, whatever the functionality is that this system is executing. In the context of a ledger functionality, this consensus is on the transaction order. The consensus on the states of all the assets (account balance) is merely an arithmetic consequence of this transaction order.

However, this is only verifiable if all transactions are public. So when people say 'data availability', in the context of ledgers, this refers to transaction data. And in the context of a rollup, the transaction data must be available, though it can be stored in batches, in compressed form. So any diligent person who is willing to make the effort is able to reconstruct the original transaction order and verify asset correctness.

Now after my nitpicking on terminology, here comes the second interesting part from KF's talk. He argues that if you believe a rollup is just another blockchain, then the adjectives optimistic or zk in the terms optimistic rollup or zk rollup do not make sense. Because if assets are sent from the rollup to the base chain or vice versa, these cross-chain asset transfers are executed by a bridge, not a rollup. In other words, it is the type of proof that is being used by the bridge that can be optimistic or zk (or even an atomic transaction, in some specific cases). That's why he insists: rollups don't use proofs, bridges do.

But I disagree. To justify a bridge, one must assume the existence of cross-chain asset transfer (peg/unpeg), between the rollup and the base layer. But suppose the existence of a rollup, but without cross-chain transactions? Through the simplified definition, a rollup could in theory live alone without an asset related to the mainchain, and so no pegging/unpegging. The rollup token can be completely separate, or it can have multiple tokens. So no need to introduce a bridge (peg/unpeg).

The way I see it, rollups store a copy of their data on the basechain, and the correctness (faithfulness) of this copy is guaranteed (or anchored for lack of a better word) through some trust mechanism: optimistic (fault proof) or zk (validy proof). No bridge involved, IMO.

This is also the way it is described by @VitalikButerin:

https://vitalik.eth.limo/general/2021/01/05/rollup.html, who also answers another question posed by KF: What is a Layer 2? Vitalik considers any technique to optimize L1 transaction a Layer 2, mentioning state channels, plasma, and rollups explicitly as explicit solutions.

This piece was written by Jeroen van de Graaf, Senior Cryptographer at ZKM.