---
# System prepended metadata

title: Rollups

---

# Rollups

- Main idea
    - Store only the transaction data to layer1 and put all execution and storage off-chain
- Method
    - Deploy smart contracts on layer1
- Types
    - Optimistic rollups
        - Fraud proof
        - Idea
            - Assume the posted data is valid (optimistic)
            - If not valid, others can submit fraud proof
                - There is a dispute resolution system to disincentivize bad actors
                - Only when there is a dispute, the tx will be executed on layer1 to check its validity
                - The one (Alice) who submits tx to layer1 needs to provide a bond (ETH)
                - The one (Bob) who submits fraud proof also needs to provide a bond (ETH)
                - If the fraud does exists, Alice’s bond will be slashed. Otherwise, Bob’s bond will be slashed
                - Dispute resolution rarely happens because of the incentive mechanism
        - Projects 
            - Optimism 
                - Uniswap, synthetix
            - Arbitrum
                - Uniswap, sushi, augur, aave, chainlink
        - Difference
            - Optimism
                - Run whole tx on layer1 to check validity
                - Handling tx ordering (MEV)
                    - The ordering of tx can be auctioned off
            - Arbitrum
                - Use an interactive multi-round model, narrow down the scope of dispute, and potentially execute a smaller portion of tx on layer1 to check validity
                - Smart contracts can be larger than the max contract size on layer1
                - Handling tx ordering (MEV)
                    - Running a centralized sequencer to order tx (plan to decentralize in the future)
    - ZK rollups
        - Validity proof
        - Idea
            - Use zero knowledge proof
            - When submitting a tx batch, a zk-snark proof, which can be quickly verified by the layer1 smart contracts, is posted.
            - Invalid zk-snark proof can be rejected straight away
        - Projects 
            - Loopring, Hermez, Aztec (privacy focused), StarkWare (used by dyed)
- Differences
    - Optimistic rollups
        - Have to give enough time for ppl to submit fraud proofs before finalizing a tx
            - Withdrawal from layer2 to layer1 is slow (7 days)
            - Fast withdrawal that charges a small fee: Hop protocol, Connext
        - 99% of the EVM smart contracts can be ported without making changes
    - Zk rollups
        - Fast withdrawal since the validity proof is submitted with the tx batch (already proven valid)
        - Difficult to make it EVM compatible 
            - Zksync is working on this
        - More computational heavy
            - Nodes that compute zk proof have to be high spec machines
                - hard to run for normal ppl
- Similarity 
    - Can scale ethereum from 15 TPS to 1000-4000 TPS
        - Can even be higher if allocated more space on layer1
        - If integrated with ETH 2.0 (save more data with sharding), can scale to 100k TPS
- Challenges
    - Different rollup solutions are not compatible
    - Fractional liquidity 
        - Split across layer1 and different layer2 solutions
- Notes
    - If centralized exchanges enable easy withdrawal and deposit between rollup chains, the adoption can raise quickly
    - Will rollup threaten side chains?
        - No, side chains have lower fee than rollups

<iframe width="560" height="315" src="https://www.youtube.com/embed/7pWxCklcNsU" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

