À la découverte de la cryptographie quantique

Piste rouge Le 14 juillet 2021  - Ecrit par  Stephan De Bièvre Voir les commentaires

Le but de ce troisième et dernier article sur la surprenante, subtile et fascinante mécanique quantique est de montrer comment une variante du dispositif quantique expérimental décrit dans le deuxième article peut être utilisée pour assurer une communication secrète, privée et sûre entre deux parties, que j’appellerai Alice et Bob, comme il est devenu habituel dans le jargon des spécialistes.

J’expliquerai d’abord très sommairement les rudiments de la cryptographie, qui est l’art et la science de la communication secrète. Je renvoie les curieux qui souhaitent en savoir plus vers le dossier « cryptographie » d’Images des mathématiques. Puis je montrerai comment la mécanique quantique offre, via le protocole BB84 [1], une solution à un problème central de la cryptographie, qui est celui du partage de la clé de chiffrement entre les deux parties.

Afin de rendre ce troisième article accessible au plus grand nombre, je m’appuierai dans la suite principalement sur le premier article de cette série, en évitant de faire appel aux développements un peu plus subtiles du deuxième. Je rappellerai ci-dessous brièvement les éléments essentiels dont j’aurai besoin, mais je vous recommande tout de même, avant de vous attaquer à ce qui suit, une (re)lecture attentive du premier article dont la parabole sur les ≪ pulls quantiques ≫ jouera un rôle central ici.

Un mot de cryptographie

Alice et Bob veulent échanger des messages — peut-être des mots doux — à l’abri des oreilles et des yeux indiscrets. Comment faire ? Première étape : chiffrer chaque message, pour le rendre incompréhensible à tout intrus. Le système de chiffrement le plus ancien sans doute est le célèbre Chiffre de César. Dans celui-ci, on remplace chaque lettre de son message par celle une place plus loin dans l’alphabet. Donc, si le message en clair commence par ≪Je t’aime, » le message crypté commencera par ≪kfubjnf. » Du coup, pour déchiffrer le message, il suffit de redécaler toutes les lettre une place en arrière. Ainsi, si la suite du message crypté précédent est ≪bjotjrvfmftgsjuftfumbnbzpoobjtf », on trouvera ≪ainsi que les ... » ; je vous laisse décoder le reste. On peut varier la méthode en choisissant de décaler les lettres non d’une seule place, mais de deux, trois, quatre, jusqu’à vingt-cinq places. Pour plusieurs raisons sur lesquelles je ne m’attarderai pas, cette méthode n’est pas du tout sûre, mais elle contient les ingrédients essentiels de tout système de chiffrement, et c’est tout ce qui nous importe ici. Si vous voulez savoir pourquoi elle n’est pas sûre et quels systèmes de chiffrement astucieux ont été développés au fil des siècles par les cryptographes des rois et des empereurs, des reines et des impératrices, des révolutionnaires et des comploteurs, je vous recommande vivement le superbe livre ≪Histoire des codes secrets≫ de Simon Singh, qui est truffé d’anecdotes succulentes et qui se lit comme un véritable roman policier.

Pour nous, ce qui est crucial, c’est de comprendre qu’Alice et Bob doivent se mettre d’accord sur la clé de chiffrement qu’ils vont utiliser avant de pouvoir communiquer des messages chiffrés. Dans le jargon, on dit qu’ils doivent ≪partager≫ la clé. Dans le cadre du Chiffre de César la clé est le nombre de places dont il faut décaler chaque lettre. Ici donc, la clé est tout simplement un nombre entre 1 et 25. Dans des méthodes de chiffrement plus complexes, la clé sera toujours un nombre, mais qui peut être très grand. Le Chiffre de César a en effet une faiblesse évidente : si vous savez que le message a été chiffré à l’aide du Chiffre de César, vous pouvez rapidement tester les 25 clés et trouver ainsi facilement le message d’origine. Pour éviter ce problème, il faut s’assurer d’utiliser une méthode de chiffrement qui admet beaucoup de clés différentes, ce qui signifie que la clé peut être très grande. Nous voulons donc comprendre comment Alice et Bob peuvent s’y prendre pour partager un très grand nombre, sans que quelqu’un puisse savoir sur lequel ils se sont mis d’accord.

≪ Mais c’est facile, vous me direz, ils n’ont qu’à se passer un coup de fil et se mettre d’accord ». Le problème : s’ils sont sur écoute, l’intrus connaîtra la clé et pourra déchiffrer leurs messages. Dans la littérature sur le sujet, l’intrus s’appelle toujours Ève, et je suivrai cette coutume par la suite [2]. Pour éviter les agissements de la perfide Ève, une alternative est qu’Alice et Bob se mettent d’accord sur la clé à utiliser lorsqu’ils se voient en personne. En effet, c’est une solution. Mais pour plus de sécurité, ils ont intérêt à changer très régulièrement de clé. De cette façon, si par malheur leur clé est tombée entre de mauvaises mains, l’intrus ne pourra plus déchiffrer les messages après qu’ils ont changé la clé. Or, Alice et Bob n’ont pas l’occasion de se voir souvent. Un des problèmes majeurs de la cryptographie est donc celui du partage de la clé.

