How to explain zero-knowledge protocols to your children (1998) [pdf]
Jacques Patarin[1], my cryptography teacher at university introduced us with zero-knowledge proofs with a simple real-life zero knowledge scheme. All you need is 5 cards, 3 identical red and 2 identical blacks.<p>You give one black and one red to each person (Alice and Bob), and keep the last red.<p>The scheme is the following:<p>Alice will puts her two cards ON TOP of the remaining red card: to say yes, she puts her black card on top of her red card, to say no she does the opposite (red on top of black).<p>Bob will put his pair of cards BELOW the remaining red card, and to say yes he puts his black card at the bottom, with his red card in between, and to say no he does the opposite.<p>Then you cut the deck enough times to obfuscate who've done what, and you know that they've both day yes if you have the two blacks cards next to each other (or both at each ends of the deck). If anyone (or both of them) said no, you'd have black cards separated by one red card.<p>[1] <a href="https://fr.wikipedia.org/wiki/Jacques_Patarin" rel="nofollow">https://fr.wikipedia.org/wiki/Jacques_Patarin</a>