Modular Blockchain Insights: From Rollup to SCP
Layer 2 scaling is the eternal theme of Ethereum, and the shape of Layer 2 on Ethereum has undergone a long evolution, and finally Rollups have become the mainstream solution.
The Sequencers of Rollups will first sort the transactions, pack the blocks, form a soft consensus on the transactions, and then submit them to Layer 1 to be verified by Layer 1 and reach a hard consensus.
Layer 1 will verify the data integrity and state validity of the blocks committed by Layer 2, but certainly not by re-running the transactions; to do that would amount to no scaling. This is why lazy verification methods like OP (Optimistic) and ZK (Zero-knowledge proof) are available.
- Optimistic means that I would not directly verify it as Layer 1, and any third party can come and verify, telling me if something is wrong. I will then verify, and afterwards enforce the penalty (OP Rollup locks Sequencers’ deposits in the contracts deployed on Ethereum). If after the window period no one tells me something is wrong, I assume it is right.
- ZK means that you generate a proof of validity and I verify the proof of validity. If this proof is correct, then the data is complete and the state is valid. In other words, verifying this proof is equivalent to recalculating the entire block, but the cost of verification is much less than recalculating the block.
We would like to collectively call OP Rollups and ZK Rollups as Classic Rollups.
Rollup in a Modular Blockchain Perspective
Modular Blockchain is a pop concept as of late. People talk about it, which gives us a brand new perspective on studying and designing a blockchain. Several new types of Rollup have also emerged with its spirits.
Celestia, the creator of Modular Blockchain, divides the blockchain into a hierarchy:
- Consensus Layer: Make the transactions final and reach a consensus on the latest status;
- Storage Layer: Permanently, immutably store transactions, guaranteeing the accessibility of historical transactions;
- Execution Layer: Calculate the latest status based on transactions;
- Settlement Layer:It refers to how the execution layer submits transactions and states to the Consensus and Storage Layers, and ensures the integrity of the transaction data and the validity of the state.Conversely to say, how the consensus and storage layers verify the integrity and validity of the state of the transactions submitted by the execution layer.
The Settlement Layer is a raw concept. It’s better to call it ‘Settlement Strategy’ instead of ‘Settlement Layer’. Because it is easy to misunderstand the term “layer” and think that there is some kind of entity. If you try to ask: Which chain is the settlement layer of a Rollup? Then you have already fallen into this misunderstanding. You don’t need to get hung up on which chain the settlement layer is on, it’s just a strategy.
On the other hand, the connection between Consensus Layer and Storage Layer is very close. Only if both of them are safe, the blockchain can be safe.
The following picture can describe the concept of Modular Blockchain better.
Rollup Stripping the Storage Layer: Dual Layer 1-style Rollup
The Security Layer of classic Rollups is unified, with the Storage Layer and Consensus Layer on the same Layer 1. Inspired by the concept of Modular Blockchain, some Layer 2 solutions have tried to strip out the Storage Layer, such as Celestium.
By using Ethereum as the Consensus Layer and Celestia as the Storage Layer, Celestium uses this split to reduce the use of expensive Ethereum storage resources in favour of the cheaper Celestia to store transaction data. This does create a cheaper Rollup, but the trust assumption increases compared to a classic Rollup – Celestia must be secure. As an L2, Celestium’s security is dependent on two L1s.
With the introduction of danksharding, Ethereum itself will have a Storage Layer as efficient as Celestia, and Rollups of all kinds stripped of Storage Layers may then come back to classic Rollups.
Sovereign Rollup: Rollup that isn’t a real Rollup
Sovereign Rollup is also a new concept under the context of modularity. Sovereign Rollup publishes transaction data to the Storage Layer, which does not validate or reject the transaction data it submits. This means that the Storage Layer stores a ‘dirty ledger’ with both valid and invalid data. It is up to Sovereign Rollup to define exactly what is valid and what is invalid. In other words, Sovereign Rollup is the Interpretation Layer of the data, defining the rules of data interpretation, and different rules of interpretation will result in different kinds of forks.
According to the claims of Celestia, the creator of the concept of Sovereign Rollup, the core feature of Sovereign Rollup is Autonomous Forks. But this ‘Autonomous Forks’ feature actually needs a strong consensus from its community to realise it, or the meaning will be misinterpreted as ‘The Project parties can change the rule of data interpretation at any time’.
This means, Consensus Layer of Sovereign Rollup is itself. Its security actually has no attachment to Storage Layer, so it’s not a Layer 2 but an independent Layer 1 that outsources its data availability. Seriously, it’s not suitable to name it Rollup, but maybe it should be called Roll-Beside or Rollout…
According to author’s opinion, the blockchain that is independently responsible for its own security is Layer 1, and the one that relies on another Layer 1 for security is Layer 2 (the relied Layer 1 is not limited to Ethereum). Following this definition, Sovereign Rollup is not Layer 2. In addition, Light Node Sidechains, Plasma, and Validium are all not Layer 2, but a Layer 1 cluster with interoperability.
Storage-based Consensus Paradigm (SCP)
Since Sovereign Rollup does not inherit the security of the storage layer because the data interpretation rules are in itself instead of Storage Layer, can we imagine that the data interpretation rules are also submitted to the Storage Layer? This is the core idea of the Storage-based Consensus Paradigm (SCP) proposed by Arweave.
Layer 2 commits the program code to the Storage Layer, and then commits the transaction data to the Storage Layer continuously, so that anyone can re-run the transaction data with the program code of the Storage Layer and get a consistent and up-to-date state. This enables the inheritance of security from the Storage Layer, thus making the Storage Layer the Layer 1. So, although the SCP-based Layer 2 is not called Rollup, it is a real, asinine Rollup.
This is a new Rollup, which we can call it Rollup 2.0. In my opinion, Arweave can give SCP a more fitting name: Code-Contained Rollup, driving it into the narrative of Rollup.
For SCP applications, although Layer 1 also stores a dirty ledger, invalid data is not indexed by the nodes. Compared with classic Rollups, SCP achieves secure attachment to Layer 1 without requiring Layer 1 to perform any computation (including data validation and state computation). This brings two key features.
- Layer 2’s performance is virtually unlimited by Layer 1’s. Layer 2 can achieve a performance of TPS comparable to Web2.
- Layer 2’s VM environment is not limited by Layer 1. Because Layer 1 is only responsible for storage and does not need to have any compatibility with Layer 2 at the computational level. In this way, based on SCP, developers can use any language they are familiar with to develop Layer 2, and it is not even necessary to use the blockchain structure.
The downside of the SCP paradigm is that interoperability is somewhat constrained: SCP can be upgraded by redeployment, although it cannot realise autonomous fork.
- The dirty ledger strategy results in applications or ledgers that interoperate with it being unable to determine the validity of a transaction based solely on the proof that the transaction exists on the chain – instead it has the need to re-run the entire transaction data off-chain.
- While custom VMs give developers freedom, it is difficult to establish trust-minimising cross-ledger bridges between different VM environments
Nevertheless, SCP is a very promising paradigm. For some Web2 applications that want to convert to the Web3 version, interoperability is not as urgently needed as it is for DeFi applications; the key is a low-cost migration.
All the points Web2 applications need to change is:
- Migrate to an account system based on a digital signature
- Store data on chain
Things above can make them real Web3 applications, enabling them to core features of Web3 applications:
- Users enter freely with censorship-resistance
- Data is immutable. Users’ assets are unalienable。
SCP applications can be developed based on any blockchain with permanent storage. But as a dedicated storage public chain, Arweave will be more advantageous because the cost of storage is relatively low and Arweave already provides many development tools, resources and infrastructure for SCP application development, in fact, there is already a sizable SCP application ecosystem on Arweave.
Conclusion
We’ve compared the classic Rollup and the new Rollup under Modular Blockchain context, which can be concluded as the following picture:
Overall:
- Classic Rollup, or Rollup 1.0, still dominates, but with further competition for Ethereum resources. Many Rollups will choose a cheaper data availability layer, although there will be a certain compromise in security.
- Danksharding can improve the storage performance of Ethereum, and there is hope that the data availability layer of Rollups will return to Ethereum, but the implementation cycle of Danksharding will be long.
- Sovereign Rollup is not a real Rollup, nor is it Layer 2, but an independent Layer 1 that outsources data availability.
- SCP is a new type of Rollup that deserves wide attention in the industry, I would like to call it Rollup 2.0, and it is the best path for Web2 applications to migrate to Web3. It is likely to bring us a wave of Cambrian explosion of Web3 applications.
Author: MiddleX @ PAKA.FUND
Translator: Viya @ PermaDAO
Reviewer: Xiaosong HU @ PermaDAO
加入 PermaDAO,建设 Web3!一起做 Buidler
Join our