Pour bien comprendre ce problème, il faut se rendre compte qu’aujourd’hui, la communication secrète n’est plus seulement l’affaire des gouvernements, de leurs espions et armées, ni de quelques amoureux clandestins. Lorsque nous faisons une transaction sur internet, en achetant quelque chose, en transférant de l’argent, en votant, il est important que les données que nous transmettons restent secrètes : numéro de carte bancaire, code PIN, données personnelles, etc.. Chacun d’entre nous, chaque entreprise, chaque banque, chaque service de l’état, communique de façon quotidienne avec un grand nombre d’autres personnes et services, et ces communications doivent rester confidentielles. D’où le besoin d’un système de cryptographie sûr et donc d’une méthode de partage de clé de chiffrement fiable et efficace.

C’est sur ce point que la mécanique quantique apporte une solution surprenante, et en principe totalement sûre. Elle est basée, comme on le verra, sur l’existence d’observables incompatibles, dont elle exploite les propriétés astucieusement. Avant de vous la présenter, on a besoin d’un bref rappel sur l’écriture binaire des nombres [3].

La représentation binaire des nombres

Pour calculer, il faut avoir une représentation des nombres. Quand j’écris $17$, vous lisez ≪ dix-sept ≫ et vous savez qu’il s’agit de une fois dix plus sept fois un. En effet, vous avez appris à l’école élémentaire la convention qui consiste à dire que le $1$ est à la place des dizaines, et le $7$ à la place des unités. Donc
\[ 17=1\times 10+ 7\times 1. \]
Du coup, $71$ n’est pas la même chose : c’est sept fois dix plus une fois un :
\[ 71=7\times 10 + 1\times1. \]
Donc le $7$ de $17$ ne signifie pas la même chose que celui de $71$ : on en a tellement l’habitude qu’on n’y pense même plus, mais c’est important. On dit septante-et-un en Suisse, au Québec et en Wallonie, ce qui communique l’idée plus clairement que le déroutant ≪ soixante-et-onze ». En tout cas, cette représentation des nombres qui utilise un ≪ découpage ≫ en puissances de dix et que nous utilisons quotidiennement sans trop y réfléchir est la représentation décimale. Mais on peut représenter les nombres différemment. Par exemple
\[ 17=16+1=1\times 2^4+1\times 1, \quad 71= 1\times 2^6 + 1\times 2^2 + 1\times 2 +1\times 1. \]
Cela mène à la représentation binaire des nombres. On omet les puissances de deux et on écrit tout simplement
\[ 1\times 2^4+1\times 1=10001,\quad 1\times 2^6 + 1\times 2^2 + 1\times 2 +1\times 1=1000111, \]
où l’on insère des zéros pour les puissances de deux manquantes. Pour bien comprendre, voici quelques autres exemples. En écriture binaire,
\[ 10010 \]
représente le nombre
\[ 2^4+2, \]
c’est à dire dix-huit. Dans les exemples suivants, vous avez la représentation binaire à gauche, la représentation décimale à droite du signe égal :
\[ 10=2,\quad 11=3,\quad 101=5,\quad 10110=22,\quad 11111=31. \]
Ce qu’il faut remarquer et retenir est que la représentation binaire transforme simplement tout entier positif en une suite de $1$ et de $0$. Le problème du partage de la clé de chiffrement consiste donc en la question suivante : ≪ Comment partager de façon sûre et secrète une suite de zéros et de uns ? ≫ Le protocole BB84 propose une solution à ce problème, comme on le verra.

Qubits et pulls quantiques, un petit rappel

Dans le protocole BB84, Alice et Bob manipulent des qubits. Rappelez-vous du deuxième article qu’un qubit est un système physique microscopique ayant deux caractéristiques essentielles. D’abord, on peut mesurer, sur un qubit, deux propriétés appelées des ≪ observables », qui ne peuvent prendre, chacune, que deux valeurs distinctes. La molécule d’ammoniac NH3 est un exemple d’un qubit ; dans ce cas les observables en question sont son énergie et la position de l’azote (N) par rapport au plan dans lequel se trouvent les trois atomes d’hydrogène. Beaucoup d’autres exemples de qubits existent, et sont manipulés par les physiciens. Deuxièmement, les deux observables doivent être incompatibles, ce qui signifie que la connaissance précise de l’une empêche la connaissance précise de l’autre.

