Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

The ceno CLI

The ceno command-line interface is the primary way to interact with the Ceno ZKVM. It allows you to build, run, and verify your ZK programs.

The available commands are:

  • cargo ceno build: Compiles a guest program written in Rust into a RISC-V ELF file.
  • cargo ceno info: Provides information about a compiled ELF file, such as its size and segments.
  • cargo ceno keygen: Generates a proving key and a verification key for a guest program.
  • cargo ceno prove: Compiles, runs, and proves a Ceno guest program in one go.
  • cargo ceno run: Executes a guest program.
  • cargo ceno verify: Verifies a proof generated by cargo ceno prove.
  • cargo ceno raw-keygen: A lower-level command to generate keys from a compiled ELF file.
  • cargo ceno raw-prove: A lower-level command to prove a program from a compiled ELF file and a witness.
  • cargo ceno raw-run: A lower-level command to run a program without the full proof generation, useful for debugging.

For detailed usage of each command, you can use the --help flag, for example: cargo ceno run --help. The next sections will explain the three core commands.