It’s expensive to transfer data on Ethereum. Unlike centralized cloud storage, where gigabytes of data can be held for very little cost, storing even a few bytes on a blockchain can quickly become expensive.
Roll-ups increase data capacity, allowing Ethereum to process more transactions per second.
In its current form, Ethereum has an unaided processing rate of just 15 transactions per second, whereas large payment companies such as VISA can handle over 65,000. One of the leading initiatives to increase the data throughput on Ethereum is to bundle transactions, rolling them together into a single piece of summarized data. In this way, only one transaction needs storage on the base layer blockchain.
Rolled-up bundles of transactions (“roll-ups”), reduce expenses, increase throughput, and help to provide utility for blockchains with thousands of concurrent users.
Roll-ups assist with scalability efforts by providing a “hybrid” Layer 2 solution. Unlike completely off-blockchain (Layer 2) solutions like Bitcoin Lightning channels or Ethereum Plasma, roll-ups focus on consolidating the computation and state storage away from the blockchain layer.
Nevertheless, rolled-up transactions are still stored on the Layer 1 blockchain. Therefore, because roll-ups do publish some transaction data on the blockchain, a roll-up can be called a “hybrid” Layer 2 solution.
How they work
Ethereum roll-ups create Merkle roots called state roots containing data such as account balances and contract code. Users create transaction batches that the roll-up compresses while preserving data about the previous state root and the new state root generated by the roll-up. Roll-up software can compare data from the original state root and the new state root to ensure they match.
Leaving data on the blockchain means it is easier to reach consensus.
Consensus features make roll-up transactions useful for blockchain service providers: transaction batching, fraud detection, withdrawal initiation, data consolidation, or balance and history queries.
Benefits of Ethereum roll-ups
The most important benefit of roll-ups is raising throughput and lowering transaction fees. Because roll-ups consolidate numerous transactions into a single transaction, more can be processed at a lower cost.
Also, because roll-ups simply batch and compress the original transaction data, a malicious actor would have difficulty interfering with the data contained in the roll-up.
- For example, quantitative traders cannot find out which transactions are clearing within a roll-up and therefore have little incentive to outbid that transaction for trading purposes.
- Similarly, users seeking Miner Extracted Value (MEV) aren’t able to calculate which transactions to reorder when thousands of transactions are lumped together within a single roll-up.
- Roll-ups are more likely to be processed in the order in which they were received and according to standard fee schedules, thus limiting delays when requesting a payment.
- In this way, assuming that the roll-up is fair, the roll-up can help to shield the original, rolled-up transactions from further interference.
Calldata and data blobs
Once a roll-up finishes processing transactions, it sends the compressed transaction data back onto the blockchain layer as calldata. Calldata involves read-only data parameters of transactions, or “calls,” that no one can edit after on-chain publication.
As an upgrade to calldata, developers eventually plan to have roll-ups send transactions back to the blockchain as data blobs. Typical data blobs help databases handle large files like videos or large graphic files.
“Optimistic” roll-ups include fraud proofs that can remember state root history and batch hashes. “Zero knowledge” (ZK) roll-ups include cryptographic proofs that validate the results of processing each batch. ZK roll-ups demand higher Layer 2 gas fees per batch but have lower on-chain fees because they use Zero-Knowledge Succinct Non-Interactive Argument of Knowledge (“ZK-SNARKS”), which have a high computational overhead.
Optimistic rollups are “optimistic” because they assume off-chain transactions are valid and skip publishing validity proofs for each transaction. In contrast, ZK roll-ups always publish cryptographic validity proofs for off-chain transactions.
Vitalik Buterin has expressed his enthusiasm for both types of roll-ups, partly because existing applications can migrate to them without having to write a lot of new code.
Using roll-ups as an average user
Hobbyist users can utilize roll-ups by depositing funds to a roll-up contract. The roll-up uses a sequencer to receive and order transactions. The sender will receive a confirmation from the sequencer when it writes the transactions to the blockchain layer.
Once the batch of transactions has been processed, the funds can be withdrawn. Processing typically happens faster with a ZK roll-up than with an Optimistic roll-up.
There are many organizations working on both types of roll-up contracts. For example, Loopring, zkSync, and Immutable X are building ZK roll-ups.
- Loopring uses its ZK roll-up for its quasi-decentralized exchange and payment system.
- zkSync’s ZK rollup claims to have developed a “user-friendly” ZK roll-up that is already in use by Argent and imToken.
- Immutable X took on the role of supporting crypto-enabled games.
Optimistic roll-ups include Optimism, Arbitrum, and The Boba Network.
- Optimism built a bridge between the Ethereum mainnet and Optimism’s Layer 2 DEX.
- Arbitrum also has a bridge to its off-blockchain DEX.
- The Boba Network aims to reduce optimistic roll-up withdrawal times from one week to a few minutes.
Why roll-ups are important
Layer 2 solutions gained attention due to data limitations in blockchains. The Blocksize War of 2016-2017 showed that although it’s tempting to increase the block size to accommodate more transactions, larger blocks result in increased centralization.
In the end, Bitcoin users didn’t raise the storage capacity of the blockchain in order to keep the cost of running a full node affordable.
Soon after, the Lightning Network was created, built as an off-blockchain solution for scaling Bitcoin’s throughput from just a handful of transactions per second to thousands.
Without off-blockchain (Layer 2) solutions such as Bitcoin’s Lightning Network or Ethereum’s roll-ups, blockchains cannot compete with payment networks like Visa or Mastercard that can handle thousands of transactions per second.
Roll-ups allow blockchains to surpass this throughput, providing immediate benefits to the user, and also allowing for the development of much more advanced crypto applications in the future.