One article to understand the classification of Rollup

In addition to the well-known Validity Rollup and Optimistic Rollup, what are the different Rollup classification methods?

Written by: NIC Lin

Prior knowledge:

Understand how Rollup works and the data availability (Data Availability) issue of Rollup

Recap on Rollup

Regardless of whether it is Validity Rollup or Optimistic Rollup, they will upload data to L1 (such as Ethereum), so that everyone can access the data of the Rollup by accessing L1, and use this to derive the latest status of Rollup, such as Alice has 10 USDT and Bob has 5 USDT.

Those that do not upload data to L1 do not belong to Rollup (such as Validium, zkPorter or Arbitrum AnyTrust), and they are not the object of this article. In addition, this article will not discuss how Rollup verifies the validity of the state, that is, the difference between Validity Rollup and Optimistic Rollup.

The first part of this article will introduce Sovereign Rollup. Sovereign Rollup, as its name suggests, is a Rollup with autonomy. Rollup version upgrades or hard forks all happen on Sovereign Rollups, unlike the Rollups that everyone is familiar with now (hereinafter referred to as Classic Rollups). The location of the fork is not on Classic Rollup, but on the L1 Rollup contract: the L1 Rollup contract performs version upgrades through multi-signature wallets or governance voting. That is, a contract on L1 determines which version a Rollup should use at present. And if there is an attack on the Rollup in L1, such as attacking the governance mechanism or attacking the Rollup contract itself, the Rollup will be affected. On the contrary, because Sovereign Rollup simply regards L1 as a place to store data, all Sovereign Rollup members can decide which version to use currently under the chain, and no matter what happens to L1, as long as L1 itself is not attacked (such as Re-org or chain shutdown), Sovereign Rollup will not be affected.

The second part will introduce Based Rollup. Based Rollup removes the role of Sequencer, and hands over the transaction sorting power to L1 miners, Validators, MEV Searchers, etc. It not only makes sorting transactions more decentralized, but also simplifies the design and removes many components of the system.

Sovereign Rollup

Data Availability Layer and Settlement Layer

Classic Rollup, such as Arbitrum, Optimism, StarkNet, etc., not only regards Ethereum (L1) as a place to store data (that is, Data Availability Layer), but also regards Ethereum as a Settlement Layer: settlement is performed on Ethereum, and the state of L2 is (That is, the balance of each address in L2) is written to L1.

Why do you need to write the L2 state to L1? Because in this way, L2 and L1 can exchange information and assets: L1/L2 dApps can synchronize information and cooperate, L1’s ETH can be safely transferred between L1/L2, and L2’s ARB/OP can also be safely transferred between L1/L2. transfer between L2.

L1 can read the status of L2, and can safely transmit messages, and L1/L2 can communicate with each other

The Sovereign Rollup removes the Settlement Layer (or turns itself into a Settlement Layer), and simply uses L1 as the Data Availability Layer.

L1 only reads the block or transaction data that Sovereign Rollup puts in L1, but does not know the latest status of L2, so there is no way to communicate

Why remove the Settlement Layer? There are different grounds or causes:

  1. As mentioned at the beginning, if Rollup's Settlement Layer is in L1, it will be affected by L1, whether it is to be upgraded or attacked
  2. Maybe L1 itself does not support complex calculations to record the Rollup state and use this state to communicate information assets. For example, on Celestia, you can only simply put data on it, or on Bitcoin, you can It can only perform calculations with limited capabilities, and such L1 cannot become a Settlement Layer
  3. Perhaps the Rollup itself does not need another chain as the Settlement Layer, it has its own native tokens and ecology, and does not need to exchange assets with L1

How Sovereign Rollup works

Sovereign Rollup simply uses L1 as the Data Availability Layer, uploads data to L1, and relies on L1 to ensure that the data is available and the order of the data will not change. Sovereign Rollup nodes rely on reading and interpreting the data on L1 to calculate the latest state of the Sovereign Rollup. "Interpretation and calculation" actually represent Sovereign Rollup's consensus rules and State Transition Function: how to filter blocks and transactions that conform to the Sovereign Rollup format and rules from L1 data, how to verify these blocks and transactions after screening, and verify Then how to execute these transactions to calculate the latest state.

