What is Zero Knowledge Proof in Cryptography (ZKP) ?
Zero-knowledge proof or zero-knowledge protocol is a method by which one party (the prover) can prove to another party (the verifier) that they know a value x, without conveying any information apart from the fact that they know the value x.
The essence of zero-knowledge proofs is that it is trivial to prove that one possesses knowledge of certain information by simply revealing it; the challenge is to prove such possession without revealing the information itself or any additional information. In simple terms, it helps in maintaining privacy in a data-based world.
A zero-knowledge proof must satisfy three properties...
Completeness : A honest prover will always be able to prove correctness of a true statement.
Soundness : A cheater can never prove a false statement to be correct to an honest verifier.
Zero-knowledge : If the statement is true, no verifier learns anything other than the fact that the statement is true.