La cryptographie quantique

Un générateur de nombres aléatoires est une primitive cryptographique indispensable dans n'importe quel système de sécurité.

On pourra consulter le dossier complet que je propose sur les TRNG, ici on ne verra que quelques aspects particuliers.

Source d'entropie pour TRNG

Vu la définition probabiliste de l'équation de Schrödinger, il est évident que nous avons une bonne source d'entropie grâce à la superposition. Par exemple notre photon envoyé sur une lame semi-réfléchissante 50/50.

Lame semi-réfléchissante

Les suisses d'ID Quantique n'ont pas attendu, et propose Quantis RNG

https://www.idquantique.com/random-number-generation/products/

Puce IDQ

Quantis RNG is PTG.3. Exploit elementary quantum optical processes as a source of true randomness. Photons (light particles) are sent, one by one, onto a semi-transparent mirror and detected. 4Mbps. AIS31 compliant.

Puce IDQ
The beam splitter is likely inside the small cube with screws.
Cube IDQ

IDQ propose aussi une puce spéciale pour smartphone, un générateur aléatoire avec une LED et une puce caméra CMOS + l'électronique de conditionnement qui va avec, introduit en novembre 2017.

https://www.idquantique.com/introducing-quantum-rng-chip/
https://www.idquantique.com/random-number-generation/products/quantis-qrng-chip/

IDQ LED + caméra IDQ LED + caméra

Pile ou face quantique

Ou quantum coin flipping en anglais. Cela ressemble à un problème amusant pour une fois.

Alice et Bob habitent loin l'un de l'autre, et veulent miser à pile ou face un joint une cigarette qu'un fan veut leur offrir. Sauf que ni l'un ni l'autre n'a confiance, et ils n'arrivent pas à se mettre d'accord sur une personne de confiance qui pourrait faire le tirage.

En clair, ils doivent partager un bit aléatoire commun.

Une grosse différence avec la transmission de clé de chiffrement est que cette fois, Alice et Bob sont adversaires, ils ne coopèrent pas. C'est inhabituel !

Pas besoin de cantiques pour invoquer ça : le problème est résolu classiquement avec le mécanisme de clés asymétriques, avec une méthode asynchrone (échanges successifs de messages), mais il se pourrait que ce mécanisme soit mis à mal par les futurs ordinateurs quantiques.

Une méthode inconditionnellement sécuritaire existe si on accepte un échange synchrone de message, en faisant attention qu'Alice n'attende pas l'arrivée du message de Bob pour faire son choix. Ce qui oblige à être certain de la distance à laquelle ils se trouvent l'un de l'autre, l'un pourrait prétendre être loin et ainsi être en mesure de tricher.

À noter qu'il existe aussi une proposition utilisant des fonctions longues à calculer -du moins dans le domaine classique, solution assez astucieuse je dois dire. Mais bon, c'est hors sujet.

Il existe aussi une solution toute conne avec les fonctions de hachage :

  • Alice calcule le haché d'un nombre xx. En fait, elle choisit xx pair/impair à l'avance.
  • Alice envoie le haché à Bob, qui ne peut pas savoir si elle a choisi pair ou impair, le hachage n'est pas inversible.
  • Bob envoie le résultat de son tirage (ou de son choix), pile/pair ou face/impair, à Alice (qui du coup sait si elle a gagné)
  • Alice envoie xx à Bob, qui peut recalculer le haché et vérifier que c'est le vrai xx d'Alice. Si xx est pair et qu'il a eu pile/pair au tirage, Alice a gagné.

Accessoirement, je résous le problème avec mon coffre-fort temporel. Pas besoin du haché dans ce cas.

Des protocoles de pile ou face quantique ont été proposés
ce serait malheureux de ne pas le faire quand on pense que l'intrication est à la base un générateur de nombres aléatoires commun
souvent basés sur le protocole BB84
forcément puisqu'on a mis en place un canal quantique pour l'échange de clé
alors autant s'en resservir !
  • Alice va dissimuler un bit A dans un état quantique et l'envoyer à Bob de manière à ce qu'il soit illisible.
  • Bob envoie un bit aléatoire B à Alice.
  • Alice révèle ensuite la description de l'état envoyé à Bob = l'info qui lui manquait pour lire le bit envoyé.
  • Si Bob voit que la donnée n'est pas cohérente avec la description, c'est Alice qui triche. Sinon ils font tous les deux un XOR entre les deux bits A et B.

Après, comme d'habitude, le diable est dans les détails et il faut analyser du point de vue sécuritaire tout ça, en se disant qu'Alice ou Bob sont des tricheurs. S'ils trichent tous les deux, inutile d'aller plus loin, c'était mal barré dès le départ.

On a prouvé qu'il n'existe pas de protocole parfait, en particulier si Alice est malhonnête en utilisant l'intrication. Les chercheurs proposent alors des protocoles pour diminuer au maximum une valeur de biais, c'est un sujet de recherche actif, surtout quand on rajoute par-dessus les problèmes de transmissions imparfaites.