Cryptographie
SNARK : Succinct Non-interactive ARgument of Knowledge. « Argument de connaissance succinct et non interactif », par analogie avec un reçu de trois lignes qui atteste qu'on a fait tout l'inventaire du magasin, sans montrer l'inventaire.
Succinct : La preuve est courte et se vérifie vite, quelle que soit la taille du calcul prouvé. Le prouveur, lui, paie le prix fort : générer la preuve coûte bien plus que refaire le calcul.
Non interactif : Un seul message suffit, sans échange de questions et réponses avec le vérificateur. La preuve peut être publiée et vérifiée par n'importe qui, n'importe quand.
Le trusted setup : Beaucoup de constructions exigent une cérémonie initiale qui produit des paramètres publics et des secrets à détruire. Toute la sécurité repose alors sur la promesse que quelqu'un a bien jeté les déchets, ce qui, dans l'histoire humaine, a rarement été un point fort.
Avec ou sans zéro connaissance : Quand la preuve ne révèle rien des données, on parle de zk-SNARK. Les STARK évitent le trusted setup, au prix de preuves plus volumineuses.
Ce qui arrive si on s'en passe
Un SNARK à cérémonie initiale dont les secrets n'ont pas été détruits reste vérifiable par tous, mais celui qui a conservé ces déchets peut fabriquer de fausses preuves que les vérificateurs acceptent comme vraies : un calcul jamais effectué, une transaction jamais autorisée passent pour démontrés. Rien dans la preuve ne signale la contrefaçon, puisqu'elle est formellement parfaite. Oublier la propriété de zéro connaissance quand on en a besoin fait en outre fuiter les données qu'on voulait justement garder pour soi. La cryptographie la plus moderne dépend ainsi d'un geste aussi ancien que l'humanité : sortir les poubelles, et ne pas les fouiller avant.
Explication de la marmotte
Imaginons qu'on doive prouver qu'on a résolu un énorme casse-tête, sans refaire faire tout le travail à celui qui vérifie, et parfois sans même lui montrer la solution. Cette technique fabrique une toute petite preuve, de la taille d'un court message, que n'importe qui peut contrôler en un instant. Fabriquer la preuve demande beaucoup d'efforts, mais la vérifier est presque immédiat. On s'en sert par exemple pour montrer qu'un calcul a été fait correctement sans dévoiler les données qu'il utilise.
Où ce terme est utilisé
- Prouver sans révéler : ZK et identification (5 occurrences)
- Chaînes de blocs, wallets et cryptographie économique (1 occurrence)
