Enum proof_system::statement::Statement
source · pub enum Statement<E: Pairing> {
Show 44 variants
PoKBBSSignatureG1Prover(PoKBBSSignatureG1Prover<E>),
PedersenCommitment(PedersenCommitment<E::G1Affine>),
VBAccumulatorMembership(VBAccumulatorMembership<E>),
VBAccumulatorNonMembership(VBAccumulatorNonMembership<E>),
SaverProver(SaverProver<E>),
SaverVerifier(SaverVerifier<E>),
BoundCheckLegoGroth16Prover(BoundCheckLegoGroth16Prover<E>),
BoundCheckLegoGroth16Verifier(BoundCheckLegoGroth16Verifier<E>),
R1CSCircomProver(R1CSCircomProver<E>),
R1CSCircomVerifier(R1CSCircomVerifier<E>),
PoKPSSignature(PoKPSSignatureStatement<E>),
PoKBBSSignature23G1Prover(PoKBBSSignature23G1Prover<E>),
BoundCheckBpp(BoundCheckBpp<E::G1Affine>),
BoundCheckSmc(BoundCheckSmc<E>),
BoundCheckSmcWithKVProver(BoundCheckSmcWithKVProver<E>),
BoundCheckSmcWithKVVerifier(BoundCheckSmcWithKVVerifier<E>),
PublicInequality(PublicInequality<E::G1Affine>),
DetachedAccumulatorMembershipProver(DetachedAccumulatorMembershipProver<E>),
DetachedAccumulatorMembershipVerifier(DetachedAccumulatorMembershipVerifier<E>),
DetachedAccumulatorNonMembershipProver(DetachedAccumulatorNonMembershipProver<E>),
DetachedAccumulatorNonMembershipVerifier(DetachedAccumulatorNonMembershipVerifier<E>),
KBUniversalAccumulatorMembership(KBUniversalAccumulatorMembership<E>),
KBUniversalAccumulatorNonMembership(KBUniversalAccumulatorNonMembership<E>),
VBAccumulatorMembershipCDHProver(VBAccumulatorMembershipCDHProver<E>),
VBAccumulatorMembershipCDHVerifier(VBAccumulatorMembershipCDHVerifier<E>),
VBAccumulatorNonMembershipCDHProver(VBAccumulatorNonMembershipCDHProver<E>),
VBAccumulatorNonMembershipCDHVerifier(VBAccumulatorNonMembershipCDHVerifier<E>),
KBUniversalAccumulatorMembershipCDHProver(KBUniversalAccumulatorMembershipCDHProver<E>),
KBUniversalAccumulatorMembershipCDHVerifier(KBUniversalAccumulatorMembershipCDHVerifier<E>),
KBUniversalAccumulatorNonMembershipCDHProver(KBUniversalAccumulatorNonMembershipCDHProver<E>),
KBUniversalAccumulatorNonMembershipCDHVerifier(KBUniversalAccumulatorNonMembershipCDHVerifier<E>),
KBPositiveAccumulatorMembership(KBPositiveAccumulatorMembership<E>),
KBPositiveAccumulatorMembershipCDH(KBPositiveAccumulatorMembershipCDH<E>),
PoKBBSSignatureG1Verifier(PoKBBSSignatureG1Verifier<E>),
PoKBBSSignature23G1Verifier(PoKBBSSignature23G1Verifier<E>),
PoKBDDT16MAC(PoKOfMAC<E::G1Affine>),
PoKBDDT16MACFullVerifier(PoKOfMACFullVerifier<E::G1Affine>),
PedersenCommitmentG2(PedersenCommitment<E::G2Affine>),
VBAccumulatorMembershipKV(VBAccumulatorMembershipKV<E::G1Affine>),
VBAccumulatorMembershipKVFullVerifier(VBAccumulatorMembershipKVFullVerifier<E::G1Affine>),
KBUniversalAccumulatorMembershipKV(KBUniversalAccumulatorMembershipKV<E::G1Affine>),
KBUniversalAccumulatorMembershipKVFullVerifier(KBUniversalAccumulatorMembershipKVFullVerifier<E::G1Affine>),
KBUniversalAccumulatorNonMembershipKV(KBUniversalAccumulatorNonMembershipKV<E::G1Affine>),
KBUniversalAccumulatorNonMembershipKVFullVerifier(KBUniversalAccumulatorNonMembershipKVFullVerifier<E::G1Affine>),
}
Expand description
Type of relation being proved and the public values for the relation
Variants§
PoKBBSSignatureG1Prover(PoKBBSSignatureG1Prover<E>)
Statement used by prover for proof of knowledge of BBS+ signature
PedersenCommitment(PedersenCommitment<E::G1Affine>)
For proof of knowledge of committed elements in a Pedersen commitment in group G1
VBAccumulatorMembership(VBAccumulatorMembership<E>)
For proof of knowledge of an accumulator member and its corresponding witness
VBAccumulatorNonMembership(VBAccumulatorNonMembership<E>)
For proof of knowledge of an accumulator non-member and its corresponding witness
SaverProver(SaverProver<E>)
Used by prover to create proof of verifiable encryption using SAVER
SaverVerifier(SaverVerifier<E>)
Used by verifier to verify proof of verifiable encryption using SAVER
BoundCheckLegoGroth16Prover(BoundCheckLegoGroth16Prover<E>)
Used by prover to create proof that witness satisfies publicly known bounds [min, max) using LegoGroth16
BoundCheckLegoGroth16Verifier(BoundCheckLegoGroth16Verifier<E>)
Used by verifier to verify proof that witness satisfies publicly known bounds [min, max) using LegoGroth16
R1CSCircomProver(R1CSCircomProver<E>)
Used by prover to create proof that witness satisfies constraints given by an R1CS (generated by Circom), using LegoGroth16
R1CSCircomVerifier(R1CSCircomVerifier<E>)
Used by verifier to verify proof that witness satisfies constraints given by an R1CS (generated by Circom), using LegoGroth16
PoKPSSignature(PoKPSSignatureStatement<E>)
For proof of knowledge of Pointcheval-Sanders signature.
PoKBBSSignature23G1Prover(PoKBBSSignature23G1Prover<E>)
Statement used by prover for proof of knowledge of BBS signature
BoundCheckBpp(BoundCheckBpp<E::G1Affine>)
For bound check using Bulletproofs++ protocol
BoundCheckSmc(BoundCheckSmc<E>)
For bound check using set-membership check based protocols
BoundCheckSmcWithKVProver(BoundCheckSmcWithKVProver<E>)
Used by the prover for bound check using set-membership check with keyed verification based protocols
BoundCheckSmcWithKVVerifier(BoundCheckSmcWithKVVerifier<E>)
Used by the verifier for bound check using set-membership check with keyed verification based protocols
PublicInequality(PublicInequality<E::G1Affine>)
To prove inequality of a signed message with a public value
DetachedAccumulatorMembershipProver(DetachedAccumulatorMembershipProver<E>)
DetachedAccumulatorMembershipVerifier(DetachedAccumulatorMembershipVerifier<E>)
DetachedAccumulatorNonMembershipProver(DetachedAccumulatorNonMembershipProver<E>)
DetachedAccumulatorNonMembershipVerifier(DetachedAccumulatorNonMembershipVerifier<E>)
KBUniversalAccumulatorMembership(KBUniversalAccumulatorMembership<E>)
KBUniversalAccumulatorNonMembership(KBUniversalAccumulatorNonMembership<E>)
VBAccumulatorMembershipCDHProver(VBAccumulatorMembershipCDHProver<E>)
VBAccumulatorMembershipCDHVerifier(VBAccumulatorMembershipCDHVerifier<E>)
VBAccumulatorNonMembershipCDHProver(VBAccumulatorNonMembershipCDHProver<E>)
VBAccumulatorNonMembershipCDHVerifier(VBAccumulatorNonMembershipCDHVerifier<E>)
KBUniversalAccumulatorMembershipCDHProver(KBUniversalAccumulatorMembershipCDHProver<E>)
KBUniversalAccumulatorMembershipCDHVerifier(KBUniversalAccumulatorMembershipCDHVerifier<E>)
KBUniversalAccumulatorNonMembershipCDHProver(KBUniversalAccumulatorNonMembershipCDHProver<E>)
KBUniversalAccumulatorNonMembershipCDHVerifier(KBUniversalAccumulatorNonMembershipCDHVerifier<E>)
KBPositiveAccumulatorMembership(KBPositiveAccumulatorMembership<E>)
KBPositiveAccumulatorMembershipCDH(KBPositiveAccumulatorMembershipCDH<E>)
PoKBBSSignatureG1Verifier(PoKBBSSignatureG1Verifier<E>)
Statement used by verifier for proof of knowledge of BBS+ signature
PoKBBSSignature23G1Verifier(PoKBBSSignature23G1Verifier<E>)
Statement used by verifier for proof of knowledge of BBS signature
PoKBDDT16MAC(PoKOfMAC<E::G1Affine>)
For proof of knowledge of BDDT16 MAC.
PoKBDDT16MACFullVerifier(PoKOfMACFullVerifier<E::G1Affine>)
Statement used by verifier for proof of knowledge of BDDT16 MAC when it knows the secret key
PedersenCommitmentG2(PedersenCommitment<E::G2Affine>)
For proof of knowledge of committed elements in a Pedersen commitment in group G1
VBAccumulatorMembershipKV(VBAccumulatorMembershipKV<E::G1Affine>)
For proof of membership in VB accumulator in keyed verification model.
VBAccumulatorMembershipKVFullVerifier(VBAccumulatorMembershipKVFullVerifier<E::G1Affine>)
Statement used by verifier for proof of membership in VB accumulator when it knows the secret key
KBUniversalAccumulatorMembershipKV(KBUniversalAccumulatorMembershipKV<E::G1Affine>)
For proof of membership in KB universal accumulator in keyed verification model.
KBUniversalAccumulatorMembershipKVFullVerifier(KBUniversalAccumulatorMembershipKVFullVerifier<E::G1Affine>)
Statement used by verifier for proof of membership in KB universal when it knows the secret key
KBUniversalAccumulatorNonMembershipKV(KBUniversalAccumulatorNonMembershipKV<E::G1Affine>)
For proof of non-membership in KB universal accumulator in keyed verification model.
KBUniversalAccumulatorNonMembershipKVFullVerifier(KBUniversalAccumulatorNonMembershipKVFullVerifier<E::G1Affine>)
Statement used by verifier for proof of non-membership in KB universal when it knows the secret key