scroll


tl; dr


  • scroll is an evm-equivalent zk-rollup to scale ethereum.
  • the core piece is the zkevm, used to prove correctness of evm execution in layer 2.
  • architecture:
    • scroll node: constructs l2 blocks from user txs, commit them to the ethereum base layer, and passes messgaes between l1 and l2.
    • roller network: generates the zkevm validity proofs to prove that txs are executed correctly.
    • rollup and bridge contracts: provides da for scroll txs, verifies zkevm validity proofs, and allows users to move assets between ethereum and scroll.


  • the rollers serve as provers in the network, responsible for generating validity for the rollup.
    • rollers utilize accelerators such as gpus, fpgas, asics.
    • a roller first converts the execution trace from the coordinator to circuit witnesses.
    • then generates proofs for each of the zkevm circuits.
    • finally, it uses proof aggregation to combine proofs from multiple zkevm circuits into a single block proof.


  • workflow of scroll's rollup:



cool resources