The Sovereign Rollup node screens out its own blocks from the L1 data, and interprets and calculates the latest status

If two Sovereign Rollup nodes are of different versions, they may interpret different data or calculate different latest states, and therefore these two nodes will not be on the same chain, what they see is actually One of two forked chains.

  • Different versions of nodes may get different statuses, and they are forked to different chains *

This is actually the same as running different versions of Ethereum nodes, the two versions may not be the same chain. For example, after the hard fork, those who forget to update the node version or are unwilling to update the node version will naturally stay on the original chain (such as ETC, ETHPoW), while those who update the node version will be on the new chain (ETH ).

Readers here should also know why it is called Sovereign Rollup, because in Sovereign Rollup, everyone can choose the node version and interpret the data according to the (social) consensus of their own group. If there is a disagreement in the Sovereign Rollup community today like ETHPoW vs ETH, it means that everyone goes their own way and chooses different node versions to interpret the data, but the data is still the original one and has not changed.

*Note: Of course, after the fork, the nodes of their respective versions will upload data that conforms to their own rules to L1, and then both sides will directly filter out the data uploaded by the other party. *

At the middle point in time, the following nodes forked to version v1.1.2, and then each other’s blocks were independent

What Sovereign Rollups are there?

There are currently no examples of Sovereign Rollups, but as the modular design trend of the blockchain becomes more and more popular, there will definitely be many Sovereign Rollups. For example, the modular framework Rollkit that Celestia is designing can create a Sovereign Rollup through the Cosmos SDK. Unlike the original chain (an L1) built using the Cosmos SDK, which would need to implement the Tendermint consensus to determine transaction ordering, the Sovereign Rollup can use a single Sequencer to order transactions like the current common Rollup, eliminating the need for multiple consensus nodes and relying on its Security concerns and the resources consumed to execute the consensus algorithm. And the Sovereign Rollup is to upload the transaction data to Celestia, but at the same time, because it is a Sovereign Rollup, it will not be affected by L1 (such as upgrading or being attacked).

*Note 1: Rollkit later also supported using Bitcoin as a Data Availability Layer. Such a Rollup can inherit the security of Bitcoin but the throughput will be limited to Bitcoin. *

*Note 2: Basically, Celestia-based chains can be called Sovereign Rollup. *

Or suppose that Arbitrum no longer uses Ethereum as a settlement layer, no longer needs to exchange information or assets with Ethereum, and simply regards Ethereum as a place to store data, then such Arbitrum will also become a Sovereign Rollup.

Settlement Rollup

There are also definitions like Settlement Rollup, but it is basically Sovereign Rollup, and then this Sovereign Rollup will also be the Settlement Layer of other chains. That is to say, if there are other chains on a Sovereign Rollup, and other Rollups regard it as a Settlement Layer, this Sovereign Rollup can be called a Settlement Rollup.

*Note: To be able to become the Settlement Layer of other chains, it must have basic smart contract functions, so that the two sides can exchange information and assets. *

If Ethereum is changed to upload all chain information to Celestia today, then such Ethereum will be a Sovereign Rollup on Celestia, and it will also be a Settlement Rollup, because there are many chains on Ethereum, and many Rollups regard it as a Settlement Layer.

Ethereum is the Sovereign Rollup on Celestia and also the Settlement Rollup

Note: Perhaps in the future, everyone will gradually become familiar with modularization and the functions of different Layers, and no longer start from the perspective of Rollup, and terms such as Sovereign Rollup or Settlement Rollup will gradually disappear. Anyway, the important thing is how to design your chain (whether it is L1, L2, L3 etc.), how to make trade-offs, and choose suitable construction tools for different layers.

Based Rollup

