Reading: Zero Knowledge Proof – GeeksforGeeks
Example-1: A Colour-blind friend and Two balls :
There are two friends Sachin and Sanchita, out of whom Sanchita is color blind. Sachin has two balls and he needs to prove that both the balls our of unlike color. Sanchita switches the balls randomly behind her back and shows it to Sachin who has to tell if the balls are switched or not. If the balls are of the same color and Sachin had given false information, the probability of him answering correctly is 50 %. When the activeness is repeated several times, the probability of Sachin giving the compensate answer with the false data is significantly abject. hera Sachin is the “ prover ” and Sanchita is the “ voucher ”. Colour is the absolute data or the algorithm to be executed, and it is proved of its soundness without revealing the data that is the coloring material to the voucher. Example-2: Finding Waldo :
Finding Waldo is a game where you have to find a person called Waldo from a snapshot of a huge herd taken from above. Sachin has an algorithm to find Waldo but he doesn ’ t want to reveal it to Sanchita. Sanchita wants to buy the algorithm but would need to check if the algorithm is working. Sachin cuts a small hole on a cardboard and places over Waldo. Sachin is the “ prover ” and Sanchita is the “ voucher ”. The algorithm is proved with zero cognition about it. Properties of Zero Knowledge Proof :
- Zero-Knowledge –
If the statement is true, the verifier will not know that the statement or was. Here statement can be an absolute value or an algorithm.
- Completeness –
If the statement is true then an honest verifier can be convinced eventually.
- Soundness –
If the prover is dishonest, they can’t convince the verifier of the soundness of the proof.
Types of Zero Knowledge Proof :
- Interactive Zero Knowledge Proof –
It requires the verifier to constantly ask a series of questions about the “knowledge” the prover possess. The above example of finding Waldo is interactive since the “prover” did a series of actions to prove the about the soundness of the knowledge to the verifier.
- Non-Interactive Zero Knowledge Proof –
For “interactive” solution to work, both the verifier and the prover needed to be online at the same time making it difficult to scale up on the real world application. Non-interactive Zero-Knowledge Proof do not require an interactive process, avoiding the possibility of collusion. It requires picking a hash function to randomly pick the challenge by the verifier. In 1986, Fiat and Shamir invented the Fiat-Shamir heuristic and successfully changed the interactive zero-knowledge proof to non-interactive zero knowledge proof.
My Personal Notes