Enigma : la machine qui s'est trahie elle-même
Le chiffre de César du chapitre précédent a une grosse fuite : ce qui est fréquent le reste. En français la lettre la plus utilisée est le E, donc la lettre qui revient le plus souvent dans le texte chiffré est le E. Tu comptes et c'est fini. Mais si la serrure était remise à zéro après chaque lettre ? L'Allemagne a construit une machine pour ça dans les années trente, et cette machine s'appelle Enigma. Ce site porte son nom.
Des mots dont tu vas avoir besoin
- Rotor
- Une roue avec 26 contacts de chaque côté et, à l'intérieur, 26 fils soudés en tous sens. Une lettre entre, une autre sort. Il y en a trois côte à côte, et après chaque touche celle de droite avance d'un cran.
- Réflecteur
- Un bloc au fond qui renvoie le courant. La lettre traverse donc d'abord les trois rotors, rebondit, et les retraverse dans l'autre sens. Cette seule pièce fait la machine telle qu'elle est, défaut compris.
- Position
- Les trois lettres que tu vois dans les fenêtres avant de commencer. C'est la clé du message. Toi et le destinataire devez régler exactement les mêmes trois.
- Encoche
- Une entaille sur le bord d'un rotor. Quand elle passe, la roue entraîne sa voisine d'un cran, comme le compteur kilométrique d'une voiture.
- Supposition
- Un morceau de texte dont tu penses qu'il est dans le message. En anglais on dit crib. Plus bas, ça devient l'outil avec lequel tu commences à casser.
Un César qui saute après chaque lettre
Chez César tu décales chaque lettre d'autant. Chez Enigma la lettre traverse trois roues qui ont chacune leur câblage en tous sens, rebondit au fond et revient. En soi, cela reste un seul remplacement fixe. La différence est dans la dernière phrase de l'explication ci-dessus : après chaque touche, une roue tourne. Le remplacement que tu utilises pour la deuxième lettre n'est plus celui de la première.
Le rotor de droite tourne à chaque touche. Quand il a fait un tour complet, son encoche pousse celui du milieu d'un cran, et celui-ci pousse à son tour celui de gauche. Comme les roulettes d'un compteur, sauf que chaque roulette contient un chiffrement. Il faut 26 × 26 × 26 = 17 576 touches pour que la machine se retrouve exactement comme au départ.
Tape sur la machine
Tout se passe dans ton navigateur. Rien n'est envoyé au serveur.
- Clique sur Fais-la tourner. Ton message sort en texte chiffré, et tu vois où les roulettes se sont arrêtées.
- Remets la position sur
QFR, colle le texte chiffré dans le champ du haut et clique encore. Ton message revient. La même opération, dans les deux sens. - Clique sur Dix fois la même touche. Dix A à l'entrée, et regarde ce qui sort.
- Clique sur Une lettre devient-elle jamais elle-même ? et lis bien la réponse. La suite de ce chapitre parle de ça.
Pourquoi personne ne l'a cassée en comptant
Compte le nombre de façons de régler une telle machine. Tu choisis trois rotors dans une boîte de cinq, et l'ordre compte : cela fait 60 possibilités. Tu les mets dans une des 17 576 positions. Et devant, il y a encore un tableau de connexions qui échange dix paires de lettres, soit 150 738 274 937 250 possibilités.
60 × 17 576 × 150 738 274 937 250 ≈ 1,6 × 1020
Cent soixante trillions de réglages. Pour comparer : il s'est écoulé environ 4 × 1017 secondes depuis le big bang, donc c'est plus de trois cents fois autant. Tout essayer n'était pas une option, ni en 1940 ni aujourd'hui à la main. Et le comptage de lettres qui casse un César en dix minutes ne donne rien ici, car le E est devenu autre chose à chaque frappe.
C'est le chapitre où tu t'attendrais à ce que l'histoire s'arrête. Elle ne s'arrête pas.
Le seul fil qui l'a trahie
Reregarde le réflecteur. Le courant y va et revient par un autre fil. Maintenant la question : et si tu appuies sur A et que la machine en fait un A aussi ? Alors le courant devrait prendre au retour exactement le même chemin qu'à l'aller. Par le même fil, dans les deux sens à la fois. C'est impossible.
Donc : aucune lettre ne devient jamais elle-même. Ce n'est ni un hasard ni une négligence, cela découle inévitablement de ce bloc au fond. Et c'est exactement ce qui rendait la machine pratique : puisque l'aller et le retour sont identiques, il n'a jamais fallu choisir entre chiffrer et déchiffrer. Une position, une opération.
Une telle propriété n'est jamais gratuite. Ce qui rendait le maniement facile a donné à l'attaquant une règle toujours vraie. Et une règle toujours vraie est un tamis.
Le tamis
Les messages allemands commençaient souvent pareil. Un bulletin météo de six heures du matin, tous les jours, avec le mot Wetterbericht dedans. Si tu sais que ce mot y est mais pas où, tu peux le glisser sous le texte chiffré, position par position. Partout où le mot rencontre la même lettre que le texte chiffré en dessous, tu sais avec certitude : ce n'est pas ici. Parce qu'une lettre ne devient jamais elle-même.
Tu ne sais toujours pas quelle était la position. Mais tu as fortement réduit le nombre d'endroits à fouiller, sans essayer un seul réglage.
Glisse la supposition le long du message
Tout se passe dans ton navigateur. Rien n'est envoyé au serveur.
- Clique sur Fais glisser. Sous le texte chiffré apparaît une barre avec un point à chaque endroit où la supposition peut tenir, et un X là où elle se heurte.
- Compte les points. Voilà ce qui reste de tout le message.
- Remplace la supposition par
RIENDEPARTICULIERet refais glisser. Autre supposition, autre barre. - Tape une supposition qui n'y est sûrement pas et regarde le résultat.
Dans chapitre 9.5 tu franchiras la dernière étape : tu y recevras exactement ce message et tu chercheras la position qui le rend lisible. Les 17 576, car c'est ce qui reste quand on laisse le tableau de connexions de côté. Ton navigateur n'y mettra pas une seconde.
Qui l'a fait
Pas les Britanniques en premier. En 1932, le mathématicien polonais Marian Rejewski a reconstitué le câblage des rotors sans en avoir jamais vu un, uniquement en réfléchissant à ce qui se passe quand on enchaîne des remplacements. Avec Jerzy Różycki et Henryk Zygalski, la Pologne lisait le courrier allemand des années avant la guerre. Juste avant l'invasion, ils ont tout transmis aux Britanniques et aux Français.
À Bletchley Park, Alan Turing et Gordon Welchman ont bâti là-dessus : une machine, la Bombe, qui partait d'une supposition et parcourait tous les réglages qui ne se contredisaient pas d'emblée. Cette supposition, c'est exactement ce que tu as fait glisser plus haut.
Ce que tu retiens : les mathématiques d'Enigma étaient excellentes pour leur époque. Ce qui l'a brisée, c'est une propriété qui rendait le maniement confortable, plus des gens qui tapaient le même mot chaque matin. C'est la même leçon que dans chapitre 9.5, quatre-vingts ans plus tôt.
Ça, c'est des maths : les permutations
Un réglage d'Enigma est une permutation de 26 lettres : une façon de mélanger l'alphabet où chaque lettre reçoit exactement une place. À cause du réflecteur, cette permutation est d'une espèce très particulière. Elle est son propre inverse — applique-la deux fois et tu es revenu au départ, et c'est exactement pourquoi chiffrer et déchiffrer sont ici la même chose. Et elle n'a aucun point fixe : aucune lettre ne reste en place. De telles permutations n'existent que si l'on peut répartir l'alphabet en treize paires, et sur 26 lettres il y en a 7 905 853 580 625. Rejewski a cassé la machine en regardant ce qui se passe quand on enchaîne de telles permutations : les petits cycles qui apparaissent alors vont toujours par paires de même longueur. C'est un théorème de théorie des groupes, la matière que tu croises dans chapitre 7.2 en additionnant des points. Les mêmes mathématiques, trente ans plus tôt, et elles ont alors gagné une guerre.