0% ont trouvé ce document utile (0 vote)
158 vues10 pages

Enigma

Télécharger au format docx, pdf ou txt
Télécharger au format docx, pdf ou txt
Télécharger au format docx, pdf ou txt
Vous êtes sur la page 1/ 10

République Algérienne Démocratique et Populaire

Ministère de l’Enseignement Supérieur et de la Recherche Scientifique

MINI-PROJET

La Machine Enigma

Présenté par:
Rouainia Mohammed Sami

Département de Génie
Electrique Promotion: 3LTC

Année: 2022/2023

Le sommaire :
CONTENU PAGE
INTRODUCTION 1-2
1/ Le fonctionnement de la machine 2-4
Enigma
1-1 Nombre de clés possibles 4-5
1-2 Point forts et faiblesses 5
2/ L’histoire d’Enigma 5-6
3/ Cryptanalyse d’Enigma 6-7

4/ CONCLUSION 7

SOURCES 8

Introduction:
Enigma machine: est une machine électromécanique portable servant au chiffrement
et au déchiffrement de l'information. Elle fut inventée par l'Allemand Arthur Scherbius
en reprenant un brevet de 1919 d’Hugo Koch. Le terme Enigma désigne en fait toute
une famille de machines, car il en a existé de nombreuses et subtiles variantes,
commercialisées en Europe et dans le reste du monde à partir de 1923. Elle fut aussi
adoptée par les services militaires et diplomatiques de nombreuses nations. Son
utilisation la plus célèbre fut celle faite par l'Allemagne nazi et ses alliés, avant et
pendant la Seconde Guerre Mondial
Enigma chiffre les informations en faisant passer un courant électrique à travers une
série de composants. Ce courant est transmis en pressant une lettre sur le clavier, il
traverse un réseau complexe de fils puis allume une lampe qui indique la lettre
chiffrée. Le premier composant du réseau est une série de roues adjacentes,
appelées rotors , qui contiennent les fils électriques utilisés pour chiffrer le message.
Les rotors tournent, modifiant la configuration complexe du réseau chaque fois qu'une
lettre est tapée. Enigma utilise habituellement une autre roue, nommée réflecteur, et
un composant appelé tableau de connexion, ce qui permet de complexifier encore
plus le processus de chiffrement.

Et voilà cela une petite introduction sur la machine. Donc dans notre plans de ce mini
projet on va voir premièrement comment cette machine fonctionne, après ça on va
étudier l’histoire d’Enigma et finalement on va avoir le cryptanalyse d’Enigma.

1/ Le fonctionnement de la machine Enigma:

Le codage Enigma effectué par la machine Enigma est à la fois simple et astucieux.
Chaque lettre est remplacée par une autre, et la substitution opérée change d'une
lettre à l'autre, un peu comme dans le chiffre de Vigenère. La machine Enigma est
alimentée par une pile électrique. Quand on appuie sur une touche du clavier, un
circuit électrique est fermé, et une lampe s'allume qui indique par quelle lettre on doit
remplacer la lettre que l'on vient de frapper.

Concrètement, le circuit électrique est constitué de plusieurs éléments en chaîne :

- le tableau de connexions: il permet d'échanger des paires de l'alphabet, deux à


deux, au moyen de fiches. Il y a 6 fiches qui permettent donc d'échanger 12 lettres.
Un tableau de connections est donc une permutation très particulière où on a
échangé au plus 6 paires. Par exemple, dans le tableau suivant (avec simplement 6
lettres), on a échangé A et C, D et F, tandis que B et E restent invariants.
- les rotors: un rotor est également une permutation, mais cette fois quelconque. A
chaque lettre en entrée correspond une autre lettre.

On peut composer les rotors, c'est-à-dire les mettre les uns à la suite des autres. La
machine Enigma disposera, au gré de ses évolutions successives, de 3 à 6 rotors.
Parmi ces rotors, seuls 3 sont utilisés pour le codage, et on a le choix de les placer
dans l'ordre que l'on souhaite (ce qui constituera une partie de la clé).
Surtout, les rotors sont cylindriques, et ils peuvent tourner autour de leur axe.
Ainsi, à chaque fois qu'on a tapé une lettre, le premier rotor tourne d'un cran, et la
permutation qu'il engendre est changée. Observons ce changement sur la figure
suivante : le rotor transforme initialement D en B. Lorsqu'il tourne d'un cran, cette
liaison électrique D--->B se retrouve remontée en C--->A et, lorsque la prochaine
lettre sera tapée, le rotor transformera cette fois D en C.

Chaque rotor possède donc 26 positions. A chaque fois qu'une lettre est tapée, le
premier rotor tourne d'un cran. Après 26 lettres, il est revenu à sa position initiale, et
le second rotor tourne alors d'un cran. On recommence à tourner le premier rotor, et
ainsi de suite... Quand le second rotor a retrouvé sa position initiale, c'est le troisième
rotor qui tourne d'un cran.
- Le réflecteur: Au bout des 3 rotors se situe une dernière permutation qui permet de
revenir en arrière. On permute une dernière fois les lettres 2 par 2, et on les fait
retraverser les rotors, et le tableau de connexion.

