commitreveal
Commit-reveal is a two-phase protocol used in cryptography and distributed systems to allow a party to commit to a value without revealing it, and later reveal the value to prove what was committed. In a typical setup, the committer chooses a value m and some randomness r, computes a commitment C = Commit(m, r) (often a cryptographic hash like C = H(m || r) or a dedicated commitment scheme), and publishes C. In the reveal phase, the committer discloses (m, r). Any verifier recomputes Commit(m, r) and checks that it matches C. If so, the reveal is valid.
Two core properties characterize a commitment scheme used in commit-reveal: hiding and binding. Hiding means the
Variants range from non-interactive schemes (where a single message suffices) to interactive protocols that involve multiple
A simple example is a sealed-bid auction: bidders compute C = H(bid || nonce) and publish C. Later,