Receives the public values.
Receives the public key \( h \).
Computes the commitment \( c \).
Reveals the commitment by sending the values to Victor.
Before Victor can start the Pedersen commitment scheme, he needs two prime numbers: \( p \) and \( q \).
Use the Left and Right arrow keys to navigate through the steps.
Victor receives the two prime numbers \( p \) and \( q \), as well as the generator \( g_{1} \) of the group \( \mathbb{Z}_{p} \). He uses these to compute another generator \( g \) of order \( q \) from the group \( \mathbb{Z}_{p}^{*} \).
He then sends the prime number \( p \) and the generator \( g \) to Peggy.
Victor chooses a secret key \( a \) and computes the corresponding public key \( h \), which he sends to Peggy.
Victor generates the keys because the commitment scheme is unconditionally hiding and computationally binding.
Peggy commits 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 equal. Only if this is the case can Victor be sure that the received value \( x \) is the same value that Peggy originally committed to.
Computes the generator \( g \):
Computes the public key \( h \):
Receives the commitment \( c \).
Verifies Peggy's commitment to the value \( x \):