Lorsque vous retirez de l’argent à un distributeur automatique, vous devez saisir le code PIN associé à votre carte bancaire. Encore faut-il être certain que personne ne se soit introduit dans le système pour récupérer ce code et ainsi accéder à votre compte ! La saisie de ce code est donc une faille de sécurité potentielle que les experts cherchent à éliminer. Un moyen de s’en passer repose sur les ZKP (zero-knowledge proofs) ; des chercheurs poussent aujourd’hui un peu plus loin ce concept, en y intégrant la théorie de la relativité restreinte d’Einstein.
« La protection des secrets est un défi majeur dans notre ère contemporaine basée sur l’information », soulignent les chercheurs dans leur article. Inventées dans les années 1980, les zero-knowledge proofs (ZKP), ou preuves à divulgation nulle de connaissance en français, sont des protocoles permettant à un individu (le fournisseur de preuve) de démontrer mathématiquement à un autre (le vérificateur) qu’une proposition est vraie sans avoir à révéler les informations relatives à cette dernière. Ici, il s’agit de prouver l’identité d’une personne, mais sans avoir à la révéler réellement.
Ces ZKP s’appuient sur des concepts mathématiques, qui dans la pratique, se présentent sous forme de protocoles de type défi/réponse : les deux protagonistes s’échangent des informations, de manière à ce que le vérificateur puisse contrôler la véracité de la proposition initiale. Une ZKP doit satisfaire trois critères pour être considérée comme telle : la consistance (si le protocole est bien suivi, le vérificateur doit toujours accepter la preuve), la robustesse (si la proposition est fausse, il est impossible de convaincre le vérificateur), et aucune information ne doit être fournie en dehors de la véracité de la proposition.
Un protocole de vérification basé sur la vitesse de la lumière
Un exemple célèbre de ZKP est le problème des trois couleurs, où une carte découpée en milliers de zones est remplie avec seulement trois couleurs, de sorte que deux zones qui se touchent n’ont jamais la même couleur — une carte, dont la création nécessite d’importantes ressources informatiques. À supposer que le fournisseur de preuve possède une telle carte, en demandant à plusieurs reprises des paires de régions aléatoires — avec un court laps de temps entre ses requêtes — le vérificateur peut devenir de plus en plus sûr que son interlocuteur a accès à une carte correctement colorée ; en revanche, il n’a jamais accès à la carte dans son ensemble.
Si un pirate informatique (qui n’est pas en possession de la carte) tentait de se faire passer pour cette personne, il pourrait tenter de fournir des réponses aléatoires. Mais ses chances de réussir à duper le vérificateur s’amenuiseraient à chaque vérification supplémentaire. Cela dit, il faut aussi supposer ici que le pirate n’ait aucun moyen (tel qu’un superordinateur par exemple) de créer une carte suffisamment rapidement pour tromper le vérificateur.
Finalement, une ZKP complètement infaillible devrait reposer sur une constante immuable de l’Univers. C’est donc ce qu’ont entrepris de faire Sébastien Designolle, de l’Université de Genève, et ses collaborateurs : ils proposent d’utiliser la théorie de la relativité restreinte pour éliminer tout risque d’usurpation d’identité. Concrètement, l’équipe rapporte la réalisation expérimentale d’un protocole à connaissance nulle (basé sur la carte à trois couleurs) impliquant deux paires de vérificateurs-fournisseurs de preuve séparés. La sécurité est appliquée via le principe physique de la relativité restreinte — selon laquelle l’information ne peut voyager plus vite que la lumière — et aucune hypothèse de calcul n’est requise.
Un problème fondamental des ZPK enfin résolu
Les deux fournisseurs de preuve doivent chacun répondre à l’un des deux vérificateurs dans un délai donné ; ils sont positionnés trop loin l’un de l’autre pour pouvoir se concerter sur leurs réponses, car même l’envoi d’informations à la vitesse de la lumière prendrait trop de temps. Une fois qu’ils ont soumis leurs réponses, les vérificateurs peuvent se concerter et vérifier qu’elles correspondent, ce qui leur permet de repérer les fausses réponses (les réponses devinées).
La mise en œuvre de cette expérimentation repose exclusivement sur des équipements du commerce et fonctionne à la fois sur des distances courtes (60 mètres) et longues (supérieures à 400 mètres) en une seconde environ. L’équipe a utilisé des horloges GPS pour synchroniser deux ordinateurs, jouant le rôle de fournisseurs de preuve, situés à 400 mètres l’un de l’autre — distance qu’un signal voyageant à la vitesse de la lumière mettrait 1,3 microseconde à parcourir.
Deux ordinateurs (les vérificateurs) ont ensuite demandé à l’un des fournisseurs de preuve de confirmer la couleur de deux zones dans un délai de 0,84 microseconde — soit une durée inférieure au temps nécessaire pour que les ordinateurs puissent communiquer entre eux. Les ordinateurs-vérificateurs ont posé un demi-million de questions, afin de pouvoir affirmer avec certitude que les ordinateurs-fournisseurs de preuve ne faisaient pas de simples suppositions.
Cette étude démontre le potentiel pratique des multifournisseurs de preuve dans les protocoles à divulgation nulle de connaissance. Cette approche pourrait permettre de résoudre certains des problèmes fondamentaux des ZKP existants, à savoir qu’il est possible de les tromper si l’on dispose d’ordinateurs suffisamment puissants. Elle est également prometteuse pour les tâches d’identification et les applications blockchain, telles que les cryptomonnaies ou les contrats intelligents (smart contracts).