Quite literally the simplest and most straightforward implementation of an EVM storage proof for SP1.
Copy the example environment file:
cp .env.example .env
And set the values:
ETH_RPC_URL
: The RPC URL of an archive Ethereum node. You can use a public provider like Infura or run your own for to flex on the rest of us.- [Optional]
SP1_PRIVATE_KEY
: Your private key for Succinct's prover network. You may also choose to run the program in execution mode.
To build the program, run the following command:
cd program
cargo prove build
To run the program without generating a proof:
cd script
cargo run --release -- --execute
This will execute the program and display the cycle count, which hovers around ~130k cycles.
To generate a core proof for your program:
cd script
cargo run --release -- --prove
To retrieve your programVKey
for your on-chain contract, run the following command:
cargo prove vkey --program fibonacci-program