Les qubits étant microscopiques, on ne se les imagine pas très facilement. Pour mieux se représenter la nature du qubit, j’ai introduit, dans le premier article, les ≪pulls quantiques ». Il s’agit d’objets macroscopiques imaginaires, dont la Couleur et la Taille jouent le rôle des deux observables incompatibles. Les pulls quantiques sont très particuliers : ils peuvent avoir soit une Couleur définie — on supposera ici qu’ils sont bleus ou rouges — soit une Taille bien définie — M ou L. Mais lorsqu’on examine la Couleur d’un pull de Taille bien définie, on risque de perturber sa Taille, et vice versa : la Taille et la Couleur sont des observables incompatibles. Si par exemple on a observé qu’un pull est de Taille M, et qu’on mesure sa Couleur, on trouvera soit qu’il est de Couleur bleue, soit de Couleur rouge. Supposons qu’on a trouvé qu’il est bleu. Si maintenant on mesure à nouveau la Taille de ce même pull, on n’est pas assuré qu’on trouvera toujours qu’il est de Taille M. On peut trouver qu’il est de Taille L, ou de Taille M, et la probabilité des deux issues est la même. Donc, quand on connaît la Couleur du pull, sa Taille est incertaine et vice versa. Dans ce sens, les pulls quantiques se comportent comme des qubits. Ils n’existent pas, mais on se les imagine facilement.

Et, en s’imaginant qu’ils existent, on peut comprendre le principe de base du protocole BB84 ; c’est ce que je vais m’efforcer de vous expliquer dans les pages qui suivent. Si vous êtes à l’aise avec les qubits, vous pouvez, dans tout ce qui suit, remplacer le terme ≪ pull quantique ≫ par ≪ qubit », si vous le souhaitez.

JPEG - 653.1 ko

Préparer le protocole BB84

Une chose à souligner avant de démarrer est que, dans le protocole BB84, la clé de chiffrement n’est pas choisie par une des deux parties, puis transmise à l’autre, mais elle est co-construite par elles. Alice et Bob exécutent un certain nombre de tâches, dans un ordre précis, et tout à la fin de ces opérations, ils découvrent chacun de son côté, la clé. Sans que personne d’autre ne puisse la connaître. Cela paraît très étonnant et ça n’a en effet rien de banal.

Le protocole se déroule en 4 étapes. Je vais l’expliquer à l’aide des pulls quantiques du premier article. Vous verrez que les étapes individuelles ne sont pas difficiles à comprendre, mais paraîtront assez mystérieuses, dans le sens où on ne voit pas au début comment elles mèneront à la solution. Ce n’est que tout à la fin que cela deviendra clair. Patience donc, et persévérance, chère lectrice, cher lecteur.

Alice possède deux armoires. Dans l’une, les pulls sont rangés par Couleur. Il y a une étagère avec des pulls bleus, une deuxième avec des pulls rouges. Dans l’autre, les pulls sont rangés par Taille : une étagère est réservée pour la Taille M, l’autre pour la Taille L. On verra par la suite qu’Alice envoie un grand nombre de pulls à Bob. Elle choisira à chaque fois d’envoyer soit un pull de Couleur déterminée, soit un pull de Taille déterminée. Pour cela, elle met le pull dans une boîte, puis elle l’expédie. Bob ne saura pas, lorsqu’il reçoit la boîte, si elle contient un pull de Couleur ou de Taille déterminée. Il décidera soit d’observer la Couleur du pull, soit sa Taille.

Alice et Bob se mettent d’accord pour associer le chiffre $1$ à la Couleur rouge, et le chiffre $0$ à la Couleur bleue ; ainsi que le chiffre $1$ à la Taille L et le chiffre $0$ à la Taille $M$. En résumant cela dans un petit tableau :

C1=pull de Couleur rouge C0=pull de Couleur bleue
T1= pull de Taille L T0=pull de Taille M

Ils peuvent partager ces informations par un simple coup de fil. Il n’y a pas de raison qu’elles soient secrètes. Il s’agit juste d’une convention commode pour la suite.

Les étapes du protocole BB84

Étape I. Alice à l’œuvre.

Étape I.A. Alice décide quels pulls envoyer à Bob.

D’abord, elle décide pour chaque pull envoyé, s’il sera de Couleur définie, ou de Taille définie. Pour cela, elle lance vingt fois  [4] une pièce de monnaie. Elle écrit « Couleur » sur une face et « Taille » sur l’autre. Elle note les résultats des vingt lancers :

\[ \texttt{C C T T T} \qquad\texttt{C T C T C} \qquad\texttt{C C T T C }\qquad \texttt{T C T C C}\]

JPEG - 504.6 ko

Les deux premiers pulls qu’elle enverra seront donc d’une Couleur bien définie, les trois suivants d’une Taille bien définie, et ainsi de suite. Reste à décider de quelle couleur ou de quelle taille. Elle lance alors à nouveau 20 fois une pièce de monnaie sur laquelle elle écrit $0$ d’un côté et $1$ de l’autre. Voici le résultat de l’ensemble des 40 lancers, en un seul tableau :

