How does zero knowledge proof work?

146 views

I’ve looked up a bunch of videos and see even kids understanding it, but for whatever reason i’m having trouble grasping the concept of how safe it is. It seems like a “faith” based system like anything else in life lol.

In: 1

3 Answers

Anonymous 0 Comments

[removed]

Anonymous 0 Comments

The wikipedia page for a zero-knowledge proof has 2 simple examples, Ali-Baba cave, and two-balls with a colourblind friend. I’m going to assume you’ve read them, and understand them, they’re explained quite well in simple English.

In both these examples, if you repeat the experiment just once, then you haven’t prooved anything. There is a 50% liklihood that the person doing the prooving has just guessed luckily.

The key is that you repeat the trial:

1 correct trial has a 50% chance of being lucky.

2 correct trials have a 25% chance of being lucky.

3 correct trials have a 12.5% of being lucky.

10 correct trials have a 0.09765625% chance of being lucky.

So if you repeat the trial a relatively small number of times, and the proover is always correct then the chance that they _don’t_ know the thing they’re prooving knowledge of approaches zero.

There is always a chance that they’re just incredibly lucky, but the point is making that chance tiny enough that you can forget about it.

Anonymous 0 Comments

> how safe it is. It seems like a “faith” based system like anything else in life lol.

It depends. Pretty much everything in cryptography is vulnerable to brute force attacks, where you simply try (say) different passwords until you find the right one. With some algorithms you can prove that this requires a certain very large amount of work on average, so realistically won’t be possible without extreme advances in computer technology. With other algorithms there remains a possibility that someone could find a way to break it much more quickly than brute force. Different cryptocurrency things use different algorithms. Also, when it comes to actually implementing a crypto algorithm in a computer system, people can and often do make mistakes that compromise security – sometimes they even intentionally include security holes.

There is also always a risk of more mundane security breaches. What if you have a password saved on your computer and someone steals your computer? What if someone tricks you into sending them money? What if there is a virus on your system that records your key presses and sends them to someone along with all of your files and the output from your webcam? There is no security system that can fully protect against these kinds of threats.

What exactly the risks are depend on what you’re trying to do. But you should probably ignore buzzwords like “zero-knowledge proof”. Just because one component of a system is provably secure if they implemented it correctly, it doesn’t necessarily mean the whole system is secure. And an extra risk that you’re taking with cryptocurrency stuff is that because it’s largely unregulated, you don’t have much recourse if something does go wrong. If a bank steals your dollars, there is a decent chance that you will get them back if you start making complaints and taking legal action. If a cryptocurrency exchange steals your Dogecoins, you probably don’t have much hope of getting them back.