Crate snarkvm_wasm[−][src]
Modules
algorithms | |
blake2s | |
blake2s | |
bowe_hopwood_pedersen | |
bowe_hopwood_pedersen_compressed | |
bowe_hopwood_pedersen_parameters | |
commitment_path | |
commitment_tree | |
curves | |
data_structures | Data structures used by a polynomial commitment scheme. |
domain | This module contains an |
elligator2 | |
error | Errors pertaining to query sets. |
errors | |
errors | |
evaluations | A polynomial represented in evaluations form. |
fields | |
fixed_base | |
fp6_2over3 | |
fp6_3over2 | |
fq | |
fq | |
fq | |
fq | |
fq2 | |
fq3 | |
fq6 | |
fq6 | |
fq12 | |
fr | |
fr | |
fr | |
fr | |
g1 | |
g1 | |
g2 | |
g2 | |
gm17 | An implementation of the Groth-Maller simulation extractable zkSNARK. GM17: https://eprint.iacr.org/2017/540 |
groth16 | An implementation of the |
group | |
group | |
group_parameters | |
kzg10 | The core [KZG10] construction. |
marlin_pc | Polynomial commitment scheme from [KZG10] that enforces strict degree bounds and (optionally) enables hiding commitments by following the approach outlined in [CHMMVW20, “Marlin”]. |
merkle_path | |
merkle_tree | |
optional_rng | A random number generator that bypasses some limitations of the Rust borrow checker. |
parameters | |
parameters | |
parameters | |
parameters | |
pedersen | |
pedersen | |
pedersen_compressed | |
pedersen_compressed | |
pedersen_parameters | |
pedersen_parameters | |
polynomial | Work with sparse and dense polynomials. |
schnorr | |
schnorr_parameters | |
sha256 | |
sonic_pc | Polynomial commitment scheme based on the construction in [KZG10], modified to obtain batching and to enforce strict degree bounds by following the approach outlined in [MBKM19, “Sonic”] (more precisely, via the variant in [Gabizon19, “AuroraLight”] that avoids negative G1 powers). |
tests_field | |
traits | |
variable_base |
Macros
field | |
impl_bytes | Helper macro to forward all derived implementations to the ToBytes and FromBytes traits |
uint_impl_common |
Structs
Ancestors | |
BW6_761G1Parameters | |
BW6_761Parameters | |
BatchLCProof | A proof of satisfaction of linear combinations. |
Blake2s | |
Blake2sCommitment | |
Bls12_377G1Parameters | |
Bls12_377G2Parameters | |
Bls12_377G2Parameters | |
Bls12_377Parameters | |
BoweHopwoodPedersenCRH | |
BoweHopwoodPedersenCRHParameters | |
BoweHopwoodPedersenCompressedCRH | |
CommitmentMerklePath | |
CommitmentMerkleTree | |
ConstraintCounter | Constraint counter for testing purposes. |
DensePolynomial | Stores a polynomial in coefficient form. |
EdwardsParameters | |
EdwardsParameters | |
Elligator2 | |
EvaluationDomain | Defines a domain over which finite field (I)FFTs can be performed. Works only for fields that have a large multiplicative subgroup of size that is a power-of-2. |
Evaluations | Stores a polynomial in evaluation form. |
EvaluationsVar | An allocated version of |
FixedBaseMSM | |
Fp2 | |
Fp3 | |
Fp12 | An element of Fp12, represented by c0 + c1 * v |
Fp256 | |
Fp320 | |
Fp384 | |
Fp768 | |
Fp832 | |
Fq2Parameters | |
Fq3Parameters | |
Fq6Parameters | |
Fq6Parameters | |
Fq12Parameters | |
FqParameters | |
FqParameters | |
FqParameters | |
FqParameters | |
FrParameters | |
FrParameters | |
FrParameters | |
FrParameters | |
FrParameters | |
GroupEncryption | |
GroupEncryptionParameters | |
GroupEncryptionPublicKey | |
LabeledCommitment | A commitment along with information about its degree bound (if any). |
LabeledPointVar | A labeled point variable, for queries to a polynomial commitment. |
LabeledPolynomial | A polynomial along with information about its degree bound (if any), and the maximum number of queries that will be made to it. This latter number determines the amount of protection that will be provided to a commitment for this polynomial. |
LinearCombination | A labeled linear combinations of polynomials. |
LinearCombination | This represents a linear combination of some variables, with coefficients
in the field |
LinearCombinationVar | An allocated version of |
MerklePath | Stores the hashes of a particular path (in order) from leaf to root.
Our path |
MerkleTree | |
Namespace | This is a “namespaced” constraint system which borrows a constraint system (pushing a namespace context) and, when dropped, pops out of the namespace context. |
OptionalVec | |
PCCheckRandomDataVar | A collection of random data used in the polynomial commitment checking. |
PedersenCRH | |
PedersenCRHParameters | |
PedersenCommitment | |
PedersenCommitmentParameters | |
PedersenCompressedCRH | |
PedersenCompressedCommitment | |
Polynomial | Stores a polynomial in coefficient form. |
QuerySetVar | An allocated version of |
SchnorrOutput | |
SchnorrParameters | |
SchnorrPublicKey | |
SchnorrSignature | |
SparsePolynomial | Stores a sparse polynomial in coefficient form. |
TestConstraintSystem | Constraint system for testing purposes. |
Variable | Represents a variable in a constraint system. |
VariableBaseMSM |
Enums
ConstraintFieldError | |
ConstraintVariable | Either a |
DenseOrSparsePolynomial | Represents either a sparse polynomial or a dense one. |
Error | The error type for |
FieldError | |
Index | Represents the index of either a public variable (input) or a private variable (auxiliary). |
LCTerm | A term in a linear combination. |
LegendreSymbol | |
LinearCombinationCoeffVar | A coefficient of |
SignedIntegerError | |
SynthesisError | This is an error that could occur during circuit synthesis contexts, such as CRS generation, proving or verification. |
UnsignedIntegerError |
Constants
BOWE_HOPWOOD_CHUNK_SIZE | |
BOWE_HOPWOOD_LOOKUP_SIZE | |
G1_GENERATOR_X | G1_GENERATOR_X = 81937999373150964239938255573465948239988671502647976594219695644855304257327692006745978603320413799295628339695 |
G1_GENERATOR_X | G1_GENERATOR_X = 6238772257594679368032145693622812838779005809760824733138787810501188623461307351759238099287535516224314149266511977132140828635950940021790489507611754366317801811090811367945064510304504157188661901055903167026722666149426237 |
G1_GENERATOR_Y | G1_GENERATOR_Y = 241266749859715473739788878240585681733927191168601896383759122102112907357779751001206799952863815012735208165030 |
G1_GENERATOR_Y | G1_GENERATOR_Y = 2101735126520897423911504562215834951148127555913367997162789335052900271653517958562461315794228241561913734371411178226936527683203879553093934185950470971848972085321797958124416462268292467002957525517188485984766314758624099 |
G2_GENERATOR_X | |
G2_GENERATOR_X | G2_GENERATOR_X = 6445332910596979336035888152774071626898886139774101364933948236926875073754470830732273879639675437155036544153105017729592600560631678554299562762294743927912429096636156401171909259073181112518725201388196280039960074422214428 |
G2_GENERATOR_X_C0 | G2_GENERATOR_X_C0 = 233578398248691099356572568220835526895379068987715365179118596935057653620464273615301663571204657964920925606294 |
G2_GENERATOR_X_C1 | G2_GENERATOR_X_C1 = 140913150380207355837477652521042157274541796891053068589147167627541651775299824604154852141315666357241556069118 |
G2_GENERATOR_Y | |
G2_GENERATOR_Y | G2_GENERATOR_Y = 562923658089539719386922163444547387757586534741080263946953401595155211934630598999300396317104182598044793758153214972605680357108252243146746187917218885078195819486220416605630144001533548163105316661692978285266378674355041 |
G2_GENERATOR_Y_C0 | G2_GENERATOR_Y_C0 = 63160294768292073209381361943935198908131692476676907196754037919244929611450776219210369229519898517858833747423 |
G2_GENERATOR_Y_C1 | G2_GENERATOR_Y_C1 = 149157405641012693445398062341192467754805999074082136895788947234480009303640899064710353187729182149407503257491 |
Traits
Assignment | |
ConstraintSynthesizer | Computations are expressed in terms of rank-1 constraint systems (R1CS).
The |
ConstraintSystem | Represents a constraint system which can have new variables allocated and constrains between them formed. |
Field | The interface for a generic field. |
FieldParameters | A trait that defines parameters for a prime field. |
Fp2Parameters | |
Fp3Parameters | |
Fp12Parameters | |
Fp256Parameters | |
Fp320Parameters | |
Fp384Parameters | |
Fp768Parameters | |
Fp832Parameters | |
One | |
PCCheckVar | Describes the interface for a gadget for a |
PCCommitment | Defines the minimal interface of commitments for any polynomial commitment scheme. |
PCCommitterKey | Defines the minimal interface of committer keys for any polynomial commitment scheme. |
PCPreparedCommitment | Defines the minimal interface of prepared commitments for any polynomial commitment scheme. |
PCPreparedVerifierKey | Defines the minimal interface of prepared verifier keys for any polynomial commitment scheme. |
PCProof | Defines the minimal interface of evaluation proofs for any polynomial commitment scheme. |
PCRandomness | Defines the minimal interface of commitment randomness for any polynomial commitment scheme. |
PCUniversalParams | Defines the minimal interface for public params for any polynomial commitment scheme. |
PCVerifierKey | Defines the minimal interface of verifier keys for any polynomial commitment scheme. |
PedersenSize | |
PolynomialCommitment | Describes the interface for a polynomial commitment scheme that allows
a sender to commit to multiple polynomials and later provide a succinct proof
of evaluation for the corresponding commitments at a query set |
PrepareGadget | Define the minimal interface of prepared allocated structures. |
PrimeField | The interface for a prime field. |
SquareRootField | The interface for a field that supports an efficient square-root operation. |
ToConstraintField | Types that can be converted to a vector of |
Zero |
Functions
batch_inversion | |
double_sha256 | |
evaluate_query_set | Evaluate the given polynomials at |
prng | |
sha256 | |
sha256d_to_u64 |
Type Definitions
BW6_761 | |
Bls12_377 | |
EdwardsAffine | |
EdwardsAffine | |
EdwardsProjective | |
EdwardsProjective | |
Evaluations |
|
Fq | |
Fq | |
Fq | |
Fq | |
Fq2 | |
Fq3 | |
Fq6 | |
Fq6 | |
Fq12 | |
Fr | |
Fr | |
Fr | |
Fr | |
Fr | This field is the scalar field (Fr) of BLS12-377. |
G1Affine | |
G1Affine | |
G1Projective | |
G1Projective | |
G2Affine | |
G2Affine | |
G2Projective | |
G2Projective | |
MerkleTreeDigest | |
PolynomialLabel | Labels a |
QuerySet |
|
SynthesisResult |