Résumons sur la machine simplifiée suivante (6 lettres, 2 rotors) comment est codée
la lettre A :

 on traverse le tableau de connexions : on obtient C.


 on traverse les 2 rotors : on obtient successivement A et F.
 on traverse le réflecteur où on obtient E, puis on renvoie dans les rotors pour
obtenir F, A et finalement C après le tableau de connexions.

Remarquons que si on avait tapé C, le courant aurait circulé dans l'autre sens et on
aurait obtenu A.

1-1 Nombre de clés possibles:

Il y a trois éléments à connaitre pour pouvoir coder un message avec la machine


Enigma :

1- la position des 6 fiches du tableau de connexion:


D'abord, il faut choisir 12 lettres parmi 26. C'est donc le nombre de combinaisons de
12 parmi 26, soit 26! /(12!14!). Maintenant, il faut choisir 6 paires de lettres parmi 12,
soit 12!/6!, et comme la paire (A,D) donne la même connexion que la paire (B,A), il
faut encore diviser par 26. On trouve finalement 100 391 791 500.
2- l'ordre des rotors: il y a autant d'ordre que de façons d'ordonner 3 éléments : 3!=6.
3- la position initiale des rotors: chaque rotor ayant 26 éléments, il y a
26*26*26=17576 choix.

On multiplie tout cela, et on obtient plus de 10^16 possibilités, ce qui est énorme pour
l'époque.

Il est important de remarquer que les permutations employées dans les rotors et les
réflecteurs ne peuvent pas être considérées comme faisant partie du secret. En effet,
toutes les machines utilisent les mêmes, et il suffit donc d'en avoir une à disposition.
Les Anglais, par exemple, en ont récupéré une pendant la guerre dans un sous-marin
coulé. Ceci est une illustration d'un principe général en cryptographie, principe dit de
Kerckhoffs, qui veut que tout le secret doit résider dans la clé secrète de chiffrement
et de déchiffrement, et pas dans une quelconque confidentialité de l'algorithme (ici de
la machine) qui ne peut être raisonnablement garantie.

1-2 Point forts et faiblesses:

Nous avons déjà décrits les points forts de la machine Enigma. Pour l'essentiel, c'est
le nombre de clés énorme, et la réversibilité : si, avec la même clé secrète initiale, on
tape le message clair, on obtient le message codé, et avec le message codé, on
obtient le message clair.

