Options
All
  • Public
  • Public/Protected
  • All
Menu

Class CompactGenericChaumPedersenProof

General-purpose Chaum-Pedersen proof object, demonstrating that the prover knows the exponent x for two tuples (g, g^x) and (h, h^x), without revealing anything about x. This is used as a component in other proofs.

param c

hash(a, b, and possibly other state) (aka challenge)

param r

w + xc (aka response)

Hierarchy

  • CompactGenericChaumPedersenProof

Index

Constructors

Properties

Methods

Constructors

Properties

Methods

  • Checks that this Chaum-Pedersen proof certifies that the prover knew an x, such that (g, g^x) and (h, h^x) share the same exponent x, without revealing x. Part of the proof is a challenge constant. By suppressing this check, "fake" proofs can be validated. Useful when doing disjunctive proofs.

    Parameters

    • g: ElementModP

      See above.

    • gx: ElementModP

      See above.

    • h: ElementModP

      See above.

    • hx: ElementModP

      See above.

    • hashHeader: CryptoHashable[] = []

      Optional additional values to include in the hash challenge computation hash

    • checkC: boolean = true

      If false, the challenge constant is not verified. (default: true)

    • suppressWarnings: boolean = false

    Returns boolean

    true if the proof is valid

  • Produces a generic Chaum-Pedersen proof that two tuples share an exponent, i.e., that for (g, g^x) and (h, h^x), it's the same value of x, but without revealing x. This generic proof can be used as a building-block for many other proofs.

    There's no need for g^x and h^x in this particular computation.

    Parameters

    • w: ElementModQ

      An element in Q, typically derived from the seed, used to randomize the generation of the proof

    • g: ElementModP

      Any valid element in the subgroup of P

    • h: ElementModP

      Any valid element in the subgroup of P

    • x: ElementModQ

      Any element in Q

    • hashHeader: CryptoHashable[] = []

      Optional additional values to include in the start of the challenge computation hash.

    Returns CompactGenericChaumPedersenProof

Generated using TypeDoc