What is Zero Knowledge Proof (ZKP)?

HdYt...JRtF
15 Feb 2024
39

The concept of Zero Knowledge Proof (ZKP), or zero knowledge proof in Turkish, can be explained simply as a cryptographic protocol in which person A can prove the accuracy of a data to person B by simply stating that the data he has is correct, without revealing the information that makes up the data.

The concept of ZKP was first expressed in the article titled “The Knowledge Complexity of Interactive Proof Systems” published by Shafi Goldwasser and Silvio Micali in 1985. In the zero knowledge proof method, there are two parties: the prover and the verifier. However, no details about the content of the data are disclosed between the two ends of the transaction. In other words, the prover does not give any input to the verifier other than the information that the data he transmits is correct. The logic behind this concept is based on the idea of proving information without revealing it. Thus, the level of confidentiality is maximized.

The prover must prove the accuracy of the data. On the other hand, the verifier must be convinced that he received the correct information. For this, the verifier subjects the prover to a series of tests that can be performed only if he knows all the information correctly. By repeating this interaction many times, the verifier tests whether the prover really knows the information or is guessing. The verifier asks random questions to the prover many times until he is convinced, that is, puts him to the test. No information is disclosed in this process, it is only tested whether the information is actually known by the prover.
Zero Knowledge Proof Example
The most important example explaining the zero knowledge proof is the Ali Baba Cave metaphor. According to this scenario, there is a ring-shaped cave with a single entrance. There is a door in the middle of the cave that can be opened with a password. In other words, the password must be known to enter from one side of the cave and exit from the other. Again, according to the scenario, there are two people. Person A claims that he knows the password and does not want to tell the password to person B, that is, he is the prover. Person B, on the other hand, wonders whether person A really knows the password, that is, he is the verifier.

According to the scenario, first person A enters the cave and randomly takes one of two paths. Person B then enters the cave and shouts to Person A the name of the road he wants him to use to return. If person A knows the password, he will return using the path that person B wanted him to come. However, both people may have initially chosen the same path. Therefore, the process is repeated many times, that is, the process is tested. As person A returns from the path chosen by person B each time, he proves to the other person that he knows the password, that is, the information. In summary, the prover proves the accuracy of the data, while the verifier tests that he received the correct information. However, no information about the data is disclosed.
How to Use Zero Knowledge Proof in Blockchain?

In transactions taking place on the blockchain, transaction details can be seen by other participants in the network. In contrast, zero-knowledge proof protocols enable assets to be transferred confidentially on the blockchain. In other words, in a transaction with ZKP, network participants other than the parties to the transaction only see that a valid transaction has occurred.

Privacy coins, created with a focus on privacy, can be shown as the first cryptocurrency applications to use zero-knowledge proof. Privacy-focused blockchain networks incorporate zero-knowledge technology into their protocols, allowing nodes to verify transactions without needing to access data. In other words, details of the transaction, including sender/receiver addresses, asset type, amount and transaction time, remain private.

ZKP is used in privacy-focused blockchains as well as Ethereum Layer 2 scaling solutions. Accordingly, zero-knowledge proofs are used to reduce the amount of data held in a transaction. Thus, it is aimed to increase scalability. Another application of zero knowledge proof can be shown as its use in anonymization processes in public blockchains.

Get fast shipping, movies & more with Amazon Prime

Start free trial

Enjoy this blog? Subscribe to DreamWorlds

1 Comment