Are you an LLM? Read llms.txt for a summary of the docs, or llms-full.txt for the full context.
Skip to content

Quick Start

1. Build the Program

cd program && cargo prove build

Or let it build automatically when running the script.

2. Execute (No Proof)

Test the logic without generating a proof:

cargo run --release -- --execute --ip 8.8.8.8 --exclude FR,US

This runs the ZK circuit locally and outputs the result without generating a cryptographic proof.

3. Generate a Proof (Local)

cargo run --release -- --prove --ip 8.8.8.8 --exclude FR

Local proving is slow (minutes to hours depending on hardware). For production, use the network.

4. Use the Prover Network

The Succinct Prover Network provides fast, distributed proof generation.

Setup:
  1. Generate a key pair: cast wallet new (or export from Metamask)
  2. Get PROVE tokens on Ethereum Mainnet
  3. Deposit PROVE at Succinct Explorer
  4. Configure environment:
cp .env.example .env
SP1_PROVER=network
NETWORK_PRIVATE_KEY=0x...  # Your requester account private key
  1. Run:
cargo run --release -- --prove --ip 8.8.8.8 --exclude FR