Une expérience, pas une démo

J'ai donné Enigma à une IA.

Un vrai message chiffré avec une Enigma I, une clé secrète scellée avant le test, un seul prompt. L'IA a retrouvé la clé en 2 minutes. Tout ce qu'il faut pour le vérifier est sur cette page.

01 · La machine

Essaie Enigma toi-même

Chaque touche envoie du courant à travers le tableau de fiches (qui échange des paires de lettres), puis 3 rotors : des roues dont le câblage mélange l'alphabet. Un réflecteur renvoie le courant dans l'autre sens et une lampe s'allume. Après chaque lettre, le rotor de droite avance d'un cran : le brouillage change à chaque frappe.

Réglée sur la clé secrète de l'expérience. Tape W cinq fois : G, X, M, K, X. La même touche, cinq lettres différentes ou presque. Et Enigma est réversible : remets à zéro et tape GXMKX, tu retrouves WWWWW.

02 · Les chiffres

Combien de clés possibles ?

Choisir et ranger 3 rotors parmi 5
5 × 4 × 3
= 60
Position de départ des 3 rotors
26 × 26 × 26
= 17 576
Brancher 10 fiches
26! façons de ranger l'alphabet, ÷ 6! pour les 6 lettres sans fiche, ÷ 10! car l'ordre des fiches ne compte pas, ÷ 2¹⁰ car une fiche A–G est la même que G–A.
26! ÷ (6! × 10! × 2¹⁰)
= 150 738 274 937 250

60 × 17 576 × 150 738 274 937 250 =

158 962 555 217 826 360 000

Sans compter les anneaux des rotors, inconnus eux aussi.

03 · La faille

Le « crib » : deviner le début du message

Les bulletins météo allemands suivaient chaque matin le même format. Les cryptanalystes de Bletchley Park pouvaient donc deviner les premiers mots d'un message : c'est un crib. Exemple historique : WEUBYYNULLSEQSNULLNULL, « bulletin météo 06 h 00 ».

Enigma ne chiffre jamais une lettre en elle-même. Si une lettre du crib tombait face à la même lettre, la position serait impossible. Ici, aucune : le crib peut bien se placer au début.

04 · La méthode

Comment Turing a fait

  1. Le menu. Chaque paire clair/chiffré relie deux lettres (W–G à la position 0, E–Z à la position 1…). On dessine le graphe.
  2. Les boucles. On cherche les cycles, comme E → T → S → H → Z → E. Dans une boucle, l'effet des fiches s'annule presque.
  3. Une seule hypothèse. On suppose « E est branché sur telle lettre » et on suit la boucle à travers les rotors. Contradiction ? Position éliminée. On teste ainsi les rotors sans énumérer les 150 000 milliards de tableaux de fiches.
  4. La Bombe. Une machine d'environ une tonne fait ce test électriquement pour les 17 576 positions d'un ordre de rotors en environ 20 minutes. Gordon Welchman l'améliore avec sa « diagonal board ».
  5. Les arrêts. Chaque arrêt donne une piste. Des humains complètent les fiches et les anneaux, puis vérifient que le texte est de l'allemand.
pos 2pos 12pos 18pos 9pos 1 E T S H Z

Une vraie boucle du menu de notre message : E/T en position 2, T/S en 12, S/H en 18, H/Z en 9, Z/E en 1.

La Bombe britannique (Turing et Welchman, 1940) descend de la bomba polonaise de Marian Rejewski. Les Polonais avaient aussi reconstitué le câblage des rotors ; en juillet 1939, ils ont partagé leurs résultats et des répliques d'Enigma avec les Britanniques et les Français.

05 · L'expérience

Un prompt, deux essais

L'IA reçoit seulement le texte chiffré, le crib et le câblage public des rotors. La clé n'est jamais dans le prompt, ni sur le disque pendant les essais : seule son empreinte SHA-256 y est.

Lire le prompt intégral
Chargement…

Essai 1 · sans ordinateur

Échec

« Je ne peux pas la retrouver honnêtement. […] Inventer une clé ou un texte clair serait malhonnête. » Elle décrit la bonne méthode mais ne peut pas faire le calcul de tête.

Essai 2 · l'IA peut écrire et lancer du code

Clé trouvée en 2 min

Elle écrit un simulateur Enigma et une attaque de type Bombe en C : 60 ordres × 26 anneaux × 17 576 positions, 5,2 s de calcul sur 4 cœurs. Un seul arrêt : rotors I-III-V et 9 fiches. Pour la 10ᵉ fiche, seule DL donne de l'allemand.

06 · Vérifie toi-même

Les preuves, calculées dans ton navigateur

Rien n'est pré-calculé : chaque vérification tourne en direct avec le simulateur de cette page.

○
Le simulateur est fidèle. Il redéchiffre un vrai message allemand du 7 juillet 1941 (opération Barbarossa, rotors II-IV-V, anneaux BUL, départ BLA).
○
La clé de l'IA déchiffre le message. Clé trouvée : I-III-V, anneaux AAN, départ WIO, fiches AG CH DL EP FK IR MO NQ TX VW.
○
Elle rechiffre exactement les 109 lettres interceptées.
○
La clé révélée correspond à l'empreinte scellée avant le test. Empreinte publiée : bcbc2e5fbcdb662cf5e2ee530b264e9f6f94f21f221b7027a71090eab6ac422a

Pourquoi la clé de l'IA (anneaux AAN, départ WIO) diffère de la clé secrète (anneaux OGN, départ KOO) tout en étant juste ? Pour les rotors de gauche et du milieu, seul l'écart entre anneau et position compte sur ce message, car le rotor de gauche n'avance jamais : K−O = W−A et O−G = I−A. Les deux clés sont équivalentes et donnent le même texte. La vérification 3 le montre.

07 · Fichiers

Tout le matériel

prompt-integral.md
Le prompt exact des deux essais
bombe.c
L'attaque écrite par l'IA (essai 2)
result-ia.json
La réponse de l'IA
challenge.json
Ce qui a été donné à l'IA
commitment.sha256 · secret-revele.json
L'empreinte scellée et la clé révélée
enigma_sim.py · validate.py
Simulateur et tests (Barbarossa 1941, 2 000 clés comparées à py-enigma)