[−][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 |