PNG - 37.7 ko

À ce stade, Alice sait donc quels pulls elle va envoyer à Bob. Par exemple, le premier pull sera de Couleur rouge, le troisième de Taille M. 
Elle ne partage aucune de ces informations avec Bob, ni avec qui que ce soit d’autre.

À la fin de la procédure, la clé de chiffrement sera extraite de la suite de $0$ et de $1$ de la deuxième ligne de ce tableau. Reste à comprendre comment ! Pour l’instant, Alice ne sait absolument pas quelle sera la clé, ni Bob d’ailleurs.

Bien évidemment, lorsqu’on veut mettre en oeuvre le protocole BB84 avec des qubits, on ne dispose pas d’armoires dans lesquelles ils sont rangés ! Pour comprendre comment procéder dans ce cas, vous pouvez lire le bloc dépliant suivant.

Pour en savoir plus : comment mettre en œuvre BB84 avec des qubits ?

Pour mettre en œuvre le protocole BB84, Alice et Bob peuvent utiliser le dispositif expérimental que j’ai décrit dans le deuxième article.

Il faut pour cela s’imaginer que Alice contrôle la source de qubits, qui est le boîtier vert dans la figure, ainsi que le boîtier à côté, qui est un instrument de mesure des deux observables incompatibles des qubits.
Dans l’exemple de la molécule d’azote, il s’agit de la Position et de l’Énergie. Bob, par contre, contrôle le boîtier tout à fait à droite. Alice envoie des qubits à Bob, et non des pulls. Ces qubits ont soit une Position, soit une Énergie bien déterminée. La Position peut être Haute ou Basse, l’Énergie Grande ou Faible.

Supposons qu’Alice a choisi d’envoyer un premier qubit en Position Haute. Elle met alors l’interrupteur sur le boîtier au centre en position P, et pousse le bouton sur le boîtier source. Un qubit est donc envoyé de la source vers le boîtier central. Si, après son passage, le cadran indique un H, Alice laisse le qubit poursuivre son chemin vers Bob. Si, par contre, le cadran indique B, elle arrête le qubit et elle recommence jusqu’à ce qu’un qubit soit obtenu avec une Position Haute. Puis elle recommence pour le deuxième qubit et pour tous les autres. C’est avec un dispositif de ce type que le protocole BB84 est effectivement mis en œuvre.

Étape I. B Alice envoie les pulls.

Pour son premier envoi, Alice ouvre l’armoire marquée C, choisit un pull rouge et l’envoie à Bob. Pour le deuxième envoi, elle ouvre à nouveau l’armoire marquée C, puis choisit un pull bleu, et ainsi de suite. Elle envoie ainsi les 20 pulls à Bob.

JPEG - 754.4 ko

Étape II. Bob à l’œuvre.

Bob reçoit donc 20 pulls, l’un après l’autre. Qu’est-ce qu’il en fait ? Il inspecte chaque pull, soit en regardant sa Couleur, soit sa Taille. Puis il note le résultat de cette observation. Voici plus précisément comment il procède.

Étape II.A. Bob décide s’il regarde la Taille ou la Couleur de chaque pull qu’il reçoit.

Dans ce but, Bob lance vingt fois une pièce de monnaie, sur laquelle il note la lettre $\texttt{C}$ d’un côté, et la lettre $\texttt{T}$ de l’autre. Voici le résultat :

\[ \texttt{T C T C T} \qquad \texttt{T C C T T} \qquad \texttt{C C C T C}\qquad \texttt{C T T C T} \]

Il décide donc de mesurer la Taille du premier pull, la Couleur du deuxième, la Taille du troisième et ainsi de suite. Il est à noter que Bob peut faire cette opération avant l’arrivée des pulls. Il ne partage pas le résultat avec Alice, ni avec qui que ce soit d’autre.

Étape II.B. Bob observe la Taille ou la Couleur de chaque pull qu’il reçoit.

Puisque la première lettre qui apparaît dans la série ci-dessus est un $T$, Bob observe la Taille du premier pull, lorsque celui-ci arrive. Et il note le résultat de cette opération, disons M. Pour le deuxième pull, il observe la Couleur. Celle-ci sera à coup sûr bleue, puisqu’Alice a choisi pour son deuxième envoi un pull de Couleur définie, et qui était bleue ; mais attention, Bob ne le sait pas à ce moment. Le troisième pull envoyé par Alice a une Taille bien définie, à savoir M. Comme Bob mesure sa Taille, il observera en effet que c’est un pull de Taille M. 
Quand il a fini d’observer les 20 pulls, il obtient le tableau suivant :

PNG - 37.7 ko

