Crate signature_ps[][src]

Expand description

This crate implements the Pointcheval Saunders signature as described in https://eprint.iacr.org/2015/525.pdf and https://eprint.iacr.org/2017/1197.pdf

Structs

A PS blind signature structurally identical to Signature but is used to help with misuse and confusion.

Contains the data used for computing a blind signature and verifying proof of hidden messages from a prover

This struct represents an Issuer of signatures or Signer. Provided are methods for signing regularly where all messages are known and 2PC where some are only known to the holder and a blind signature is created.

The generators contain a generator point for each message that is blindly signed and two extra. See section 4.2 in https://eprint.iacr.org/2015/525.pdf and https://eprint.iacr.org/2017/1197.pdf

Proof of Knowledge of a Signature that is used by the prover to construct PoKOfSignatureProof.

The actual proof that is sent from prover to verifier.

A Prover is whomever receives signatures or uses them to generate proofs. Provided are methods for 2PC where some are only known to the prover and a blind signature is created, unblinding signatures, verifying signatures, and creating signature proofs of knowledge with selective disclosure proofs

The public key contains a generator point for each message that is signed and two extra. See section 4.2 in https://eprint.iacr.org/2015/525.pdf and https://eprint.iacr.org/2017/1197.pdf

The secret key contains a field element for each message that is signed and two extra. See section 4.2 in https://eprint.iacr.org/2015/525.pdf and https://eprint.iacr.org/2017/1197.pdf

A Pointcheval Saunders signature

This struct represents an Verifier of signatures. Provided are methods for generating a context to ask for revealed messages and the prover keep all others hidden.