|
|
|
|
Enigma et ses variantes est une machine électromécanique allemande de cryptage de messages dont l'usage fut répandu au cours de la 2ème G.M. Elle est le symbole de la victoire des briseurs de codes Alliés, dont on peut estimer que leurs efforts ont écourté la guerre d'au moins un an. De nombreux sites évoquent l'histoire et le fonctionnement de cette machine et nous invitons le visiteur à lire également ce FICHIER PDF de 92 pages réalisé par des étudiants et fort bien documenté. A moins de disposer d'un portefeuille bien garni (plus de 100 000 €) et beaucoup de chance, l'acquisition d'une machine d'époque est une véritable utopie. Pour faire revivre cette machine, il n'y a guère que cinq solutions : - En construire une ! (pas tout à fait une énigma mais voir quand même sur http://www.tatjavanvark.nl/index.html#works) c'est absolument prodigieux. - La réaliser en papier (eh oui ! Ça marche) avec les indications données
sur le site : http://dave-reed.com/DIYenigma/index.html - Utiliser un programme de simulation sur PC : http://cryptocellar.org/simula/ ou
http://users.telenet.be/d.rijmenants/en/enigmasim.htm et même une feuille de calcul EXCEL : Ou bien... - Construire une réplique électronique : C'est cette dernière solution que nous avons choisie, largement facilitée par la disponibilité d'un kit comprenant toutes les pièces nécessaires. Ce kit est en vente sur Internet pour environ 130,00 € hors frais de port : http://www.cryptomuseum.com/kits Dans la boite on trouve : - un circuit époxy double face à trous métallisés, sérigraphié et de qualité professionnelle. - tous les composants nécessaires ainsi que le microcontrôleur programmé. - Deux feuilles A3 recto verso donnant les implantations et le schéma complet. - Une notice (en anglais) reliée de 68 pages en A4 qui est un modèle du
genre. Elle reprend, étape par étape, le montage du circuit dans le style
Heathkit, pour ceux qui connaissent. La mise en route est ensuite décrite pas à
pas. Il y a également la description d'une boite en bois destinée à l'habiller. Bref, un travail remarquable à la portée d'un néophyte sachant quand même manier le fer à souder et la pince coupante. Le montage fonctionne dès la dernière soudure effectuée. Il ne reste plus qu'à le mettre en boite et à y ajouter éventuellement quelques accessoires. C'est ce qui va faire l'objet des descriptions suivantes. Nous avons mis en téléchargement ICI un dossier contenant l'ensemble des plans et schémas.
ALIMENTATION La platine est prévue pour être alimentée par un adaptateur 8 à 12 V
alternatif (non fourni) ou par des batteries de 8 à 16 V.
ÉCOUTE DU MORSE La machine mécanique Enigma ne produit pas directement un
code morse. Autour de la machine, il y a deux opérateurs. Le premier se
contente de taper les lettres du message à coder, une par une en attendant à
chaque fois que le deuxième opérateur ait bien noté la lettre provenant du
codage. C'est ce deuxième message qui est alors transmis par un opérateur
radiotélégraphiste.
LE MONTAGE MECANIQUE Dans notre projet, nous avons (malheureusement !) caché une grande partie de l'électronique. Par rapport au montage original, les afficheurs sont soulevés de 6 ou 7 mm par une barrette intermédiaire pour les mettre à la même hauteur que le cache des lettres ce qui va permettre de recouvrir l'ensemble par une plaque horizontale (à 17 mm du circuit). De même, sur la platine Steckerbret les composants dépassant la hauteur des circuits intégrés (réseaux de résistances et condensateurs de découplage), ont été soudés à l'envers du circuit. Une platine fixée au-dessous du circuit imprimé par des entretoises supporte les circuits imprimés de l'alimentation et du générateur de signaux morse. Le châssis est perforé au niveau des LEDs jaunesdu Lampenfeld de manière à éclairer les lettres sur toute leur surface. Comme dans l'original, les lettres sont blanches sur fond noir (impression jet d'encre sur un transparent ou utilisation du mylar fourni maintenant avec le kit). Une feuille de plastique dépolie, également fournie, est placée contre le mylar pour uniformiser la luminosité traversant les lettres. Cette plaque en aluminium est peinte en noir satiné (époxy cuit au four) mais pourrait également être anodisée et colorée en noir. Au niveau des afficheurs une découpe avec filtre rouge permet d'améliorer le contraste. Les touches posent un petit problème mécanique. Pour rester dans la simplicité et utiliser au maximum des produits standards, nous avons prévu d'utiliser des douilles banane châssis de 4 mm et du tube laiton de diamètre extérieur 4 mm et intérieur 3 mm vendu en longueur de 1 m en magasin bricolage (LEROY, CASTORAMA, BRICONAUTES, etc.). La douille est éventuellement élargie à 4,1 mm si le tube ne coulisse pas bien et la base est fendue à l'aide d'une fraise scie à denture fine de 1,6 mm. Ceci permet, avec un petit bout de corde à piano laiton de 1,5 mm fixé dans le bas du tube, d'assurer l'anti-rotation de la touche. Vu le nombre de pièces à réaliser (35 au total)
et pour obtenir
un centrage rigoureux du perçage du tube laiton, il est nécessaire
de fabriquer un gabarit dans un bloc d'acier. Les pastilles sont obtenues avec un découpoir "home made" adapté à la dimension intérieure des touches :
Des écrous laiton de 6 au pas de 0,75 ont été taillés dans une barre hexagonale de 10 sur champs. Ils sont destinés à remplacer un des écrous de chaque douille, l'autre servant de contre-écrou. Le montage avance... ...et est câblé, testé, reste à faire une boite en bois.
MONTAGE FINAL Le coffret en bois a été réalisé en pin et vernis. Dans le fond de celui-ci, nous avons placé un interrupteur miniature relié au strap N°2 de la platine. Cela permet de choisir le fonctionnement avec génération du morse ou sortie RS232 sur laquelle nous reviendrons.
LIAISON RS232 La liaison série permet de faire afficher sur
un terminal informatique les caractères codés ou bien de relier
deux machines. Il existe cependant d'autres programmes comme Realterm, TeraTerm, Termite, plus ou moins sophistiqués.
ENIGMA - ARDUINO
Encore plus simple mais parfaitement fonctionnelle, une Enigma avec un seul circuit intégré, un afficheur LCD de 2 lignes et un clavier d'ordinateur. C'est un montage trouvé sur le Net que nous avons testé et adopté. Prix de revient, moins de 10 euros ! Par rapport à la description originale, nous avons utilisé un Arduino Nano que nous avons fixé au dos de l'afficheur. Un connecteur Mini DIN 6 broches permet de brancher un clavier PS2 d'ordinateur. En cas d'utilisation d'un clavier USB, il suffira d'employer un adaptateur que l'on trouve facilement sur eBay. Pour rendre l'appareil totalement autonome, il est alimenté par une pile de 9 Volts placée dans un support à tiroir. L'utilisation n'étant pas quotidienne et la consommation faible (50 mA), la pile peut durer longtemps et servir dans d'autres appareils. Le programme a été légèrement modifié pour l'adapter au brochage du LCD et à l'utilisation d'un clavier AZERTY. Sur le site de l'auteur on trouvera le sketch original et le mode d'emploi : http://apcmag.com/arduino-projects-enigma-cipher-machine.htm
Mode opératoire pour crypter et décrypter Schéma très simplifié, les circuits aller-retour sont doubles et les connexions sur les rotors ne représentent pas la réalité. Tout
d'abord il faudra se procurer
le livre de code indispensable pour initialiser la machine. Chaque
page correspond à un mois et a donc 29, 30 ou 31 lignes. Plus prosaïquement
nous allons utiliser un programme qui permet de le générer mois
par mois. Ce programme se trouve à l'adresse suivante : Tag est le jour du mois. L'opérateur commence par choisir l'un des quatre groupes
d'identification à trois lettres en y ajoutant deux lettres
prises au hasard, au début du groupe. Par exemple si
on choisit le troisième groupe YSU on pourrait avoir ENYSU, BZYSU,
XWYSU etc.. Après avoir indexé chaque roue selon le "Ringstellung"
et les avoir placées dans le bon ordre dans la machine, l'opérateur
enfiche les câbles dans les douilles qui correspondent au "Steckerverbindungen". L'opérateur, après avoir placé de nouveau les rotors dans la
position HSE, tape le message découpé
en groupes de cinq lettres et différentes conventions sont utilisées
pour transmettre les chiffres, ponctuations et abréviations. Par exemple
le point ou
l'espace entre mots est remplacé par un X et les chiffres sont en
toute lettre. Voici notre message test avec en dessous les lettres traduites par la machine et visualisées par l'allumage des lampes : CEXTE XTEXA XETEX CODEX AVECX
UNEXE NIGMA XMXTR
OISXN AVALX Nous avons maintenant le "Funkspruch" que le destinataire va devoir déchiffrer VOUS DE MOI = 55 = GZF OFO = L'opérateur de déchiffrement va d'abord s'assurer
de la date du message en repérant dans le "Kenngrupen"
de sa feuille de code, trois lettres du premier groupe. Ici
c'est YSU que l'on retrouve pour la date du 29 février. |
|