Expand description

An implementation of a verifiable oblivious pseudorandom function

Structs

  • A BatchDLEQProof is a proof of the equivalence of the discrete logarithm between a common pair of points and one or more other pairs of points.
  • A BlindedToken is sent to the server for signing.
  • A DLEQProof is a proof of the equivalence of the discrete logarithm between two pairs of points.
  • A PublicKey is a committment by the server to a particular SigningKey.
  • A SignedToken is the result of signing a BlindedToken.
  • A SigningKey is used to sign a BlindedToken and verify an UnblindedToken.
  • A Token consists of a randomly chosen preimage and blinding factor.
  • A TokenPreimage is a slice of bytes which can be hashed to a RistrettoPoint.
  • An UnblindedToken is the result of unblinding a SignedToken.
  • The shared VerificationKey for proving / verifying the validity of an UnblindedToken.
  • A VerificationSignature which can be verified given the VerificationKey and message

Constants