À ce stade, il faut remarquer que Bob ne sait pas si les pulls qui lui arrivent ont une Taille ou une Couleur bien définie. Et Alice ne sait pas quelle mesure Bob fait sur chaque pull qu’elle lui envoie. A fortiori, elle ne connaît pas le résultat de cette mesure.

Étape III. Un coup de fil entre Alice et Bob.

Alice et Bob passent un coup de fil et se communiquent l’un à l’autre la liste des 20 lettres C ou T qui constituent la première ligne de leurs tableaux respectifs. Par contre, ils ne communiquent pas — et c’est crucial — les chiffres $0$ et $1$ de la deuxième ligne de leur tableau ! Suite à cette opération ils savent donc tous les deux si Bob a mesuré l’observable (Couleur ou Taille) qui était fixée dans le pull envoyé par Alice.
Ci-dessous j’ai reproduit les deux tableaux une deuxième fois, et colorié en vert les instances pour lesquels c’est le cas :

PNG - 102.8 ko
JPEG - 418.6 ko

On constate ainsi par exemple que le deuxième pull envoyé par Alice était bleu ; Bob en a observé la Couleur et a en effet trouvé qu’il était bleu.
De même, le neuvième pull envoyé par Alice est de Taille L ; Bob a choisi d’observer la Taille et a en effet trouvé L. Donc, pour chaque pull dans les colonnes vertes Alice et Bob connaissent tous les deux l’entrée dans la deuxième ligne de leurs tableaux respectifs. Pourtant, ils n’ont pas communiqué cette information dans leur conversation téléphonique. Et en particulier, si Ève interceptait cette conversation, elle ne disposerait pas de cette information. Ce qu’elle saurait est résumé dans le tableau suivant :

PNG - 69 ko

Par exemple, Ève sait maintenant que Alice a choisi le deuxième pull dans l’armoire où ils sont rangés par Couleur, et que Bob a mesuré la Couleur de ce pull, mais elle ne sait pas quelle est la Couleur du pull. Par contre, Alice et Bob, eux, ils le savent ! Pour le dire différemment, des 4 lignes constituant les deux tableaux, Ève en connaît deux, tandis que Bob et Alice en connaissent chacun trois ainsi que la partie verte de la quatrième. Ils en savent donc plus qu’Ève.

Étape IV. Construction de la clé.

Bob et Alice retiennent les 5 premiers chiffres qui apparaissent dans les colonnes vertes. Dans l’exemple, il s’agit de ceux-ci :
\[ 00101. \]
Ils interprètent cette suite comme un nombre écrit en représentation binaire :
\[ 00101=1\times 2^2+1 \]
ce qui donne, en représentation décimale, le nombre $5$. C’est ce nombre qu’ils utiliseront dans le Chiffre de César. Ils chiffreront donc leurs messages en décalant toutes les lettres de $5$ places : A devient F, B devient G, et ainsi de suite. Je souligne encore une fois qu’Ève n’a pas les informations nécessaires pour construire la clé de chiffrement, même en ayant écouté la conversation entre Alice et Bob.

Pour en savoir plus : et si la clé est plus grande que $25$ ? Une petite subtilité sans conséquence.

Quand la clé vaut $2$, on remplace A par C, B par D, ..., X par Z. Que faire de Y ? Il n’y a pas de lettre après Z, donc on ne peut pas décaler de deux places à droite. La solution est évidente : on remplace Y par A et Z par B. C’est-à-dire : on recommence à A une fois arrivé à Z. Maintenant, si la clé est un nombre de 5 chiffres en représentation binaire, on peut avoir comme clé :
\[ 11110 \]
ce qui est trente. Comment procéder alors ? Par exemple, si on cherche quelle lettre est 30 places plus loin que A, on voit que, puisque Z est 25 places plus loin que A, il faut encore avancer de 5 pas pour tomber sur E. On remplace donc A par E, B par F, et ainsi de suite. En fin de compte, que la clé soit $4$ ou $30$, cela revient au même. Et que faire si la clé est
\[ 011010 \]
c’est-à-dire $26$ ? Dans ce cas, on remplace A par A, B par B, et ainsi de suite. En d’autres termes, on n’aura pas chiffré le message du tout ! Dans ce cas, Alice et Bob n’ont pas d’autre choix que de recommencer le protocole pour construire une autre clé. En pratique, quand les clés sont de très grands nombres, ce problème n’apparaît pas ou très peu.

Ceci termine la description du protocole BB84. A priori, si vous avez à votre disposition des pulls quantiques, vous pouvez le mettre en œuvre. Bien sûr, ce qu’il faut plutôt est une source de qubits, sur lesquels vous pouvez mesurer des observables incompatibles, puisque des pulls quantiques, cela n’existe pas. Je dirai un mot sur les réalisations concrètes du protocole BB84 plus loin.

Deux questions restent à traiter. Les voici :

≪Pourquoi cette procédure est-elle réputée fiable ?≫

