Enigma@Home est une adaptation
à BOINC du projet M4 de Stefan Krah. Le projet M4 a pour but
de casser le chiffrage de 3 messages codés par la machine
électro-mécanique Enigma. Ces 3 messages ont
été interceptés le 25 Novembre 1942
par le destroyer de la Royal Navy HMS
Hurricane dans l'Atlantique Nord et sont
censés être intacts. Ralph Erskine a
présenté les messages interceptés dans
une lettre
au journal Cryptologia. Les signaux ont été
vraisemblablement chiffrés avec les quatre
rotors de Enigma M4
- d'où le nom du projet.
Le projet M4 a
été officiellement lancé le 9 Janvier
2006. Le logiciel utilisé par ce projet est Open Source,
ainsi vous pouvez voir ce que vous calculez. Déjà
2 des 3 messages ont été
déchiffrés par le projet M4 (voir le paragraphe
les résultats ou cet
article sur le site de la BBC)
La méthode
utilisée est une attaque sur texte chiffré seul.
Le cryptanalyste possède des exemplaires chiffrés
des messages, il peut faire des hypothèses sur les messages
originaux qu'il ne possède pas. Ceci signifie qu'il n'y a
besoin de deviner ou de connaître qu'une petite partie du
texte en clair pour réussir le déchiffrage. La
cryptanalyse est plus ardue de par le manque d'informations
à disposition, ce qui est le cas dans ce projet.
L'attaque sur texte chiffré
seul la plus simple utilise la force brute. On prend en compte toutes
les clés possibles, on déchiffre le message, et
on détermine la vraisemblance du chiffre en clair ainsi
obtenu. L'ensemble des clés Enigma
est trop grand pour pouvoir utiliser cette approche.
La méthode
utilisée ici est donc un mélange d'attaque par
force brute et d'un algorithme d'exploration par escalade (Hill
climbing).
Le programme effectue par
itération toutes les combinaisons possibles de la machine,
exceptés pour les combinaisons du
tableau de connexion (composant permettant de complexifier encore plus
le processus de chiffrement). C'est une simplification
considérable, puisque les combinaisons du tableau de
connexion
créent une grosse partie de l'ensemble des clés.
Pour chacune de ces combinaisons de la machine, le programme utilise un
algorithme d'exploration par escalade pour trouver les combinaisons
optimales du tableau de connexion.
Les algorithmes d'exploration par
escalade essayent d'optimiser un objet, dans ce cas-ci les combinaisons
du tableau de connexion, en modifiant l'objet étape par
étape. Après chaque changement la
« qualité » du nouvel
objet doit être déterminé par une
fonction calculant
un score. Les changements qui amènent vers un "meilleur"
objet sont retenus.
Ici, les changements essayent constamment de trouver de nouvelles
connections électriques du tableau de connexion d'Enigma.
Après chaque changement, la fonction calculant
un score
teste les nouvelles connections électriques en
déchiffrant le message et en tentant de
déterminer le degré de correspondance du texte en
clair avec des statistiques d'un
langage naturel . La fonction calculant
un score utilise les statistiques de Sinkov.
Le premier message a
été cassé le 20 Février
2006. Le signal en question est le second des messages
interceptés présentés dans la lettre
de Erskine :
Bei Angriff unter Wasser gedrueckt,
Wasserbomben. Letzter Gegnerstandort 08:30 Uhr, Marqu AJ 9863, 220
Grad, 8 Seemeilen, stosse nach. 14 Millibar faellt, NNO 4, Sicht 10.
Traduction en
français :
De Looks:
Contenu du signal radio 1132/19 :
Forcé de s'immerger durant
l'attaque, grenades sous-marines. Dernière localisation de
l'ennemi 08:30h, Marqu AJ 9863, 220 degrés, 8 milles
nautiques, progresse vers [l'ennemi]. [Pression] 1014
milibarres [tendance] à la baisse, NNO 4,
visibilité 10
Explications
1851/19/252:
heure/date/numéro du message
AJ 9863: grille de localisation
allemande correspondant à 51-33 N, 41-35 W
Looks: Hartwig Looks,
lieutenant-capitaine à bord du sous marin U264
Le second message a
été cassé le 7 Mars 2006. Le signal en
question est le troisième des messages
interceptés présentés dans la lettre
de Erskine.
Auf Geleitkurs 55° nichts
gefunden, marschiere befohlenes Qu. Standort Marqu. AJ 3995. SO 4, See
3, 10/10 bedeckt, 28 mb steigend, Nebel, Sicht 1 sm.
Schroeder
Traduction en
français
0425 Radio signal émis
0246/21/203:
Rien trouvé sur le trajet
de l'escorte 55°, avance vers la position ordonnée.
Position actuelle
AJ 3995, [vent] sud-est [force] 4, mer [de force] 3, 10/10 couvert,
[pression] [10]28 mb [tendance] à la hausse, brouillard,
visibilité 1 mille nautique.
Schroeder
Explications
0246/21/203 :
heure/date/numéro du message
AJ 3995: grille de localisation
allemande correspondant à 56-33 N, 37-36 W
Schroeder : Hermann Schröder,
Oberleutnant zur See (grade de lieutenant supérieur dans la
marine allemande) à bord du sous marin U623
Dernier message non
encore déchiffré, ce pour quoi nous calculons en
ce moment :
Cet article a été publié le 12-09-2007 11:38. Vous pouvez suivre les commentaires suscités par cet article grâce au fil RSS 2.0. Vous pouvez laisser un commentaire.
Dernière mise à jour 21-07-2008 10:20
Vos commentaires (0)
Seul les utilisateurs enregistrés peuvent commenter un article.