A zero knowledge protocol or Zero Knowledge Proof (ZKP) in cryptography allows information to be shared and verified without providing data that is not necessary.
We are faced with a procedure that has two agents, the “tester” who says that something is true and the “verifier” who verifies that it really is. Thus, the second can demonstrate the veracity of the information without the need for the first to provide sensitive information.
Therefore, we are facing a data protection system that allows encryption and has also led to a technological revolution. At the end, we will see an example written in 1992 by Louis Guillou, Jean-Jacques Quisquater and Thomas Berson.
Origin of the zero-knowledge protocol
The zero knowledge protocol has more than 50 years of research behind it. Let’s look at some of the most relevant events in its history.
The people you know are on campus
For you to learn much more about finances, investment and the stock market, we have created the Campus of Economipedia. A video course platform, designed for you to learn in an entertaining way with practical and entertaining content.
The first 1,000 subscribers have a 50% discount for life, take advantage of it!
- Cryptography has always been a way to protect sensitive or important information that we don’t want known. The old systems were very simple and based on secret codes.
- With the advent of computers, it became a much more complex problem. However, these allowed the generation of codes based on mathematics that offered greater security in encryption.
- Asymmetric encryption was revolutionized by its creators, Whitfield Diffie and Martin Hellman. These researchers, in 1976, baptized (using their surnames) the algorithm used in Internet security.
- For his part, David Chaum devised the blind signature protocol in 1982, which allowed digital signatures without exchanging sensitive information. In fact, he created a group system that offered the possibility of digitally signing several people.
- Shafi Goldwasser, Silvio Micali and Charles Rackoff were the fathers of the zero knowledge protocol, a technological revolution compared to previous systems.
Characteristics of the Zero Knowledge Protocol
Let’s see some of the characteristics of this protocol that, in addition, are essential requirements for its use.
- Solvency: The probability that the “tester” cheats the verifier is very small, as we will see in the example.
- Whole: If the statement is true, it can be tested and verified with a very high probability, almost infinite.
- The protocol: This allows this exchange of information without providing additional data in the operation. For this reason, the system protects the user’s privacy.
Zero Knowledge Protocol Types
We can classify the zero knowledge protocol, based on the knowledge tests performed, into two groups:
- In the interactive ones, IZKP, both agents must be present during the exchange of information. Normally, the tester sends a message to the verifier, who checks that he is telling the truth. This situation is repeated several times.
- In the non-interactive, NZKP, only the tester must be present. This generates a protocol that can be reviewed later by the verifier.
To go from an interactive test to a non-interactive one, the Fiat-Shamir heuristic is used, which allows one to be transformed into the other. Finally, an example of IZKP is the Chaum-Pedersen Protocol, which allows verifying mathematical calculations with pairs of numbers.
Example, the cave of Ali Baba
Let’s see the example used by Louis Guillou, Jean-Jacques Quisquater and Thomas Berson. Let us remember the story of Ali Baba and her cave and imagine two people (Juan and Ana) in front of her. Of course, only Ana (tester) knows the magic word that opens the door.
The cave is ring-shaped and has two entrance options and in one, B, the door is closed. Ana (the tester) uses a path to enter, chosen at random. Meanwhile, Juan (the verifier) waits outside.
Now Juan enters and tells Ana to return via path B. He does not know the path that Ana took to enter, but now he stands at the crossroads and can know the path that she will take to return. In this way, he will check whether or not Ana knows her magic word without her telling him what it is.
It may happen that she really knows the way to get in and, therefore, to get out. But the other option is that she doesn’t know her and she can only go back through A (she can’t open the door). Thus, the probability that Juan is correct is 50%, which would be due to chance and would not be of much use.
Now let’s repeat the experiment 30 times and the probability of error approaches zero. Therefore, either Ana is honest and does not lie when she says that she knows the way, or she will have a problem returning thanks to the zero knowledge protocol.