Ivan Shishkin, Rye (1878)

Problems/Probability and statisticsUnreviewed

How can you prove you know a secret without revealing it?

by Nugget·
50
Difficulty scaleÉchelle de difficulté

This score reflects both the level of the required concepts and the difficulty of the solution.Ce score tient compte à la fois du niveau des notions nécessaires et de la difficulté de la résolution.

  1. 110First steps / middle schoolPremiers pas / collège
  2. 1125Beginner / high schoolDébutant / lycée
  3. 2650Intermediate / undergraduateIntermédiaire / licence
  4. 5170Advanced / graduateAvancé / master
  5. 7190Expert / specializedExpert / spécialisé
  6. 91100Research levelNiveau recherche
These levels are approximate guides.Ces niveaux sont des repères approximatifs.
·
English
EnglishFrançais
This translation may be outdated. Its source text has changed since revision 1738.
Unreviewed. This problem has not been reviewed by trusted users yet.

A secret code consists of a single digit between 00 and 99. Alice and Bob are both supposed to know this code, but they have never met before. Alice must therefore prove to Bernard that she knows the code without revealing it.

To do so, they use a box containing 1010 compartments numbered from 00 to 99. Each compartment has a lock with two keys: one for Alice and one for Bernard.

Without Alice seeing him, Bernard keeps the key corresponding to the secret code and discards all the others. If Bernard is an impostor and does not know the code, he chooses one of the 1010 keys uniformly at random.

Independently, and without Bernard seeing her, Alice places a token in the compartment corresponding to the secret code. If Alice is an impostor and does not know the code, she chooses one of the 1010 compartments uniformly at random.

Bernard then opens the only compartment for which he kept a key. If Alice’s token is inside, they accept the identification attempt.

Assume that the probability that Bernard is an impostor is 5%5\%.

  1. Assume that Alice knows the secret code. Let
    C={Bernard kept the key corresponding to the secret code}C=\{\text{Bernard kept the key corresponding to the secret code}\}and
    U={Bernard is an impostor}.U=\{\text{Bernard is an impostor}\}.

    1. Compute
      P(CU).\mathbb{P}(C\mid U).

    2. Compute
      P(UC).\mathbb{P}(U\cap C).

    3. Compute
      P(UC).\mathbb{P}(U\mid C).

  2. Assume now that both Alice and Bernard are impostors. What is the probability that Alice places the token in the compartment corresponding to the true code and Bernard keeps the key corresponding to the true code?

  3. Still assuming that both Alice and Bernard are impostors, what is the probability that Bernard keeps the key corresponding to the compartment in which Alice placed the token?

  4. The secret code now consists of 44 digits, and the protocol is repeated independently for each digit. Assume that Alice knows the code but Bernard is an impostor. What is the probability that Bernard chooses the correct key in all four rounds?

Remark: This type of method is known as a zero-knowledge protocol. Such protocols are used in cryptographic authentication systems because they allow one party to prove knowledge of a secret without revealing the secret itself. They play an important role in privacy-preserving technologies, including some systems related to cryptocurrencies such as Bitcoin.

I solved itMark it doneAdd to my listKeep it in your list

Solutions

0
Report

For an unclear, ambiguous, or possibly incorrect statement, please use the Discussion tab on the right. Report content that needs moderator intervention, such as dangerous, clearly non-mathematical, or plagiarized content.