Remix.run Logo
ColinWright 2 hours ago

The version I'm describing has it physically sitting in front of you at the time, so you can see that the colours haven't been changed "on the fly" after you pick an edge. In this version:

(A) I colour it;

(B) I cover the vertices so you can't see any of them, but I can no longer change them;

(C) You choose the edge, and I reveal the endpoints.

Converting this to a digital version requires further work ... my intent here was to explain the underlying idea that I can prove (to some degree of confidence) that I have a colouring without revealing anything about it.

So just off the top of my head, for example, I can, for each vertex, create a completely random string that starts with "R", "G", or "B" depending on the colour of the vertex. Then I hash each of those, and send you all of them. You choose an edge and send me back the two hashes for the endpoints, and I provide the associated random strings so you can check that the hashes match.

lordnacho 35 minutes ago | parent [-]

This reminds me of the "Where's Waldo (Wally in UK)" example:

You can prove that you found Wally with a large piece of paper with a hole in it. You move the hole over Wally, and the person you're sitting with can see you found it, but he's no wiser about where.

fragmede 7 minutes ago | parent [-]

https://youtu.be/5qzNe1hk0oY for a video if you can't picture that.