Le logiciel Bombe


Ce logiciel, en langage C, émule en mode texte, une Bombe de Turing trois rotors.

Voici ces principales caractéristiques :

Par défaut, un stop n’affiche qu’un seul connecteur (stecker). Une option (machine gun) permet de voir l’ensemble des connecteurs.

L’ordre des rotors (grundstellung) doit être complètement spécifié.

Le câblage des rotos est stocké dans des fichiers du répertoire ROT. Il est facile d’en rajouter.

Vous pouvez utiliser les conventions de Bletchley Park et ainsi comparer vos résultats avec de véritables données datant de la guerre, notamment ceux fournis dans le document « US 6812 Bombe Report » (cf. les liens).

Ce simulateur passe l’ensemble des tests décrits dans le rapport précédent.

Une utilisation simple :

1) On crée un fichier décrivant un « Crib »
2) On déclenche la recherche.

Exemple:

C:\>type ellsbury.cri4
ZZABE
ZZBED
ZZCAB
ZZDCG
ZZEHE
ZZFHA
ZZGEH
ZZHAD
ZZIDB
=E=A=
+++++

C:\>bombe ellsbury.cri4 II I III
STOP ellsbury.cri4 II I III BGX E:X
++++++++++++++++++++++++++++++++++++++++++++

Le format d’un fichier Crib

Chaque ligne commence par la positions des trois rotors suivit d’un couple de lettres : la lettre en clair et la lettre chiffrée correspondante. Ensuite on a une ligne, par exemple « =E=A= » qui spécifie que le courant électrique est envoyé au terminal « A » de la lettre « E ». La fin du fichier est spécifiée par la ligne « +++++ ».
	5        Enigma 012345678
   A-----H       Grund. ABCDEFGHI
  /|     ||      plain  BEACHHEAD
7/ |2   4||6     cipher EDBGEAHDB
D--B-----E
|8    0  |       Input letter: E, terminal: A
|   1    |       4 loops
----------
Les arguments du logiciel bombe.exe : en premier, on a le nom du fichier Crib et ensuite les trois rotors utilisés. Le logiciel affiche, s’il trouve des solutions, le mot « STOP » suivi de l’ordre des rotors (Walzenage), le calage de chaque rotor (Grundstellung) et le connecteur qui correspond à la lettre choisit dans le menu.

Recherche complète

Le logiciel Bombe n’effectue ses recherches que pour une combinaison particulière de rotors, par exemple « IV-I-III ». Un autre logiciel, les_bombes.pl, écrit en Perl, permet de faire une recherche sur l’ensemble des combinaisons possibles. Il ne fait qu’appeler le logiciel Bombe en lui fournissant successivement ces combinaisons. Sans argument, le logiciel n’utilise que les trois premiers rotors (I, II, III). avec l’argument « soixante », il utilise les cinq rotors de l’armée de terre (ou de l’air). Enfin, avec l’argument « naval », il utilise les huit rotors de la marine.
Exemple:
+++++++++++++++++++++++++++
E:\BP>perl les_bombes.pl ellsbury.cri4 soixante
===> ( 1) I II III
===> ( 2) I III II
===> ( 3) II I III
STOP ellsbury.cri4 II I III BGX E:X
===> ( 4) II III I
===> ( 5) III I II
===> ( 6) III II I
STOP ellsbury.cri4 III II I EFO E:N
===> ( 7) I II IV
…

Voici les fichiers :

Utilisation avancée : le logiciel Bombe dispose de plusieurs options. Pour les faire apparaître, il suffit d’activer le logiciel sans arguments.

Liens :