Explaining what is a "zero knowledge proof" with Halloween candy may be a very popular explanation of cryptography…

Last week, we illustrated zero-knowledge proofs, explaining what the most common cryptography in the blockchain is, and it has caused discussions among many friends. But at the same time, there are also small partners who say that they are too esoteric to understand completely. Others say that they want to teach their children to learn zero-knowledge proof, but they don't know how to explain in a language that children can understand. So let's take a look at it today. If you let you explain the zero-knowledge proof in the most easy-to-understand way, what can you say? It is very difficult to explain the encryption technology. It is more difficult to explain the encryption technology in a plain language. Explain the Zero Knowledge Proof to your child? simple! Today, let's explain the zero-knowledge proof with Halloween candy.

Zero knowledge proof

Zero-knowledge proof (also known as zero-knowledge proof, ZKP) is a method of authenticating without exchanging passwords, in which case the password cannot be stolen. This is a very cool thing, because it keeps your communication safe and no one can get your communication content or files you share with others.

With ZKP, you can prove that you know the secrets of the "other end" person without leaking anything. The term “zero knowledge” is derived from the fact that the first party (known as the “certifying party”) does not disclose information about the secret (“zero knowledge”), but the second party (called “verifying party”) Be sure that the first party knows the secrets involved in the problem.

Why do you have to prove that you know the secret without telling the secret? When you don't trust others, but still need to convince them that you know the secret, you have to prove that you are informed without revealing the secret content. So how is this achieved?

Chocolate bars and millionaires

Let's take a look at the chocolate bars that Bob and Alice got on Halloween.

Bob and Alice want to know if the number of chocolates they receive is the same. But because they don't want to share their chocolates with each other, they don't want to disclose the exact amount of chocolate they receive. We assume that there are exactly 10, 20, 30 or 40 pieces of chocolate in their "do not give candy to the quail" bag.

In order to compare the chocolates of the two people without telling the specific amount, Bob took four boxes with locks and put labels on each box, which read 10, 20, 30 40 (chocolate bars).

Then Bob leaves only the key to the box with the amount of chocolate he owns (assuming he has 20 chocolate bars), throws away the keys of all other boxes and leaves the room.

Alice took four sheets of paper, one of which had "+" on it and the other three had "-" on it.

Then she puts all the paper with the "+" (through the gap in the box) into the box corresponding to the number of chocolate bars (assuming she has 30 chocolate bars). Put the paper with "-" in the other 3 boxes and leave the room.

Bob returns to the room and uses his own key to open the box corresponding to the number of chocolate bars he has. Check whether the paper in the box is "+" or "-".

If Bob finds a "+" on the paper in the box, then Alice has the same amount of chocolate as he does. If it is "-", it means that they have different amounts of chocolate (but they still don't share the amount of chocolate they own).

We know that Bob has 20 chocolate bars in his bag and Alice has 30 chocolate bars in his bag. By opening the box and finding the paper with the "-" written, Bob learned that he and Alice had different amounts of chocolate. But he doesn't know if Alice has more chocolate than herself or herself.

When Alice returns to the room, she will see that the paper in Bob's hand is "-", and it is known that Bob has a different number of chocolates than himself. But Bob and Alice still don't know how many chocolate bars they have. They only know that the amount of chocolate they have is different.

The same example, but in a slightly different form, is widely known as "Yao's Millionaire's Problem Yao's Millionaire Problem." Two millionaires want to know if they have the same amount of money, but they don't want to reveal specific values. This is a simple example of how ZKP works.

Is it very simple and clear? With this explanation, the 5-year-old child can easily understand the meaning of “zero knowledge proof”! What cryptographic explanations do you want to know about zero-knowledge protocols? You can leave a message to tell us, or discuss with us in the message area how you explain other cryptography. ~ Source | Hackernoon

Translator | Fire Sauce
Produced | Blockchain Base Camp (blockchain_camp)