Zero-knowledge proofs, ZKPs for short, we all know that a key advantage of the blockchain itself is transparency, but in many cases, smart contract applications need to protect data privacy for various commercial or legal reasons, such as Pass in real and valid data to trigger the execution of the smart contract, but this involves the risk of information leakage. How to avoid this from happening? The emergence of zero-knowledge proof solves this problem well.
The research on Zero Knowledge Proof (Zero Knowledge Proof) first started in 1985 and was proposed in the paper “The Knowledge Complexity of Interactive Proof-Systems” by MIT professors Shafi Goldwasser, Silvio Micali and cryptography master Charles. It is this article that put forward the great concept of zero-knowledge proof, and it has gradually become one of the foundations of modern cryptography theory. Shafi Goldwasser and Silvio Micali also won the “Nobel Prize in Computer Science” in 2012. Turing Award. The task of the zero-knowledge proof system is to “prove a certain fact without divulging knowledge . ” This process is zero-knowledge proof.
Does it sound obscure? Tell a simple example:
Everyone must have heard the story of Alibaba. One day, the robber caught Alibaba and tortured him to get the spell to enter the cave. But the smart Alibaba knew that if he told the robber the spell, then he would also It was completely worthless, and it would definitely kill him. If he didn’t talk about life or death, he would also be killed, so he thought of a good way, that is, not to disclose the spell, but also to make the robber believe that he knows the spell.
Ali Baba said: “You are an arrow away from me, and then point at me with your bow and arrow. When you raise your right hand, I will chant a spell to open the stone gate. When you raise your left hand, I will chant a spell to close the stone gate. If I escape or fail to do it, prove I don’t know the spell, you can kill me with one arrow.” The robbers agreed to this proposal. After many attempts, Alibaba succeeded in opening or closing the stone gate as instructed, but because of the distance, they couldn’t hear the spell. What is it? Alibaba proved his authenticity to the robbers without revealing any information.
This example is very simple. Although it is just a simple conceptual demonstration of the zero-knowledge proof mechanism, the real zero-knowledge proof uses cryptography to prove the existence of data without disclosing the data. All in all, to create a zero-knowledge proof, the verifier (robber) needs to make the prover (Alibaba) perform a series of operations, and the prover can only execute it correctly if it knows the underlying information. If the prover misleads a result, then the verifier is very likely to discover and prove his error during the verification. So what is the value of zero-knowledge proof application in blockchain?
Since this concept was proposed, people have applied it to various fields, such as identity authentication system, storage system, data sharing, watermark detection, key exchange, etc. Today, when private data is getting more and more attention, Zero-knowledge proof shines in the application of privacy data protection:
Protect private data: In daily life, for example, I just want to prove that a candidate has passed the test, but I don’t want to reveal how many points I have taken. When buying insurance, I just want to prove that I don’t have a heart disease, but I don’t want to reveal all the information about the case, no matter what kind of information it is. Information can be replaced by a zero-knowledge proof that looks like a random number, which can prove that the data is true and credible.
Identity authentication: When using the website, the user can prove to the website that he has a private key or knows an answer that only he knows. The website does not need to know the key, but the user’s identity can be confirmed through zero-knowledge proof, through decentralized storage , The server can prove to the user that the data is properly stored and not leaked.
Calculation compression and blockchain expansion: In the traditional block architecture, the same calculation is repeated many times, such as signature verification, transaction legality verification, smart contract execution and other places, because there are calculations It is proved that the same calculation does not need to be repeated multiple times, and the calculation process can be compressed by the zero-knowledge technology proof.
As a result, zero-knowledge proof truly solves the “trust of data” , realizes the “protection of private data” , and enables the blockchain to truly realize the concept of “trusted machines” .
Posted by:CoinYuppie，Reprinted with attribution to:https://coinyuppie.com/one-article-takes-you-to-understand-the-zero-knowledge-proof/
Coinyuppie is an open information publishing platform, all information provided is not related to the views and positions of coinyuppie, and does not constitute any investment and financial advice. Users are expected to carefully screen and prevent risks.