Masmoudi / Enigma

PLAN
2 stars 2 forks source link

Documentation sur la clé Enigma #7

Open Masmoudi opened 9 years ago

Nouioui commented 9 years ago

http://fr.wikipedia.org/wiki/Cryptanalyse_d%27Enigma

Nouioui commented 9 years ago

Les premières versions commerciales d'Enigma remontent au début des années 1920. La machine apparaît alors comme très sûre, impossible à casser. Dès 1926, plusieurs pays tentent de percer les mystères d'Enigma. Mais les mathématiciens américains, britanniques et français échouent. Pendant ce temps, la marine allemande met en place des versions modifiées d'Enigma pour chiffrer ses transmissions.

Les chaînes Les Polonais exploitent les failles cryptographiques des Allemands. Leurs agents ont fourni un exemplaire d'un vieux manuel d'Enigma qui cite un exemple de chiffrement avec le texte en clair, la clé et le résultat une fois chiffré. Rejewski l'étudie attentivement.

Le nombre de chaînes possibles est 105 456. Mais, à l'époque, en l'absence d'une puissance calculatrice suffisante, la recherche est quasi impossible. Grâce à Jerzy Różycki et Henryk Zygalski, l'équipe de Rejewski découvre plusieurs techniques d'accélération des calculs. L'une d'elles fait appel à des feuilles transparentes (feuilles de Zygalski), avec les schémas des rotors. Les feuilles sont superposées et les lettres composant une chaîne dite « impossible » sont rayées. À la fin de l'opération, les trois lettres restantes sont la clef du message.

Les Britanniques avaient développé le même genre de technique basée sur une grille, technique qui avait fait ses preuves sur l'Enigma commerciale, mais n'était pas adaptée pour « casser » la version militaire. Une variante de cette méthode consiste à utiliser des cartes perforées. À la fin, un alignement complet des trous indique la clef de trois lettres. Bombe cryptographique

Malgré cette performance, la recherche manuelle n'en est pas moins éreintante. Les Polonais construisent en 1938 une bombe cryptologique, la bomba kryptologiczna, calculateur électromécanique qui teste des milliers de combinaisons des trois rotors dont elle sélectionne les quelques solutions acceptables. Six exemplaires sont montés à Varsovie dans le bureau du chiffre, juste avant septembre 1939. Chacune contient l'équivalent de six machines Enigma commandées électriquement. Le volume occupé est par contre considérable, l'équivalent d'un atelier de 100 personnes, mais le gain de temps est significatif : il suffit de deux heures pour trouver la clef.

Les Polonais seront ainsi capables de déchiffrer, par intermittences, une certaine partie des transmissions de l'armée allemande, durant la Guerre civile espagnole, jusqu'à l'aube de la Seconde Guerre mondiale. Le renseignement avait joué un rôle. Dès 1931, un agent du SR-Guerre français, Hans-Thilo Schmidt, prête des documents liés à Enigma. Invasion de la Pologne Pour illustrer ce principe d'une manière très simplifiée, prenons la phrase suivante en clair : « ATTAQUECESOIRSURWIKIPEDIA ». On intercepte le message chiffré : « YAOPWMKLRBFZLVCXKTROTQALD ». Effectuons une première comparaison : A T T A Q U E C E S O I R S U R W I K I P E D I A Y A O P W M K L R B F Z L V C X K T R O T Q A L D

L'attaque de Turing se base sur la recherche de boucles entre le texte clair et le texte chiffré. La deuxième lettre du message en clair « T » donne un « A » chiffré. La 4e lettre du message en clair est un « A » qui se transforme en « P ». Finalement, la 21e lettre du crible est un « P », il se transforme en « T » et nous voilà donc avec une boucle car elle commence et se termine avec la même lettre. A T T A Q U E C E S O I R S U R W I K I P E D I A Y A O P W M K L R B F Z L V C X K T R O T Q A L D

La bombe teste les configurations qui permettent d'obtenir des boucles. Pour chaque possibilité, on cherche si le crible est compatible avec la boucle observée. Si ce n'est pas le cas, on passe à la configuration suivante. Le nombre des possibilités est 26_26_26*60 = 1 054 560. Impossible de calculer à la main mais pas impossible au moyen de la bombe de Turing. Pour calculer ces combinaisons, on ne peut se contenter d'une seule Enigma. Chaque bombe simule plusieurs Enigma montées en parallèle.

Cette première attaque part du principe que la lettre « T » n'est pas modifiée par le Steckerboard, tableau de permutations qui se limitait à 6 substitutions au début de l'utilisation d'Enigma. Les versions ultérieures de la bombe font appel à divers palliatifs de ce problème grâce à des optimisations mécaniques et algorithmiques astucieuses.

Le chiffreur prend trois rotors et les dispose sur leur position initiale, conformément aux instructions du jour, par exemple I/IV/II "CHD". Ensuite, il frappe deux fois la clef du message, une suite de trois lettres choisies par lui, ex. "MARMAR". Ainsi, le 1er et 4e caractère une fois chiffré ne peuvent pas être ceux qu'il avait frappé, idem pour les 2 et 5èmes et les 3 et 6èmes, ce qui réduit les combinaisons possibles à 24_24_24*60 = 829 440.