L'une des failles de la machine Enigma est que jamais la lettre A ne sera codée par
un A. Cela élimine un certain nombre de cas à inspecter. Une des autres faiblesses
dépend plutôt du protocole utilisé par les allemands : certains opérateurs (par
exemple, ceux qui informaient de la météo) prenaient peu de précautions et
commençaient toujours leurs messages par les mêmes mots (typiquement "Mon
général..."). Les anglais connaissaient ainsi pour une partie du message à la fois le
texte clair et le texte codé, ce qui aide à retrouver la clé. Et comme c'est la même clé
qui sert pour toutes les machines Enigma de l'armée allemande pour un jour donné,
une erreur de protocole dans un message peut compromettre la sécurité de tous les
autres.

2/ l’histoire d’Enigma:

La première machine Enigma, dédiée au chiffrement de l’information, fut inventée au début


du 20e siècle par l'Allemand Arthur Scherbius et tirée d’un brevet d’Hugo Koch datant de
1919. Elle est notamment reconnue pour son utilisation par le régime nazi lors de la
Seconde Guerre mondiale : elle aidait le régime à transmettre des messages codés à
travers l’ensemble de l’Europe. Avant d'être décryptée, Enigma donnait un avantage
stratégique aux Allemands qui pouvaient échanger rapidement des données entre eux à
grande distance et secrètement. Les tous premiers déchiffrements du code Enigma ont été
réalisés au début de la deuxième Guerre mondiale par un mathématicien polonais nommé
Marian Rejewski. Dès le début de la Seconde Guerre Mondiale, il est évident qu'une partie
du combat va se jouer sur le terrain du déchiffrement des données cryptées. Les Anglais
comprennent que décrypter rapidement les messages passés par Enigma est un enjeu
prioritaire. Un groupe de cryptannalystes se réunit secrètement dans le domaine
de Bletchley Park, au Royaume-Uni. Alan Turing, cryptanalyse britannique les rejoint en
1939. En 1942, lui et ses collègues parviennent à déchiffrer les messages du régime nazi.
Les cryptanalyses anglais ont suivi la méthode polonaise des « bombes
électromécaniques» (également nommées « bombes cryptologiques »), un système
analogique permettant de tester en un minimum de temps toutes les clés de chiffrement
possibles. Turing et ses équipes ont perfectionné leurs attaques, qui ne permettaient pas,
dans un premier temps, casser les codes d'Enigma. Les Britanniques ont notamment
profité de failles de communication des Allemands pour comprendre des parties fixes dans
les messages (formules de politesse, météo…etc) et en déduire les parties moins
évidentes et plus intéressantes. 
Les travaux du domaine de Bletchley Park, au Royaume-Uni, restèrent intégralement
secrets jusqu'en 1974. Plus tard, l'algorithme utilisé pour le chiffrement des machines
Enigma a été implémenté par un étudiant en tant que commande intégrée dans le système
UNIX : cette commande se nomme " crypt ". Elle a été utilisée par des laboratoires civils
et militaires pratiquant l'espionnage industriel.
3/ Cryptanalyse d’Enigma:
- Propriété technique d’Enigma:
Certaines propriétés d’Enigma ont aidé à son décryptage, on peut ainsi prendre en
compte la règle qui fait qu’une lettre ne peut pas rester identique après le processus
de cryptage. Il faut également considérer que le cryptage est symétrique, il utilise la
même clé de cryptage que de décryptage. Pour finir le mécanisme qui permet de faire
bouger les rotors et donc de changer la clé de cryptage affecte moins les rotors situés
dans les dernières positions, un texte court peut donc être identique sur une machine
à trois ou quatre rotors.
- Défaillances humaines:
Des défaillances humaines liées à la fatigue et au surmenage des agents de
transmission leur ont fait commettre des erreurs. Parmi ces dernières il y a par
exemple les “cillies” qui tirent leur nom d’un allemand qui utilisait toujours C.I.L
comme clé, alors qu’ils avaient pour règles de changer régulièrement de clé de
cryptage. Dans le même type il y a également les “Herivel tips”, le fait de ne pas
changer la position initiale des rotors dont le nom provient du mathématicien qui avait
prévu cette faille. En dernière place dans cette catégorie il y a les messages de test,
rempli par exemple de T (dont la version crypté ne contient donc aucun T), ces
messages ont permis de mieux comprendre le fonctionnement des rotors.
- Stratégie de communications:
des allemands à également laisser paraître des failles qui ont permis d’aider au
décryptage d’Enigma. Le meilleur exemple est les “Cribs”, ce sont la diffusion de
messages identiques cryptés et non cryptés, qui permettent de comparer et de valider
une traduction. Également le formalisme imposé pour la rédaction de document a
permis de faire gagner un temps précieux en termes de vérification et de validation.
- Méthode de protections:
Pour ralentir le décryptage, les Allemands ont mis en place des parades, avec la
modification du nombre de rotors, ou des branchements internes de rotors. Ils ont
également mis en place des codages avant chiffrement, ainsi les messages de la
Kriegs Marine même en cas de décryptage restait complètement illisible pour les
décrypteurs.
- Décryptage avant Turing:
Des méthodes de décryptage basées sur des grilles symbolisant la position des rotors
étaient initialement utilisées. Avant turing les polonais avait déja réussi à casser
Enigma dans sa version commerciale, grâce a une bombe électro mécannique.
Cependant avec l’invasion de la Pologne et les modifications appliquées à Enigma
par l’armée allemande, ces méthodes étaient devenues obsolètes.
- Bombes électromécaniques:
Les bombes en cryptologie ne sont pas des engins explosifs et elles permettent au
contraire de "bruteforcer" un code en essayant un nombre très grands de possibilités.
Dans le cas d’Enigma elles permettent d’essayer toutes les positions possibles de
rotors. Le problème est qu’elle nécessite de connaître la structure de la machine à
décrypter. La bombe construit en 1938 par les polonais en se basant sur une version
commerciale d’Enigma n’était donc inefficace sur les versions de l’armée, mais en
utilisant des version capturé pendant la guerre Turing est parvenue a mettre au point
une bombe capable de percer Enigma. Ce haut fait a paradoxalement été possible
grâce au allemands qui en structurant leur message de manière ultra prévisible et en
laissant des phrases très récurrentes ont permis de faire facilement valider des
hypothèses de combinaisons.
- Principes des bombes électromécaniques:
Les bombes se contentent de simuler une position aléatoire des rotors et de tester si
un texte clair devient le texte codé. Cependant si on connaît le texte initial par analyse
de récurrence on peut faire valider beaucoup plus rapidement une hypothèse et de
manières beaucoup plus sûres que par compte d’indice de récurrence des lettres.
C’est ainsi que l’armée allemande a été trahie par son utilisation abusive de “heil
hitler” dans tous ses messages.
4/ Conclusion:
Les historiens estiment que Turing et son équipe ont sauvé 14 millions de vies tout en
écourtant la guerre d'au moins 2 ans grâce aux travaux de cryptanalyse d’Enigma.
Les travaux de Turing ont permis le développement de machines de Turing, les
premiers ordinateurs.
 Sources:

https://fr.wikipedia.org/wiki/Enigma_(machine)

https://www.youtube.com/watch?v=DNUjgN6tXaU

https://www.bibmath.net/crypto/index.php?action=affiche&quoi=debvingt/
enigmafonc

https://www.journaldunet.fr/web-tech/dictionnaire-du-webmastering/1445264-
enigma-histoire-et-impact-sur-l-evolution-de-l-informatique/

https://fr.wikipedia.org/wiki/Cryptanalyse_d'Enigma

Vous aimerez peut-être aussi