Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Groth16
This library implements a verifier for the Groth16 protocol over the BN_254 elliptic curve.
Example
use ;
const TEST_VERIFICATION_KEY: &str = test_data!;
const TEST_PROOF: &str = test_data!;
const TEST_PUBLIC_INPUTS: &str = test_data!;
Shrink Wrap (aka STARK to SNARK)
It also provides the [shrink_wrap][prove::shrink_wrap] function to run a prover Groth16
recursion prover via Docker. After generating a RISC Zero STARK proof, this function can be
used to transform it into a Groth16 proof. This function becomes available when the prove
feature flag is enabled.
IMPORTANT: This feature requires an x86 architecture and Docker installed. Additionally, specific installation steps must be followed to use this functionality.
The recommended way to get a Groth16 proof is to use the Prover trait in the risc0-zkvm
crate. With ProverOpts::groth16() it will produce a Groth16 proof.
Publishing the rzup Component
The groth16 proving on GPU requires a special rzup component be installed. Publishing this component can be done with the following commands: