Crate saffron

Source

Modules§

blob
cli
commitment
diff
encoding
This file handles bytes <-> scalar conversions for Saffron. Unless specified in the function’s name, conversions are made over F::MODULUS_BIT_SIZE / 8 bytes (31 bytes for Pallas & Vesta). Functions that convert over F::size_in_bytes() are suffixed with _full (this size is 32 bytes for Pallas & Vesta fields elements)
env
folding
Folding version of the read prover.
read_proof
This module defines the read proof prover and verifier. Given a query vector q, a vector of data d, and a commitment to this data C, the prover will return an answer a and a proof that the answers correspond to the data committed in C at the specified indexes in the query.
storage
This file handles the storage gestion for the state replicator ; The data are stored on disk in a file, and this file provide functions to read the whole file (because producing a read proof requires the whole polynomial) and to update dispersed chunks of data.
storage_proof
This module defines the storage proof prover and verifier. Given a set of commitments C_i and a challenge α the storage proof is just an opening to the combined commitment ∑α^i C_i. Given that α is computed by hashing some external challenge secret (e.g. derived from a hash of a block), and from a hash of the commitments itself, this in essense proves knowledge of the opening to all the commitments C_i simultaneously. Given that α is computed by hashing some external challenge secret (e.g. derived from a hash of a block), and from a hash of the commitments itself, this in essense proves knowledge of the opening to all the commitments C_i simultaneously.
utils

Constants§

SRS_SIZE

Type Aliases§

BaseField
Curve
CurveFqSponge
CurveFrSponge
CurveParameters
ProjectiveCurve
ScalarField