Reproducible Builds
Overview
When deploying SP1 Helios in production, it's important to ensure that the program used when generating proofs is reproducible.
Prerequisites
You first need to install the cargo prove toolchain.
Ensure that you have the latest version of the toolchain by running:
sp1up
Confirm that you have the toolchain installed by running:
cargo prove --version
Verify the SP1 Helios binary
To build the SP1 Helios binary, first ensure that Docker is running.
docker ps
Then build the binaries:
cd program
# Builds the SP1 Helios binary using the corresponding Docker tag, output directory and ELF name.
cargo prove build --docker --tag v3.0.0 --output-directory ../script --elf-name sp1-helios-docker
Now, verify the binaries by confirming the output of vkey
matches the vkeys on the contract. The vkey
program outputs the verification key
based on the ELF in /elf
.
cargo run --bin vkey --release