Quite literally the simplest and most straightforward implementation of an EVM storage proof for SP1.
Copy the example environment file:
cp .env.example .envAnd 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 buildTo run the program without generating a proof:
cd script
cargo run --release -- --executeThis 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 -- --proveTo retrieve your programVKey for your on-chain contract, run the following command:
cargo prove vkey --program fibonacci-program