Live data from Hacker News

How to prove you know a secret without giving it away

quantamagazine.org

111–120 of 171 posts

Re: How to prove you know a secret without giving it away

#111

> How to prove you know a secret without giving it away This is the best use case for blockchain. Put the secret on the blockchain and show others that transaction. Since it's on blockchain, no one can deny your claim about knowing the secret. This is why blockchain was invented. Before blockchain, I was miserable. There was no way for me to prove to my girlfriends that I knew a secret, without telling the secret. No…

I assume this is excellent satire, but you never really can tell.

[deleted]

Re: How to prove you know a secret without giving it away

#112

Earlier quoted context omitted.

How so? You don't reveal any coordinates if the foil covering the page is 3x the size of the page.

Well whoever's doing the verifying would need to have a way to align that piece of foil in a way that shows the position, and unless both people know that process it's useless anyway. If there's infinite possible alignments then you've given no data, but a piece of foil with a random hole in it. Like giving you two random numbers and you coming up with a function that maps them to waldo's position.

You might not have understood how this works. The prover shows the fact that they know Waldo's position by showing the page covered in foil to the verifier in person (or by taking a picture). The verifier does not manipulate anything.

Obviously, there's no way to verify that the page under the foil is the page you think it is. This is more of an analogy / tool to explain things vs an actual secure protocol.

Re: How to prove you know a secret without giving it away

#113
> For a simple way to understand this idea, let’s suppose you want to show your friend that you know how to get through a maze, without divulging any details about the path. You could simply traverse the maze within a time limit, while your friend was forbidden from watching. (The time limit is necessary because given enough time, anyone can eventually find their way out through trial and error.) Your friend would know you could do it, but they wouldn’t know how.

How would your friend know you solved it though? Does he have to take your word for it? Doesn't that defeat the purpose? This analogy seems flawed, correct me if I'm wrong

Edit: I misunderstood the kind of maze the article is talking about. Apparently it's not the pen and paper version.

Re: How to prove you know a secret without giving it away

#114

> For a simple way to understand this idea, let’s suppose you want to show your friend that you know how to get through a maze, without divulging any details about the path. You could simply traverse the maze within a time limit, while your friend was forbidden from watching. (The time limit is necessary because given enough time, anyone can eventually find their way out through trial and error.) Your friend would kn…

The friend sees you enter the maze at the entrance. They don't watch you traverse the maze, instead they run around the outside of the maze to the exit. They see you leave by the exit 2 minutes later.

They don't know the path you took and they can be reasonably sure you didn't brute-force it in that time.

Re: How to prove you know a secret without giving it away

#115

> For a simple way to understand this idea, let’s suppose you want to show your friend that you know how to get through a maze, without divulging any details about the path. You could simply traverse the maze within a time limit, while your friend was forbidden from watching. (The time limit is necessary because given enough time, anyone can eventually find their way out through trial and error.) Your friend would kn…

If it's a big maze where you can pass through, you can enter and exit in that time limit

Re: How to prove you know a secret without giving it away

#116

Earlier quoted context omitted.

Well whoever's doing the verifying would need to have a way to align that piece of foil in a way that shows the position, and unless both people know that process it's useless anyway. If there's infinite possible alignments then you've given no data, but a piece of foil with a random hole in it. Like giving you two random numbers and you coming up with a function that maps them to waldo's position.

You might not have understood how this works. The prover shows the fact that they know Waldo's position by showing the page covered in foil to the verifier in person (or by taking a picture). The verifier does not manipulate anything. Obviously, there's no way to verify that the page under the foil is the page you think it is. This is more of an analogy / tool to explain things vs an actual secure protocol.

Thinking again, I may have read too much into the foil thing. A better example would be a just a cut-out of Waldo, separate from everything else.

I'm sure it's a massive simplification of the way it's actually used.

Re: How to prove you know a secret without giving it away

#117

> For a simple way to understand this idea, let’s suppose you want to show your friend that you know how to get through a maze, without divulging any details about the path. You could simply traverse the maze within a time limit, while your friend was forbidden from watching. (The time limit is necessary because given enough time, anyone can eventually find their way out through trial and error.) Your friend would kn…

If it's a big maze where you can pass through, you can enter and exit in that time limit

Oh, I was thinking of a pen-and-paper maze, not a real life maze

Re: How to prove you know a secret without giving it away

#118

Earlier quoted context omitted.

This reminds me of fixing a bug that causes your problem but then you discover the problem persists after the fix and that you actually had two independent bugs causing the same problem.

Erm, if you do a fix and the problem still exists then how is that a fix? For example, if I have a number box and I punch letters in it and the problem is error is still poping up, then my fix is not a fix, is it? Regardless of how many bugs I have that cause the problem, a fix, in my opinion, is the sum of all those bugs going away.

That is a very project managery view of things. And in a simple system you might be right. In a complex system multiple different things can cause same looking problems.

Let's say you are not working on a "number box" (whatever that is) but a drone airplane. Your costumer reports that the drone become unresponsive and crashed.

You investigate and find that there is a buffer overflow which sometimes gets triggered in the navigation system which trashed the memory and lead to the loss of the drone. You develop a patch, and additional testing etc etc and you deploy the fix.

A year later a drone crashes again. You do the investigation and this time you find in the engine control there is an edge case which causes it to shut down the engine under rare circumstances.

Was the first fix not a fix? If I correctly interpret you it wasn't because the "drone becoming unresponsive and crashing" problem still persist. Obviously that is not a useful way to look at the work if you actually have to develop the fixes.

Obviously there was two different problems, and they both need fixing separately (often by different teams). Just because you are not aware of the second bug when you deploy the first fix doesn't make the first fix not a fix.

Of course you might say in this hypothetical the "problem was not the same" but you only know that after you have investigated. If there are no reasons to suspect the second bug, and during the testing of the first fix things appear to be working you have no way of knowing that.

Re: How to prove you know a secret without giving it away

#119

> For a simple way to understand this idea, let’s suppose you want to show your friend that you know how to get through a maze, without divulging any details about the path. You could simply traverse the maze within a time limit, while your friend was forbidden from watching. (The time limit is necessary because given enough time, anyone can eventually find their way out through trial and error.) Your friend would kn…

a hypothetical real life maze (eg. in a fancy park), not the paper version?

Re: How to prove you know a secret without giving it away

#120

Earlier quoted context omitted.

You might not have understood how this works. The prover shows the fact that they know Waldo's position by showing the page covered in foil to the verifier in person (or by taking a picture). The verifier does not manipulate anything. Obviously, there's no way to verify that the page under the foil is the page you think it is. This is more of an analogy / tool to explain things vs an actual secure protocol.

Thinking again, I may have read too much into the foil thing. A better example would be a just a cut-out of Waldo, separate from everything else. I'm sure it's a massive simplification of the way it's actually used.

True. Or a photocopy of the page + cut-out to make it non-destructive. Or just a picture of the page cropped around Waldo.
Post reply on HN