What Is the Difference between a Commitment Scheme and a Zero-Knowledge Proof?

A commitment scheme allows a user to commit to a value without revealing it, with the ability to reveal it later. It guarantees binding (the value cannot be changed) and hiding (the value is secret).

A zero-knowledge proof (ZKP) is more advanced: it allows a user to prove that a statement is true (e.g. "I know the secret value in the commitment") without revealing any information about the statement itself.

ZKPs are often used for privacy and scalability.

Why Is the Inclusion of a “Salt” or “Nonce” Critical in the Commitment Process?
What Is the Difference between a Commitment Scheme and a Zero-Knowledge Proof?
How Is the “Reveal” Transaction Verified by the Smart Contract on the Blockchain?
How Does a Zero-Knowledge Proof (ZKP) Work in the Context of Privacy Coins?
How Does This Concept Relate to a Zero-Knowledge Proof?
What Is a “Zero-Knowledge Proof” and How Can It Address Mempool Transparency?
How Does a ‘Commit-Reveal’ Scheme Achieve Transaction Privacy?
Can a Hash Be Used to Prove Ownership of a Derivative Token without Revealing the Underlying Asset?

Glossar