Aller au contenu principal

preuve à divulgation nulle de connaissance (ZKP) ZKP zero-knowledge proof

Moyen d’identification, rendu possible grâce à une technologie comme la blockchain, entre un fournisseur de la preuve et un vérificateur dans lequel ce dernier ne connaît jamais le contenu de l’identification. Le principe de base peut être compris à l’aide de l’exemple suivant :

  • un ami aveugle est en face de vous. Vous avez dans vos mains deux billes : une rouge et une verte. Mis-à-part leurs couleurs, elles n’ont pas d’autre différence de sorte que, pour votre ami aveugle, elles sont parfaitement identiques. L’objectif est de prouver à votre ami aveugle que vous êtes capable de les distinguer par leurs couleurs, mais sans lui révéler laquelle est verte et laquelle est rouge.
  • le protocole est dès lors le suivant : vous donnez les deux billes à votre ami qui les place derrière son dos. Puis, il prend l’une des billes et vous la montre. Il la remet dans son dos puis choisit de vous montrer une des billes, soit la même, soit l’autre, avec ainsi une probabilité de 50 %. Il vous demande alors : « ai-je changé de bille ? ». Le protocole est répété autant de fois que nécessaire. En regardant leurs couleurs, vous êtes capables de dire si votre ami a changé de bille ou non. Si vous répétez suffisamment le protocole, votre ami sera convaincu que les billes sont de couleurs différentes.

Il s’agit là d’une preuve à divulgation nulle de connaissance car votre ami n’apprend jamais quelle bille est verte et laquelle est rouge.

Depierre/Lapinte/Morin/Reymond, Lexique de la blockchain, https://cdbf.ch/lexique/preuve-a-divulgation-nulle-de-connaissance-zkp/, 14 janvier 2022.
Reproduction autorisée avec attribution ci-dessus; pas d’utilisation commerciale; pas de modification by nc nd