[][src]Module bbs::pok_vc

Macros and classes used for creating proofs of knowledge Proof of knowledge of committed values in a vector Pedersen commitment––Commit and Prove scheme.

ProverCommitting will contains vectors of generators and random values. ProverCommitting has a commit method that optionally takes a value as blinding, if not provided, it creates its own. ProverCommitting has a finish method that results in creation of ProverCommitted object after consuming ProverCommitting ProverCommitted marks the end of commitment phase and has the final commitment. ProverCommitted has a method to generate the challenge by hashing all generators and commitment. It is optional to use this method as the challenge may come from a super-protocol or from verifier. It takes a vector of bytes that it includes for hashing for computing the challenge ProverCommitted has a method gen_proof to generate proof. It takes the secrets and the challenge to generate responses. During response generation ProverCommitted is consumed to create Proof object containing the commitments and responses. Proof can then be verified by the verifier.

Modules

prelude

Convenience importing module

Structs

PoKVCError

Wrapper to hold the kind of error and a backtrace

ProofG1

A proof of knowledge of a signature and hidden messages

ProverCommittedG1

Receive or generate challenge. Compute response and proof

ProverCommittingG1

Proof of knowledge of messages in a vector commitment. Commit for each message or blinding factor used

Enums

PoKVCErrorKind

The errors that can happen when creating a proof of knowledge of a signature