Introduction
Zesu is a stateless EVM block executor, written in Zig and designed to run as a zkVMzkVM A zero-knowledge virtual machine that executes a guest program and produces a proof that the execution was correct. Zesu runs as a guest program inside a zkVM to generate block-validation proofs. guest programGuest program A program that runs inside a zkVM. Zesu is a guest program: it executes blocks inside the zkVM, which then produces a proof that the execution was correct.. It re-executes blocks without holding local chain state and runs inside a zkVM that produces block-validation proofs that verifiersVerifier A node that checks an execution proof against the public commitment to confirm correct block execution, without access to the chain state or witness. can use to confirm correct block execution without re-processing any transactions.
Why Zesu exists
The Ethereum roadmap is moving towards zkEVM-based block verification, where a single prover generates a cryptographic proof of block execution that any node can verify cheaply, without re-executing transactions.
Re-executing every transaction in a block is computationally expensive. Block-validation proofs offer an alternative: a verifier can confirm correct block execution by checking a compact cryptographic proof, without re-processing any transactions.
Zesu runs inside a zkVM that produces those proofs. The same proving capability applies to other networks that require EVM execution proofs.
How Zesu works
Zesu receives an SSZSSZ Simple Serialize, the wire format used to encode the stateless input Zesu consumes and the public commitment it produces.-encoded block bundle (execution payload and witnessExecution witness A record of the chain state a block's transactions access, captured as Merkle proofs against the block's pre-state root. The execution client produces it and Zesu consumes it to re-execute a block without holding chain state.) from an execution clientExecution client A stateful node that holds the full chain state, executes or re-executes blocks, and produces the execution witness Zesu needs to re-execute a block statelessly. For example, Besu. that holds the full chain state, then re-executes the block inside a zkVM, which then produces a proof that the execution was correct.
Zesu also builds as a native binary that runs the same execution logic on your host CPU without a zkVM, useful for debugging and validating zkVM integrations.
See Architecture for how Zesu fits into the broader pipeline, and Witness retrieval for how Zesu obtains the data it needs.
Use cases
-
Ethereum L1 zkEVM proving: Provers run Zesu to prove Ethereum mainnet block execution. Provers are a distinct role in the network, separate from validators and block builders.
-
L2 rollups: L2 networks that require EVM execution proofs can use Zesu as their stateless execution client inside a zkVM.
Next steps
Obtain the guest program
Download the Zesu guest program ELF and integrate it into your zkVM host.
Install the native binary
Build the native Zesu binary to debug block execution and validate zkVM integrations on your host CPU.
Architecture
Understand how Zesu fits into the zkEVM pipeline and how its components interact.