Peggy

Parameters known by Peggy:

Receives the public values

Receives the public key \( h \)

Computes the commitment \( c \):

Opens the commitment

Step y/x

Before Victor can start the Pedersen commitment scheme he needs two prime numbers \( p \) and \( q \):

  • \( p \)
  • \( q \)

Use the left and right arrow keys to navigate.

Victor receives the two prime numbers \( p \) and \( q \) and the generator \( g_{1} \) of the group \( \mathbb{Z}_{p} \) which is used to compute another generator \( g \) of order \( q \) from the group \( \mathbb{Z}_{p}^{*} \).

He sends the prime number \( p \) and the generator \( g \) to Peggy.

Victor chooses the secret key \( a \) and computes the public key \( h \) which he sends to Peggy.

Victor generates the keys because the commitment scheme is unconditional hiding and computational binding.

Peggy makes a commitment to the value \( x \) by first choosing a random integer \( r \) and then computing the commitment \( c \), which she sends to Victor.

Peggy reveals the two values \( x \) and \( r \) to Victor, i.e. she opens the commitment.

Victor then verifies the commitment \( c \) by checking that the two values are equals. Only if this is the case is the received value \( x \) the same value that Peggy made a commitment to.

Victor

Parameters known by Victor:

Computes the generator \( g \):

Computes the public key \( h \):

Receives the commitment \( c \)

Verifies Peggy's commitment to the value \( x \):