scalability remains a persistent and formidable challenge in Blockchain. Scalability refers to a blockchain network’s ability to adapt to increasing workloads and expand its capacity to accommodate growth effectively. This encompasses the network’s prowess in efficiently processing transactions and storing data as it scales, all while maintaining optimal transaction speeds and performance. Leading blockchain networks like Ethereum and Bitcoin have grappled with scalability hurdles due to their global reach and the significant volume of transactions they handle. Their decentralized nature and consensus mechanisms, such as Proof of Work, often impose limitations on transaction processing, leading to slower confirmations and elevated fees during peak network activity, impeding widespread blockchain adoption. Diverse solutions have been proposed, from block size adjustments to off-chain innovations and sharding, each with its trade-offs, typically concerning security and decentralization. This is where Blockchain Rollups come into play, serving as Layer 2 protocols that offload transaction data from the main chain (Layer 1), alleviating congestion and significantly bolstering transaction capacity while preserving the blockchain’s security and decentralization.
What Are Rollups?
Rollups, which are layer-two scaling solutions, play a crucial role in enhancing the efficiency and scalability of blockchain networks while upholding their security and decentralization. The term “rollup” derives from the practice of grouping transactions into batches, or “rolls,” before finalizing them on the mainchain of a blockchain like Ethereum.
The primary benefit of rollups lies in their ability to significantly reduce gas fees and accelerate transaction speeds while preserving compatibility with smart contracts and composability. This empowers users and developers to enjoy a superior user experience and fosters innovation on the blockchain without compromising its fundamental principles.
However, rollups also pose certain challenges, particularly in the context of diverse rollup implementations, each with its unique approach to off-chain transaction verification and dispute resolution. The two main categories of rollups, Optimistic Rollups and ZK-Rollups, diverge in their mechanisms and come with distinct advantages and drawbacks.
Understanding Optimistic Rollups
Optimistic Rollups get their name from an optimistic assumption: transactions are presumed valid by default unless proven otherwise. This approach involves three key components: the smart contract, the sequencer, and the validators. The smart contract acts as the intermediary between the Ethereum mainnet and the second layer, receiving transaction data from the sequencer in the form of calldata for subsequent verification.
Transactions are executed off-chain by a centralized entity known as a sequencer. The sequencer publishes this data on the Ethereum main chain without requiring any proof of transaction validity or correctness, relying instead on the promise that transactions will be available for verification if necessary.
Validator networks continually monitor the sequencer’s activities, identifying any transactions that violate Ethereum’s rules. These invalid transactions can be challenged through the submission of fraud proofs on-chain, containing evidence of why and how the transaction is invalid. Successful challenges lead to the reversal of the invalid transaction and penalties for the sequencer.
ZK-Rollups, on the other hand, rely on a cryptographic technique called zero-knowledge proofs, where transactions are considered valid once proven to be so. These transactions are executed off-chain by a network of nodes that generate transaction data and proofs of validity, subsequently submitted to the Ethereum mainnet as calldata.
ZK-Rollups consist of three primary elements: transactions, state commitments, and zero-knowledge validity proofs. Users sign transactions, which are then sent to the second layer for block and batch creation. State commitments are snapshots of the current state of the second-layer blockchain, hashed and stored on the Ethereum mainnet.
Zero-knowledge validity proofs act as cryptographic guarantees that transactions in a batch adhere to Ethereum’s rules and do not disrupt the blockchain’s state.
Users initiate transactions by signing and sending them to the operator, who executes the transactions according to Ethereum’s rules, updates the state, and generates state commitments and zero-knowledge proofs for each batch of blocks. Anyone can verify the validity of this data using the proofs and state commitments without requiring extensive computational resources or state transitions.
Advantages And Disadvantages of Optimistic Rollups
The main advantage of optimistic rollups is the high potential throughput and low latency. Transactions are executed almost instantly off-chain and don’t have to wait for on-chain confirmation. They also preserve smart contract compatibility and composability with Ethereum since they use the same virtual machine (EVM) and state transition rules.
The main disadvantage of optimistic rollups is the long withdrawal period, which is required for users to exit the system safely. Users need to wait for a sufficient amount of time to ensure that no fraud proofs are submitted against their transactions. Otherwise, their funds could be at risk if an invalid transaction affects their balance. This waiting period can be more than one week but can be circumvented by using specialized bridges, which allow faster withdrawals.
Advantages and Disadvantages of ZK-Rollups
The main advantage of ZK-rollups is also high potential throughput and low latency. Just like with optimistic rollups, transactions are executed off-chain and ultimately secured by the L1.
The main disadvantage of ZK-rollups is the complex cryptography and engineering structure of the rollups themselves. Consequently, they are more expensive and harder to implement than optimistic rollups. They also may not support all types of smart contracts or functionalities that Ethereum offers.
Optimistic Rollups vs ZK-Rollups
Here is a quick overview table comparing optimistic and ZK-rollups according to different attributes:
Optimistic vs ZK-rollups: Scalability and Costs
One of the main goals of rollup solutions is to increase the throughput of transactions on Ethereum and reduce the gas fees for users. Optimistic rollups and ZK-rollups achieve this goal by batching transactions and periodically submitting them to the mainnet. However, they have different trade-offs in terms of scalability and costs.
Optimistic rollups can handle more transactions per second than ZK-rollups. On the other hand, they require more gas to submit their batches to the main chain. Zk-rollups can save more gas than optimistic rollups, but they also have higher computational costs to generate their zero-knowledge proofs.
Additionally, optimistic rollups have lower entry barriers for developers and users than ZK-rollups. They support any Ethereum smart contract without modification and do not require special hardware or software. ZK-rollups, on the other hand, require developers to rewrite their smart contracts in a specific language and users to install a compatible wallet or browser extension.
Optimistic vs ZK-rollups: Security
Another important factor to consider when comparing rollup solutions is their security and how they protect users’ funds and data from malicious actors. Optimistic rollups and ZK-rollups have different security risks and assumptions.
Optimistic rollups are vulnerable to censorship attacks, where a malicious sequencer or validator can delay or prevent valid transactions from being submitted to the main chain. They also rely on users and validators to monitor the side chain and challenge any fraudulent transactions within a certain time window. If no one challenges a fraudulent transaction, it can be finalized on the main chain and cause users to lose their funds.
ZK-rollups are immune to censorship attacks, as they do not require anyone to submit or verify transactions on the side chain. They also do not rely on users or validators to challenge fraudulent transactions thanks to the ZK-proofs guaranteeing their validity before they are accepted by the main chain. However, ZK-rollups have a trusted setup assumption, where a group of participants must generate and destroy some secret parameters used to create the zero-knowledge proofs. If these parameters are compromised or leaked, they can be used to create fake proofs and steal users’ funds.
Optimistic vs ZK-rollups: Latency
Latency refers to the time it takes for a transaction to be confirmed and finalized on the main chain. Optimistic rollups and ZK-rollups have different latency characteristics depending on their verification methods.
Optimistic rollups have low latency for users, as they can receive instant confirmation from the L2 without waiting for the main chain. However, they also have high latency for finality, as they have to wait for a challenge period to expire before their transactions are finalized on the main chain. This challenge period can vary from minutes to hours depending on the network congestion and security parameters.
ZK-rollups have high latency for users, as they have to wait for the zero-knowledge proofs to be generated and verified by the side chain before receiving confirmation. However, they also have low latency for finality, as they do not have a challenge period and their transactions are finalized on the main chain as soon as they are submitted. This can take from seconds to minutes depending on the block time and gas price.
Optimistic vs ZK-rollups: Privacy
Privacy refers to the ability of users to conceal their identities and transaction details from third parties. The different verification methods of optimistic rollups and ZK-rollups mean they have different privacy features.
Optimistic rollups have low privacy for users, as they have to reveal their transactions and signatures on the side chain and the main chain. Anyone can observe and analyze these transactions and link them to users’ addresses and identities.
ZK-rollups have high privacy for users, as they use zero-knowledge proofs to hide their transactions and signatures on the side chain and the main chain. Only the sender and receiver of a transaction can know its details and no one can link it to users’ addresses or identities. However, ZK-rollups also have some privacy limitations, such as requiring users to register their public keys on the sidechain before sending or receiving transactions. This can expose some information about users’ activity patterns and balances.
Optimistic vs ZK-rollups: Validity Proof
Validity proofs prove that a batch of transactions on the L2 is correct and consistent with the L1.
Optimistic rollups use fraud proofs as their validity proof. They assume the transactions are correct by default and only verify them if someone challenges them. This not only allows them to publish blocks frequently and cheaply but also introduces a risk of invalid transactions being accepted if no one challenges them.
ZK-rollups use zero-knowledge proofs as their validity proof. They do not assume anything about the transactions and verify them using cryptographic evidence. Every transaction is valid and final, however, this approach requires more computation and time to generate the proofs.
Both validity-proof types have advantages and disadvantages in terms of scalability and security. The choice between them depends on the specific requirements and trade-offs of each application. Fraud proofs are faster and more flexible, but also more vulnerable to attacks or errors. Zero-knowledge proofs are more secure and efficient, but also more complex and limited.
Optimistic vs ZK-rollups: Readiness for DeFi
Optimistic and ZK-rollups differ in how well they adapt to the functionality required for DeFi.
Optimistic rollups have a similar execution model to the Ethereum Virtual Machine (EVM), allowing them to run most of the existing smart contracts and protocols with minimal changes. Moreover, several projects already use optimistic rollups. The Optimism ecosystem is home to Uniswap, Synthetix, Sushiswap and many other DeFi protocols.
ZK-rollups are less compatible with the EVM, limiting their functionality and expressiveness. They also have fewer projects using them, although some are emerging, such as ZigZag Exchange, Loopring and zkSync.
Both solutions are growing in their support for DeFi applications. Optimistic rollups are focusing on improving their security and efficiency, while ZK-rollups work on enhancing their EVM compatibility and usability. In the long run, both of them will likely be popular in the DeFi space.
Optimistic vs ZK-rollups: Programming Easiness
Programming easiness is a measure of how simple and convenient it is to develop and deploy applications on a scaling solution. Optimistic and ZK-rollups differ in how simple and convenient it is to develop and deploy applications for their respective ecosystems.
Optimistic rollups are fully compatible with the Ethereum Virtual Machine (EVM), meaning developers can use the same languages, frameworks, and tools they use on Ethereum. Thanks to fraud proofs, no special knowledge or skills are needed to program on them.
ZK-rollups are not fully compatible with the EVM, so developers have to adapt their code and use different languages, frameworks, and tools specific to ZK-rollups. That requires more advanced knowledge and skills.