# SIGABA

Dans l'histoire de la cryptographie, l'ECM Mark II était une machine électro-mécanique de chiffrement à rotors utilisée par les États-Unis lors de la Seconde Guerre mondiale jusqu'aux années 1950. Cet appareil était aussi connu sous l'appellation SIGABA ou Converter M-134 par l'armée, ou CSP-889 par l'US Navy. Pour celle-ci, une version modifiée fut nommée CSP-2900.
Comme beaucoup de machines de cette époque, elle utilisait un système électro-mécanique de rotors pour chiffrer les messages. Aucune cryptanalyse efficace contre elle pendant sa période de mise en service n'a été révélée à ce jour.

## Histoire

Bien avant la Seconde Guerre mondiale, il était clair pour les cryptographes américains que le mouvement mécanique à simple passe des rotors des nouvelles machines (Machine de Hebern) introduisait des schémas reconnaissables dans les textes chiffrés qui pouvaient servir de base aux attaques cryptanalytiques. William Friedman, directeur de l'US Army Signals Intelligence Service (SIS) inventa un système pour corriger cette faille en rendant aléatoire le mouvement des rotors. Sa modification consistait en un lecteur de ruban de papier d'un télescripteur attaché à un appareil avec des « tentacules » métalliques positionnés pour conduire l'électricité à travers les trous. Pour n'importe quelle lettre pressée sur le clavier, non seulement la machine brouillait les lettres à la mode des autres appareils à rotors, mais les trous dans le ruban à cet endroit induisaient une avancée des rotors concernés, avant que le ruban lui-même n'avance. L'architecture résultant de ces modifications ne fut produite qu'en faible quantité comme la M-134, et en plus des paramètres habituels d'initialisation de la machine — qu'elle avait en commun avec Enigma parmi d'autres — on ajouta le positionnement du ruban et les réglages, via un panneau de contrôle, de l'association entre chaque ligne de trous et le rotor qui lui est lié.
En comparaison de l'Enigma, la M-134 avait pour désavantage de nécessiter que le ruban soit identique pour toutes les machines prévues au déchiffrement de ses messages. Si le ruban venait à être intercepté, le nombre de réglages important mais pas infini aurait remis en cause la fiabilité de son utilisation. De plus, les conditions d'utilisation sur les champs de bataille rendaient problématique la fragilité de certains rubans.
L'associé de Friedman, Frank Rowlett, apporta alors sa contribution à la méthode d'avancée des rotors en changeant ceux-ci. Cela peut paraître évident mais il s'agissait de créer des rotors permettant de générer de un à cinq signaux de sortie pour un seul en entrée — cela permettait ainsi de faire avancer un ou plusieurs rotors — là où Enigma faisait du un pour un.
Aux États-Unis d'Amérique d'avant 1941, le décryptage a un tout petit budget. Donc Friedman et Rowlett construisirent une suite d'extensions appelées SIGGOO (ou M-229), utilisées par les M-134 à la place du lecteur de ruban. Il s'agissait de boîtes externes contenant un paramétrage via trois rotors qui permettaient cinq entrées actives, comme si l'on pressait cinq touches en même temps sur Enigma, et les sorties étaient également rassemblées en groupes de cinq – c’est-à-dire que les lettres de A à E seraient câblées ensemble par exemple. De cette manière les cinq signaux d'entrée sont rendus aléatoires par l'intermédiaire des rotors, et ressortent de l'autre côté comme un seul signal sur l'une des cinq lignes. Le mouvement des rotors pouvait être contrôlé par un code renouvelé chaque jour, et les bandes de papiers étaient détruites. Cette machine, assemblage de plusieurs boîtes, était appelée M-134-C.
En 1935, ils montrèrent leur travail à un cryptographe de l'OP-20-G, Wenger, qui y vit peu d'intérêt jusqu'en 1937, quand il en fit la démonstration au capitaine de frégate Safford, homologue de Friedman à l'ONI, Office of Naval Intelligence (renseignements de la marine). Constatant immédiatement le potentiel de l'appareil, Safford et le capitaine de frégate Seiler ajoutèrent de nombreux accessoires qui en facilitent à la construction. Le résultat fut l'Electric Code Machine Mark II (ou ECM MArk II), qui fut produite en tant que CSP-889 (ou 888).
Étrangement, l'armée de terre ignorait ces changements, tout autant que la production en masse du système. Elle fut mise dans le secret en 1940. En 1941 l'armée de terre et la marine combinent un système cryptographique commun basé sur cette machine. L'armée de terre commence alors à utiliser SIGABA.