Another recently emerged Rollup classification is Based Rollup, or known as L1-sequenced Rollup. Based Rollup's Based refers to sorting transactions. Rollup is not handed over to a Sequencer (or multiple Sequencers) to sort transactions, but completely handed over to L1 miners, Validators or MEV Searchers, etc. to sort transactions. When Classic Rollup uploads data to L1, the L1 Rollup contract will check whether it is uploaded by a qualified Sequencer, while Based Rollup has no restrictions and anyone can upload it.

Anyone can upload Blocks of Based Rollup

The biggest advantage of Based Rollup is that there is no Sequencer, so there is no single point of failure or even need to worry about Sequencer having complete transaction ordering power, that is, there is no need to worry about Sequencer crashing and causing chain shutdown or deliberately not accepting transactions from specific users , or worry that the Sequencer will maliciously capture the user's MEV. Based Rollup fully inherits the degree of decentralization of L1 in block generation.

Based Rollup has the following advantages:

The cost for users to leave Rollup is very low

Generally, Rollup will design a Force Inclusion mechanism or Escape Hatch mechanism so that users can directly install themselves in L1 without using Sequencer in order to prevent Sequencer from intentionally not accepting specific user transactions or Sequencer outages that prevent users from leaving Rollup. transactions into the L2 block. However, the first cost of such a design is high cost. Users have to pay the L1 miner's fee to insert transactions. The second cost is that transactions inserted from L1 may affect the process of Sequencer packaging L2 blocks: it is possible that L1 will insert The transaction will invalidate the transaction that the Sequencer intends to collect into the L2 block. For example, the transaction inserted by Alice in L1 transfers all the money to Bob, resulting in the failure of the transaction in which Alice transfers money to Carol in the L2 block.

After receiving Alice's transaction, Sequencer confirms the transaction result and puts it into the next block

But Alice sends another transaction directly to L1 through Force Inclusion, causing the Alice transaction received by Sequencer to fail

In order to prevent the transaction inserted by L1 from affecting the process of Sequencer packaging L2 blocks, Arbitrum will not take effect immediately when the transaction inserted by L1 needs to wait for Sequencer to actively apply for the transaction to be included in the latest block before it will take effect, or if Sequencer does not respond, It will take effect after a period of time. Optimism allows the transaction to take effect immediately. If the transaction inserted by L1 affects the transaction in the L2 block, Sequencer must find a way to deal with it. You can read this introduction to learn more about the comparison between Arbitrum and Optimism in processing L1 placement transactions.

Much simpler design

Based Rollup has less of the Sequencer's role than general Rollup, and thus less hardware burden (no need to worry about Sequencer machine load) and any mechanism to make sorting transactions fairer (such as the mechanism of decentralized Sequencer). Then there is no need for the Force Inclusion/Escape Hatch mechanism, including L1 related contracts and related off-chain tools to facilitate users to place transactions in L1 by themselves.

But Based Rollup also has some disadvantages:

No transaction confirmation service in advance

With Sequencer, Sequencer can quickly tell the user the result of his transaction execution. As long as the user trusts the Sequencer, the transaction result can be confirmed immediately without waiting for the transaction to be uploaded to L1.

In Based Rollup, Alice waits until the transaction is uploaded to L1 before she believes that her transaction is included, and she has to wait for at least one L1 block

In general Rollup, if Alice believes that the Sequencer will accept her transaction, she can immediately confirm whether the transaction will be accepted

Protocol loses MEV revenue source

MEV is no longer handed over to Sequencer to check and extract, but to L1, so L2 itself has no way to obtain MEV benefits. MEV revenue can be captured by designing a bidding mechanism for block production rights, but it will relatively increase the threshold for L1 participants to participate in block production, which will reduce the degree of decentralization, and the introduction of a bidding mechanism will also bring a certain degree of complexity.

References and recommended further reading

Sovereign Rollup

Based Rollup

View Original
The content is for reference only, not a solicitation or offer. No investment, tax, or legal advice provided. See Disclaimer for more risks disclosure.
  • Reward
  • Comment
  • Share
Comment
0/400
No comments