Rollups are structures that have been designed as a way of scaling Ethereum’s capacity to process transactions and data. They group a bunch of tasks and compute them offchain, only posting the result of these transactions to Ethereum, allowing more data to be piled up on L1 (layer one). Ethereum co-founder Vitalik Buterin has been pushing rollups as part of the future of Ethereum scaling since 2020, and with the proposal of Danksharding, its scaling roadmap has become rollup-centric.
Rollups and the Scalability Problem
Ethereum, one of the first-generation smart contracts-enabled blockchains, has been facing a scalability problem due to its limited capabilities for processing transactions and data. In its base layer, Ethereum can process approximately 15 transactions per second (TPS), which was enough in its first stages but is now insufficient given the popularity of the blockchain.
Rollups attack this problem by taking part of the blockchain burden offchain, while maintaining a connection with the parent chain (in this case, Ethereum). Rollups allow processing to be run offchain, only returning a simple result to the parent chain. This achieves two objectives: it lets more data be posted in the chain by other rollups and allows more transactions to be processed quickly at a lesser cost, albeit with a security and decentralization tradeoff.
They are called rollups because most use compression techniques to “roll up” a group of transactions and only output the necessary data to the main chain. While this means that the parent chain will still be constrained if the data output is large, it still helps due to the mentioned compression.
According to Ethereum co-founder Vitalik Buterin, an Ethereum base-layer ERC20 token transfer costs ~45,000 gas, while an ERC20 token transfer in a rollup takes up 16 bytes of on-chain space and costs under 300 gas. Also, migrating a mainnet smart contract to a rollup is possible without too many changes.
Different Kinds of Rollups
Depending on the approach each one takes to validate its data, rollups can be classified into two main groups: Optimistic and ZK-rollups.
Optimistic rollups always assume that transactions realized and proposed are valid and invite users to provide proof of fraud to demonstrate the opposite. If there is a dispute, a fraud-proof is weighted against the party that submitted the data to the Ethereum chain, and the loser gets penalized, seeing their funds slashed. Optimism, Arbitrum, and Base are optimistic rollups.
ZK-rollups rely on cryptography proofs verified by a smart contract on top of the Ethereum network. These validity proofs are updated in each batch of transactions and can be easily verified compared to their optimistic siblings. This makes Zk-rollups cheaper than optimistic rollups. Loopring and Zksync are part of this group.
A Rollup-Centric Roadmap
Ethereum scalability plans included an L1 solution based on sharding, meaning that data would be divided and processed in parallel to allow more transactions with lower transaction fees. However, this design has been substituted for a rollup-centric sharding approach called danksharding, in which the main chain expands to allow more data to be included, allowing rollups to take advantage of this space.
This is the consequence of Vitalik’s Buterin’s rollup-centric scaling proposal, which seeks to turn Ethereum into “a single high-security execution shard that everyone processes, plus a scalable data availability layer.” Buterin estimates that if all protocols and transactions migrate to rollups, Ethereum could hit ~3,000 TPS.
However, with the upcoming improvements derived from the implementation of EIP-4844 (proto-danksharding), which allows rollups to post more data to the parent chain and establishes a separate fee market, the capacity of Ethereum could peak at a theoretical max of ~100,000 TPS.
What do you think about rollups and their importance for Ethereum scaling? Tell us in the comments section below.