## Description

SIGABA était identique à l'Enigma pour la théorie de base, en ceci que des séries de rotors étaient utilisées pour chiffrer chaque caractère du texte clair en un caractère différent dans le texte chiffré. Cependant, contrairement aux trois rotors de l'Enigma, SIGABA n'en comprenait pas moins de quinze.
Se contenter d'augmenter le nombre de rotors ne fait pas une machine plus sûre. Car dans le système Enigma, les rotors tournent seulement si celui qui se trouve à leur droite tourne d'abord, ce qui arrive après la frappe de 26 caractères. En d'autres termes le message doit contenir au moins 676 (26²) caractères avant que le troisième rotor ne tourne, et environ 17000 pour que le quatrième entre en jeu. Pour la plupart des messages de quelques centaines de caractères, plus de rotors n'ajoute pas de sécurité.
En plus des rotors supplémentaires, SIGABA augmentait la complexité de mouvement des rotors principaux. Dans l'Enigma les rotors tournaient d'un cran à chaque caractère frappé, ce qui conduisait à un certain nombre de motifs se répétant dans le texte chiffré. Ces motifs étant difficiles à trouver, les Britanniques et les Américains déployèrent d'importants moyens, et, à la fin de la guerre, ils étaient capables de lire presque toutes les transmissions chiffrées du commandement allemand.
Dans le cas de SIGABA, une simple modification fut mise en place pour rendre la machine plus sûre. Au lieu de tourner grâce à une action mécanique entraînée par le clavier, les rotors tournaient par l'action électrique d'un ensemble séparé de rotors. SIGABA avait trois banques de cinq rotors chacune, l'action de deux des banques contrôlait les rotations de la troisième.
* Les rotors de la banque principale étaient appelés rotors de chiffrement, et chacun présentait 26 contacts. Leur rôle était le même que dans les autres machines à rotors, comme Enigma : quand une lettre du texte clair était entrée, un signal entrait d'un côté de la banque et sortait de l'autre, donnant la lettre chiffrée.
* Les rotors de la deuxième banque étaient appelés rotors de contrôle. Il s'agissait également de rotors à 26 contacts. Les rotors de contrôle recevaient quatre signaux à chaque pas. À l'issue des rotors de contrôle, les sorties étaient divisées en dix groupes de tailles variables, de 1 à 6 fils. Chaque groupe correspondait à un fil d'entrée pour la prochaine banque de rotors.
* Les rotors de la troisième banque étaient appelés rotors d'index. Ces rotors plus petits ne présentaient que 10 contacts, et ne tournaient pas pendant le chiffrement. Après la traversée des rotors d'index, une à quatre des cinq lignes de sorties conduisaient un courant. Ces signaux électriques entraînaient ensuite le mouvement des rotors de chiffrement.
En résumé, SIGABA utilisait un ou plus de ses rotors principaux d'une manière complexe, pseudo-aléatoire. La répétition de motifs particuliers, utilisée pour casser le code Enigma, n'existait plus. En fait, même en possession du texte clair, il existe tant de possibilités d'entrées pour le chiffrement qu'il est difficile d'en calculer le nombre.
Mais SIGABA avait aussi des inconvénients : taille et poids importants, prix élevé, difficulté d'utilisation, complexité mécanique et fragilité. Rien à voir avec un appareil pratique comme Enigma, plus petit et léger que les radios avec lesquelles on l'utilisait. SIGABA fut très utilisée dans les salles radio des navires de l'US Navy, mais ne pouvait être mise en œuvre sur un champ de bataille. Dans la plupart des théâtres d'opérations, d'autres systèmes étaient utilisés, surtout pour les transmissions tactiques. Le plus célèbre expédient est peut-être l'emploi d'Indiens Navajo (wind talker) dans les transmissions tactiques en phonie, système mis en place pour la première fois à Guadalcanal. Dans d'autres contextes tactiques, des machines moins hermétiques, mais plus petites, légères et robustes étaient utilisées.