What is ZK Proof?

What is ZK Proof? A zero-knowledge proof, also known as a zk protocol, is a way for a prover and a verifier to verify information without revealing the actual information. It allows the prover to demonstrate their knowledge of a specific piece of information, like the solution to a math problem, to the verifier. This type of proof system is commonly used by cryptographers to enhance privacy and security.

Birthing Zero-Knowledge

In 1985, Shafi Goldwasser and Silvio Micali published a paper at MIT introducing the idea of a zero-knowledge proof. They showed that it was feasible to prove certain properties of a number without revealing the number itself or any other related details. Additionally, their paper highlighted the important discovery that the interaction between a prover and a verifier could minimize the information needed to prove a specific theorem.

Completeness & Soundness

A zk proof needs to meet two main requirements: completeness and soundness. Completeness means that the prover can demonstrate their knowledge of the relevant information with a high level of accuracy. Soundness ensures that the verifier can determine reliably whether the prover truly possesses the information. To be considered truly zero-knowledge, the proof must achieve both completeness and soundness without the information being communicated between the prover and the verifier.

Zero-Knowledge in Action

Zero-knowledge proofs are commonly utilized in situations where privacy and security are crucial. For instance, authentication systems can utilize zk proofs to confirm credentials or identities without revealing them directly. As an easy illustration, it can be employed to verify if a person possesses a password for a computer system without the necessity of disclosing the actual password.

Cryptocurrency & Beyond

Zero-knowledge proofs have found a significant application in the realm of cryptocurrency and blockchain technology. Privacy-oriented cryptocurrencies like Zcash utilize a specific type of proof called zk-SNARK to enhance the privacy of blockchain transactions for their users. Ethereum has also incorporated zk-SNARK proofs into its system since the Byzantium update in 2017.