Expand description
MASP circuits and proofs.
masp_proofs contains the zk-SNARK circuits used by MASP based on Zcash Sapling, and the APIs for creating
and verifying proofs.
§GPU acceleration
CUDA and OpenCL backends are supported via bellperson. To enable them,
set the RUSTFLAGS environment variable to --cfg $backend, where $backend assumes
the following values:
masp_proof_backend_cudafor CUDA.masp_proof_backend_openclfor OpenCL.
These cfg flags are mutually exclusive.
Re-exports§
Modules§
- circuit
- Implementations of the MASP circuits and personalized Pedersen hash
- constants
- Various constants used for the MASP proofs.
- hashreader
- Abstraction over a reader which hashes the data being read.
- params
embed-verifying-key - prover
local-proverorbundled-prover - Abstractions over the proving system and parameters for ease of use.
- sapling
- Helpers for creating MASP Sapling proofs.
Structs§
- MASP
Parameter Paths download-params - The paths to the Sapling parameter files.
- MASP
Parameters - MASP Sapling groth16 circuit parameters.
Constants§
- MASP_
CONVERT_ BYTES - MASP_
CONVERT_ HASH - MASP_
CONVERT_ NAME - The MASP convert parameters file name.
- MASP_
OUTPUT_ BYTES - MASP_
OUTPUT_ HASH - MASP_
OUTPUT_ NAME - The MASP output parameters file name.
- MASP_
SPEND_ BYTES - MASP_
SPEND_ HASH - MASP_
SPEND_ NAME - The MASP spend parameters file name.
Functions§
- default_
params_ folder directories - Returns the default folder that the MASP proving parameters are located in.
- download_
masp_ parameters download-params - Download the MASP parameters if needed, and store them in the default location. Always checks the sizes and hashes of the files, even if they didn’t need to be downloaded.
- load_
parameters - Load the specified parameters, checking the sizes and hashes of the files.
- parse_
parameters - Parse Bls12 keys from bytes as serialized by
Parameters::write.