≪En quoi est-il indispensable d’utiliser des qubits ou des pulls quantiques dans cette procédure ? En d’autres termes, quel est le rôle essentiel de la mécanique quantique ici ? Quel avantage apporte-t-elle ?≫

Comme vous verrez, il s’agit deux fois de la même question.

Ève peut-elle casser BB84 en écoutant aux portes ?

Par « casser BB84 » je veux dire obtenir, à l’insu d’Alice et de Bob, la clé qu’ils construisent par la procédure décrite ci-dessus. Nous avons déjà vu que simplement écouter la conversation entre Alice et Bob pendant l’étape III du protocole ne suffit pas pour qu’Ève puisse obtenir le code. Mais il y a une autre façon de faire qui vient tout de suite à l’esprit. Ève pourrait non seulement écouter cette conversation, mais aussi intercepter les pulls quantiques envoyés par Alice à Bob pendant l’étape I.B.
Elle pourrait alors mesurer soit la Couleur ou la Taille de chaque pull, puis le transmettre à Bob. Mais cela ne fonctionnera pas pour une raison qui tient aux propriétés subtiles de la mécanique quantique.

En effet, considérons le deuxième pull envoyé par Alice. Il est de Couleur déterminée, comme on l’a vu. Et Bob mesure sa Couleur. Ève, qui ne sait pas cela, doit faire un choix : mesurer la Couleur ou la Taille du pull. Si elle choisit de mesurer sa Taille, elle trouvera soit M, soit L, mais si ensuite elle transmet le pull à Bob, et qu’il mesure la Couleur, il ne trouvera plus à coup sûr qu’il est bleu. En effet, nous avons vu que si l’on observe la Taille d’un pull quantique, et qu’après on fait une mesure de sa Couleur, alors la probabilité d’observer que le pull est bleu ou qu’il est rouge est la même. Donc, Alice transmet un pull de Couleur bleue, Bob mesure sa Couleur, mais il risque de conclure qu’il est rouge parce qu’après l’intervention d’Ève, c’est la Taille du pull qui est déterminée et donc sa Couleur est incertaine. C’est précisément en cet endroit du raisonnement que les observables incompatibles et le principe d’incertitude jouent un rôle essentiel.

On en conclut que, si Ève procède ainsi avec tous les pulls, elle risque à chaque fois de perturber la mesure que fera Bob après elle. En effet, comme elle ne sait pas quels pulls transmis par Alice ont une Couleur déterminée, et lesquels ont une Taille déterminée, elle choisit au hasard pour chaque pull de mesurer l’une ou l’autre de ces caractéristiques [5]. Il en résulte en particulier que, dans approximativement la moitié des cas où Bob fait la même mesure qu’Alice (les colonnes vertes dans le tableau), Ève fait l’autre, et dans ces cas elle risque donc de perturber le résultat obtenu par Bob. En d’autres termes, dans les colonnes vertes, Bob ne trouvera plus toujours le même résultat qu’Alice.
Le résultat est illustré dans le tableau suivant :

PNG - 129.9 ko

Ici, j’ai marqué en rouge les numéros des pulls pour lesquels Ève n’a pas mesuré la propriété fixée par Alice. On voit alors, par exemple pour le deuxième pull, que Bob n’obtient plus la même Couleur qu’Alice. Et pour le neuvième pull, il n’obtient plus la même Taille. Pour le huitième pull, par contre, même si Ève a mesuré la Taille du pull bleu envoyé par Alice, Bob constate tout de même qu’il est bleu. En effet, une fois que le pull a obtenu une Taille précise, suite à la mesure d’Ève, une observation de sa Couleur peut donner rouge ou bleu avec la même probabilité. Ce qui est important ici, c’est que Bob et Alice n’ont plus systématiquement le même résultat dans les colonnes vertes. J’ai écrit en bleu les valeurs obtenues par Bob qui ne sont plus les mêmes que celles d’Alice à cause de l’intervention d’Ève : il s’agit de celles correspondant au deuxième, neuvième et quinzième pull.

Par conséquent, dans l’étape IV, Bob et Alice n’obtiendront plus la même clé. En effet, en gardant les 5 premières colonnes vertes, Bob pensera que la clé est $10100$, c’est a dire $20$ ! Tandis qu’Alice pense toujours qu’elle est $00101$, c’est à dire $5$. Et Ève ne sait pas trop : elle connaît deux des cinq chiffres de la clé, celles dans les colonnes vertes $3$ et $5$, pour lesquelles elle a fait la bonne mesure.

≪Mais, me direz-vous, Alice et Bob n’ont aucun moyen de savoir qu’Ève est intervenue puisqu’ils ne communiquent pas, pendant leur coup de fil, le résultat de leurs mesures sur les pulls ?!! Si Ève interfère, ils construiront des clés différentes, sans le savoir, et ils constateront après coup qu’ils ne sont pas en mesure de décoder les messages chiffrés qu’ils échangent. La méthode est donc inefficace.≫ Vous avez raison, mais on peut remédier facilement à ce problème.

En effet,
Alice et Bob peuvent, à la fin de leur coup de fil dans l’étape III, partager un peu plus d’information. Ils choisissent au hasard la moitié des colonnes vertes et dévoilent, pour ces colonnes-là, l’un à l’autre, quelle valeur ils ont obtenue chacun pour la mesure qu’ils ont faite. Par exemple, ils peuvent communiquer les valeurs de Couleur ou de Taille observées dans les colonnes vertes 2,8,11,15, 18 et 19. Vous remarquerez qu’Ève, qui peut écouter la conversation, connaîtra maintenant ces valeurs, elle aussi, mais on verra plus loin que ce n’est pas grave.

Il y a deux cas de figure. Supposons d’abord qu’Ève a en effet fait des mesures sur les pulls transmis par Alice. Dans l’exemple ci-dessus, Alice et Bob constateront que, sur ces six pulls, ils ont bien tous deux mesuré la Couleur du pull ou la Taille du pull, mais ils n’ont pas trouvé la même valeur pour les pulls numéro 2 et 15. Ils concluront que quelqu’un a manipulé les pulls pendant leur trajet, et que la sécurité de leur protocole est compromise. Si c’est le cas, ils doivent recommencer en assurant mieux la sécurité des pulls quantiques pendant leur trajet entre Alice et Bob.

Le deuxième cas de figure est celui où Ève n’est pas intervenue. Dans ce cas, leurs mesures pour les cinq pulls 2,8,11,15,18,19 seront identiques. Ils pourront conclure que personne n’a tenté de manipuler les pulls, et faire confiance au protocole. Ils utiliseront alors les colonnes vertes restantes pour construire le code. Ici, il s’agit des colonnes 3,5,9,12,14. Le code sera donc $01001$ ce qui fait le nombre entier $9$.

Et si Ève était plus maline ?

Que font les espions, depuis toujours, pour intercepter des messages ? Ils en font une copie ! Pourquoi Ève ne peut-elle donc pas tout simplement intercepter les pulls envoyés par Alice, en faire une copie, transmettre l’original à Bob sans y toucher, garder les copies jusqu’à ce qu’elle ait appris, pendant le coup de fil entre Alice et Bob de quels pulls ils ont déterminé soit la Couleur, soit la Taille, puis mesurer, elle aussi, cette même observable ? Par exemple, en procédant ainsi, elle saurait que Bob et Alice ont déterminé la Couleur du deuxième pull, et en mesurant sa Couleur, elle saurait que ce deuxième pull est bleu ! En procédant ainsi avec tous les pulls, elle connaîtrait la clé, supposée secrète, partagée par Alice et Bob. Qui n’y verraient que du feu : en effet, Bob reçoit bien les originaux des pulls envoyés par Alice.

Cela paraît l’évidence même ! Or, cela ne peut pas fonctionner. En effet, la mécanique quantique nous enseigne qu’il est impossible de faire une copie d’un système quantique, sans le changer. C’est ce qu’on appelle le théorème du non-clonage. Dans notre contexte, cela signifie qu’on ne peut pas construire une machine qui copie des pulls en assurant que les pulls bleus restent bleus, les pulls de Taille M restent de taille M, et ainsi de suite. Une fois qu’on a appris les bases de la mécanique quantique, ce résultat est très facile à établir. Par contre, sans un peu plus de formalisme mathématique, je n’ai personnellement pas d’argument pour vous en convaincre. Il va donc falloir me croire sur parole sur ce point.
On peut alors conclure que Ève ne peut pas procéder en copiant les pulls (ou les qubits) envoyés par Alice : c’est tout simplement incompatible avec la mécanique quantique.

Plus généralement, on peut démontrer que toute manipulation par Ève des pulls envoyés par Alice pourra être détectée par Alice et Bob. C’est dans ce sens que le protocole BB84 est considéré inviolable ou ≪ inconditionnellement sûr ».

Pour en savoir plus : et si la mécanique quantique était fausse ?

Je voudrais souligner ceci. Ce qui est dit ici est la chose suivante : si la mécanique quantique donne une description en tout point fiable du comportement de la nature, et notamment des qubits, alors il est impossible de faire des copies de qubits. Bien évidemment, il est toujours possible que la mécanique quantique ne donne pas une description en tout point exacte de la nature, auquel cas le théorème de non-clonage ne s’applique peut-être pas en toute circonstance. Je veux dire, il serait vrai comme théorème mathématique dans le cadre de la mécanique quantique, mais il ne s’appliquerait pas toujours au comportement de la nature ! C’est une possibilité que nous ne pouvons pas exclure. Aujourd’hui, cette éventualité ne paraît pas très probable. Depuis presque 100 ans maintenant, toutes les prédictions de la mécanique quantique se sont vérifiées dans diverses expériences destinées précisément à tester cette théorie dans ses moindres détails. La nature semble bien se comporter, au niveau microscopique, comme la mécanique quantique le prédit. Cela n’empêche que toute théorie physique a ses limites et il n’est pas impossible que, dans certaines circonstances, la mécanique quantique ne s’applique pas. Si de telles situations sont un jour découvertes, il faudra s’interroger si cela met en cause la sécurité des communications basées sur le protocole BB84 ou sur des protocoles semblables.

BB84 en pratique

En conclusion, le protocole BB84 fournit une méthode de partage de clé totalement sûre grâce aux propriétés quantiques de la matière.
Sa mise en œuvre concrète n’est néanmoins pas facile, notamment si les deux parties Alice et Bob se trouvent à une grande distance l’un de l’autre.
Depuis 1984, l’année où le protocole BB84 a vu le jour, d’autres méthodes de distribution quantique de clé, plus sophistiquées, mais aussi potentiellement plus performantes, ont été développées, analysées et testées. Par ailleurs, des implémentations commerciales de ces protocoles sont depuis quelque temps proposées par des startup (IDQuantique, MagiQTech, Qasky, QuantumCTek...) qui en vantent les mérites sur leurs pages web. Les obstacles à un déploiement massif de tels systèmes sont néanmoins nombreux et l’identification des situations où ils sont performants n’est pas évidente ; pour une évaluation critique des promesses de cette nouvelle technologie quantique je vous recommande l’analyse proposée par l’Agence Nationale de la Sécurité des Systèmes d’Information ou encore le blog d’Olivier Ezratty.

Conclusion

Nous voilà donc arrivés au bout de cette petite excursion dans le fascinant monde quantique. Je dis ≪petite≫ parce que les paysages sont vastes et nous n’en avons sommairement exploré qu’un tout petit coin. Ceci dit, j’avais initialement pensé raconter cette histoire en un seul article d’une dizaine de pages. En fin de compte, j’en ai noirci trois fois plus. Si vous m’avez accompagné jusqu’ici, je vous remercie donc, chère lectrice, cher lecteur, de votre patience et je vous félicite pour votre persévérance ! J’ai voulu illustrer à travers l’exemple de la mécanique quantique que si d’une part la science fondamentale est une création née de notre insatiable curiosité et de notre désir de comprendre le monde matériel qui nous accueille, d’autre part elle peut nous rendre des services pratiques aussi précieux qu’inattendus : ≪Rien n’est plus pratique qu’une bonne théorie »  [6]. Le chemin de la théorie à l’application peut néanmoins être long et tortueux.

Post-scriptum :

Je remercie les collègues et amis qui ont bien voulu lire des versions antérieures de ce texte et m’aider à l’améliorer à travers leurs remarques : Eveline De Bièvre, Stéphanie Didi, Giuseppe Patera, Jean-Michel Torres, Pauline Truong, ainsi que le relecteur d’Images des mathématiques Thomas Chaumeny.

Article édité par Aurélien Alvarez

Notes

[1Le nom vient des initiales de ses inventeurs, Charles Bennett et Gilles Brassart, qui l’ont proposé en 1984.

[2Depuis la nuit des temps, Ève a mauvaise presse. Ici aussi, elle a le mauvais rôle. Mais je pense que le choix de son nom dans le contexte présent s’explique aussi par un petit jeu de mots. En anglais, écouter aux portes se dit ≪eavesdropping », et ≪eave≫ se prononce comme ≪ Eve ≫ en anglais.

[3Dans un texte pour Image des mathématiques, il faut bien un peu de mathématiques !

[4J’ai pris $20$ pour les besoins de l’illustration. En pratique, Alice doit envoyer un très grand nombre de pulls quantiques ou qubits.

[5Elle pourrait aussi décider de toujours mesurer la Couleur, ou de toujours mesurer la Taille. Cela ne changerait pas le raisonnement qui suit !

[6Kurt Lewin, 1952

Partager cet article

Pour citer cet article :

Stephan De Bièvre — «À la découverte de la cryptographie quantique» — Images des Mathématiques, CNRS, 2021

Crédits image :

Image à la une - Stéphanie Didi
img_24510 - Stéphanie Didi
img_24511 - Stéphanie Didi
img_24512 - Stéphanie Didi
img_24513 - Stéphanie Didi
img_24514 - Stéphanie Didi

Commentaire sur l'article

Laisser un commentaire

Forum sur abonnement

Pour participer à ce forum, vous devez vous enregistrer au préalable. Merci d’indiquer ci-dessous l’identifiant personnel qui vous a été fourni. Si vous n’êtes pas enregistré, vous devez vous inscrire.

Connexions’inscriremot de passe oublié ?