La C-36 française: La période Vichy () ()


Page d'accueil
La page d'accueil de la C-36
  • 1. Introduction
  • 2. Fonctionnement
  • 3. La période de l'avant-guerre
  • 4. Le début de la guerre
  • 5. Vichy
  • 6. La France et les Alliès
  • 7. La période de l'après-guerre
  • 8. Conclusion
  • Annexes

5.1 Contexte historique

A la suite de l'armistice, la France est coupée en deux. Le nord est occupée par les allemands et le sud et l’Afrique du nord (Maroc, Algérie et Tunisie) est sous le contrôle d'un gouvernement qui siège à Vichy. Ce gouvernement dirigé par le maréchal Pétain suit une politique de collaboration avec l'ennemi.

5.2 Le chiffrement français – Le contrôle de l'occupant

Suite à l'armistice, Vichy est autorisé à chiffrer ses messages et à les transmettre par radio mais à condition d'utiliser des méthodes connues des allemands. Voici ces méthodes :

  • Dictionnaire 1919 Type 2, à 5 chiffres, utilisant un procédé de sur-chiffrement.
  • Code Colonie 1923B – utilisant le procédé de sur-chiffrement CMAN.
  • Carnet SMC (Sahara-Maroc-Confins) à 4 chiffres utilisant le procédé de sur-chiffrement SAMA spécifique à l'Afrique du Nord. Il peut-être utilisé à tout les échelons.
  • Système 1923 1A (transposition simple à colonne).

Mais Vichy utilisait aussi d'autres méthodes de chiffrement, non communiquées aux allemands mais uniquement sur réseau filaire.

En métropole, ces moyens de chiffrement sont en partie ceux d'avant l'armistice: La B-211, le Dictionnaire 1919 Type 1 à 5 chiffres, le Code DT, le Code G1, le Code 70 à 4 chiffres (qui remplace le Code 69), la C-36. La B-211 est le moyen normal de communication au niveau des états-major. Le Code DT sert de moyen de secours. Le code chiffré 70 et la C-36 sont utilisés que pour l'instruction.

En Afrique du nord (19ième région militaire), la B-211 est principalement utilisée pour le dialogue entre EM et avec la métropole. Le code ATM, spécifique de l’Afrique du nord est le principale outil de chiffrement. C’est un code à 4 chiffres et il utilise des tables de sur-chiffrement. Le procédé manuel SD23 à diagonale est utilisé entre commandants de bataillon et de régiments. Enfin la C-36 est utilisée au niveau division et régiment.

Un réseau opérationnel de C-36 couvrant toute l’Afrique du nord est constitué à partir d'avril 1941 (SHF-1P136 1942). Ce réseau est réservé aux communications télégraphiques entre commandants militaires, généraux commandant de groupes de subdivisions, généraux de division et entre ceux-ci et le général commandant supérieur.

     Secrétariat à la guerre à Mr le général Commandant en chef délégué 
     général du gouvernement en Afrique Française. Vichy, le 8 mars 1941.
     (le document porte le tampon "SECRET" en rouge).
	 
     En réponse à votre lettre N°1108/EM du 28 février 1941, relative à 
     l’utilisation de machines à chiffrer C-36 en Afrique du Nord et 
     A.O.F. [1]. J’ai l’honneur de vous signaler l’existence en Afrique 
     du Nord d’un réseau de chiffrement en machines C-36. Ce réseau, 
     constitué pendant la guerre par l’EM du TOAFN [2] fonctionne 
     actuellement sous la direction de la 19e région. Je vous autorise à 
     l’étendre et à le modifier sous réserve que vous en assuriez la 
     direction (établissement et renouvellement des clés). Les Tableaux 
     de dotation en documents du chiffre pour l'Afrique du Nord 
     actuellement en préparation, devant comprendre les nouveaux 
     détenteurs de ces machines, vous voudrez bien me faire parvenir sous 
     le présent timbre [3]le schéma de ce réseau de chiffrement et les 
     numéros des machines que vous vous proposez de distribuer. Vous 
     voudrez bien m'adresser également les Tableaux de clefs que vous 
     mettrez en service.
Vers la fin de l'année 1940, la B-211 est transformée par l’adjonction de 4 rotors. Son niveau de sécurité est grandement amélioré: après sa mise en service les allemands ne purent déchiffrer aucun message chiffré par cette machine durant le reste de la guerre (cf.
6.4).

Notes de pied de page:

  • [1] AOF: “Afrique Occidentale Française”: qui correspond à l'afrique de l'ouest française, qui inclus la Mauritanie, le Soudan, la côte d'Ivoire, le Togo, le Dahomey et le Niger.
  • [2] TOAFN: “Théâtre d’Opération en Afrique du Nord”: Théatre d'opérations en afrique du nord, i.e., les forces armées présentes en Algérie, Tunisie et Maroque.
  • [3] L'expression “… sous le présent timbre …” n'est pas très claire. Je l'interpète comme signifiant "le même niveau de classification", i.e., SECRET.

5.3 L’utilisation de la machine

5.3.1 Dotation, numéro de machines

Plusieurs documents font état du nombre de moyens de chiffrement par unité. Un récapitulatif fait état de la présence de 250 C-36 en Afrique du Nord. La métropole qui est divisée en 8 régions militaires ("DM: Division Militaire") possède en tout, avec les écoles 155 machines. Donc, durant la période Vichy, il y a en tout 400 C-36 opérationnelles.

Un bulletin de l'ARCSI (Ribadeau-Dumas 1976) précise que lors de la retraite en Juin 40, le service du chiffre cacha des machines à chiffrer dans plusieurs caches. Si on suppose qu’au moins une machine sur deux a été cachée, il y avait au moins 900 à machines. Si on suppose que plusieurs dizaines ayant été perdu, détruites ou capturées durant la débâcle de juin 1940, on obtient un nombre totale de 1000 C-36 livrées à l'armée française en 1940. Ce chiffre correspond à la commande décidée en 1937.

En fait, le nombre de machines livrées est plus vraisemblablement de 2000 machines. En effet, plusieurs documents de dotations spécifient le n° des machines. Ainsi, dans un inventaire daté du 18 mars 1941, le numéro des 49 machines présentes alors au Maroc est indiqué ainsi que les unités qui les détiennent (SHD-1P136 1942). Voici quelques uns des numéros: 5.003, 5.128, 6.482, 6.709 [1]. Dans tous les cas, les numéros présents étaient du type : 5.xxx ou 6.xxx. On peut en déduire avec une marge d’erreur très faible qu’il y a eu au maximum 2000 machines livrées à la France.

Ce nombre est également confirmé par un article de l'ARCSI concernant l'histoire de la cryptographie militaire française (Ribadeau-Dumas 1975) qui indique qu'il y avait 115 B-211 et 2000 C-36 en 1939 [2].

Notes de bas de page:

  • [1] Parmi toutes les archives que j'ai explorées, j'ai pu enregistrer plus de 100 numéros de machines, y compris les machines sur le continent. Tous les chiffres étaient dans la fourchette de 5 000 à 6 999. Si les propriétaires de C-36 (collectionneurs, conservateurs) m'envoyaient leur numéros de machine, je pourrais publier un catalogue anonyme des machines qui subsistent.
  • [2] Cependant, je pense que la date de 1939 est erronée. Il est plus probable qu'en 1939 Les C-36 étaient encore en fabrication et ce n'est qu'en 1940 que le total de 2 000 machines (ou presque) a été atteint.

5.3.2 Distribution des clés

Durant la période Vichy (mars 1941), les C.36 n'étaient utilisées que sur réseaux filaires et le changement de clé était évidement moins fréquent. Les clés étant valables plusieurs mois. Ainsi le tableau A n°10 datant du 27 décembre 1940 était toujours en fonction le 26 mars 1941. Il était de plus valable pour l'ensemble des unités de l'Afrique du nord. Les tableaux A, B et C du 21 août 1942 n'ont été détruites que le 22 janvier 1943 après la chute du gouvernement de Vichy en Afrique.

Un document du 9 juin 1941 de l’état-major de l’AOF (l’Afrique de l’ouest française) à Dakar, nous indique la réception des tableaux A et B (n°3110/EM-CH) pour la C-36 qui doivent être mis en service le 15 juin à partir de 16h. Nous apprenons aussi qu’à cette époque la C-36 est considérée comme plus sur que le système SD 23 à diagonale. Enfin, il est spécifié que son utilisation doit être exceptionnelle et uniquement sur télégraphie filaire (SHD-1P136 1942).

5.3.3 Autres procédures

En 1941 lorsque qu'une unité recevait des machines, l'accusé de réception était chiffré avec la machine en utilisant la clé d'exercice contenu dans le manuel. J'en déduisit qu'il y avait dans ce manuel un exemple de clé et un exemple de message. J'appris également que seul un officier avait le droit de positionner la clé interne (composée des ergots et de la lettre de calage) (SHD-1P136 1942).

     2ième bureau des troupes du groupe AOF - Note de  service – Objet: 
     les machines à chiffrer C.36 – 23 avril 1941. La mise en place des 
     éléments secrets internes sera effectué obligatoirement par un officier 
     qui gardera en lieu sur les 2 clés de l'ouverture du carter de la machine1. 
     L'opérateur, sauf si il est officier, ne doit connaître que la clé de 
     départ [1]; Les détenteurs accuseront réception en utilisant la clé du 
     manuel. Les 5 lettres utilisées comme clé de départ de ce télégramme 
     constitueront le 3ième groupe du message".
Dans les documents que reçoit un chiffreur, il y a notamment le « Memento du Chiffreur » qui résume les principales mesures de sécurité à suivre. Une section traite des machines à chiffrer (SHD-1P136 1942):
     Commandement en chef des forces terrestres et ariennes en Afrique - 
     Confidentiel - Section du Chiffre de l'Armée -  Guide-Memento du Chiffreur
     - Alger, le 15 janvier 1943.
     ... 4° Conservation des documents. ... N'ouvrir les machines à chiffrer 
     que pour les opérations de chiffrement. Les refermer ensuite à clé 
     pendant les périodes de non-utilisation. Ne pas laisser les machines 
     "à la clé" pendant leur transport. Si une machine est accidentée, ne 
     jamais confier la réparation d'une pièce à une personne non qualifiée 
     (ouvrier civil, par exemple). Demander l'échange de la machine contre 
     une machine en bon état.

Note de pied de page: [1] La clé de message est choisi par l'opérateur.

5.3.4 Un exemple de message :
Un cryptogramme authentique – confirmation des procédures utilisées

Dans les archives des forces militaires en Afrique (SHD-1P136 1942), je trouvais un document extraordinaire: un cryptogramme authentique chiffré en C-36 daté du 9 juin 1941. Normalement aucun cryptogramme n'est conservé. En effet dés qu'un cryptogramme est déchiffré, il est détruit. Ainsi si l'ennemi capture les documents du chiffre il ne peut disposer en même temps du clair et du chiffré correspondant.

Pourquoi donc, il apparaissait ici dans les archives de l'armée ? En fait ce message avait été émis sur les ondes radio et il avait été intercepté par les allemands. Ceux-ci ne purent le déchiffrer car il utilisait un procédé qui n'avait pas été déposé par la commission d'armistice. Les allemands exigeaient de l'état français de Vichy non seulement le clair du message mais aussi le procédé et les clés utilisées. Le secrétariat à la guerre adressait la requête allemande au gouverneur de l’Afrique française car le message provenait de cette région. Vichy demandait en outre qu'une enquête sur ce manquement aux règles de sécurité soit diligenté et que des sanctions soient prises envers les responsables.

Dans la lettre provenant du gouvernement de Vichy et accompagnant le cryptogramme deux informations concernant les procédures m'apparurent.

  1. Le secrétariat à la guerre déclarait déduire des deux derniers groupes du cryptogramme qu'il était chiffré grâce à le C-36. Pour corroborer cette affirmation, on pouvait lire sur la page contenant l'interception allemande, le texte "NDKLE" écrit au crayon. Cette chaîne était vraisemblablement la clé du message. Je connaissais la méthode utilisée pour chiffrer la clé de message en mai 1940. La méthode en 1941 devait être légèrement différente de celle utilisée précédemment car elle permettait de déduire la machine utilisée (B-211 ou C-36). Je pense donc que comme précédemment la clé était chiffrée grâce à deux alphabets de substitution mais qui étaient différent pour la B-211 et pour la C-36. Ainsi, si le déchiffrement de l'indicateur donnait la même clé on connaissait non seulement cette clé mais on savait aussi quelle machine était utilisée [1].
  2. Le secrétariat à la Guerre demandait également que les clés de la machine C-36 soient changées: les tableaux A et B et l'emplacement des groupes-clés. Ainsi j'apprenais que cet emplacement était variable. Au minimum les groupes étaient soit en début du message (comme au début de la guerre) soit à la fin (comme dans le message) ou peut-être encore enfouis à l'intérieur du cryptogramme.

Le message chiffré verbatim tél qu'il appartait dans les archives (en bas, écrit au crayon, on peut lire le groupe NDKLE):

      		de FVA à FVB 9/6/41 21 h 19
       Off Alger nr 152 W57 h 9 à 18 h 10 – Général Cdt 19 ème
       		région à Division Oran. - 
       0945-
       XOTKA YLRWH TMTIR ADRDB VHCCL WUCCA JGDBG ZFYNC
       ZRBKD WDSHA ELDZG DZVGM FOFMR LIHCF XFJSP YXMBD
       TWWXH OSQVO QJQOV LVCHO NUVGP RILRG UUVVG KDDUE
       TDXYO HNOEZ ZWWAI KSIAC ZLNLV RYSKF WBJUE TSODI
       MTYCS UADMS RKFCW WSKTX RFCJW IQFKD WIYZX TSDOE
       KTTNF MAPEN JKYRB POTVT GZEBC - ar.
Utilisant des méthodes modernes, j'ai réussi à trouver la clé du message et à le déchiffrer (cf.
5.4). Voici le déchiffrement brut tel qu'il apparaitrait sur la bande de papier qui sort de la machine:
       NO WBPE R SUR WB MONSIEUR GJENIER HABILITE PAR CDT SUPERIEUR 
       AIR ALGER INTERROGERA DESERTEUR QUCQELAM QURT ACTUELLEMENT A 
       ORAN STOP TOTTLS FACILILITES SERONT DONNEES A MONRIEUR 
       GRENIER QUI ARRIVERA WAP JUIN ORAN FIN
Remarques :
  • Comme la lettre K servait à transcrire les espaces, elle était remplacée dans le clair par le bigramme QU ou CQ. J'ai fait des recherches sur des moteurs de recherche au sujet du patronyme KELAM KURT, il me semble plausible (plusieurs personnes portent ce nom d'origine nord africaine).
  • Le groupe numérique (0945) qui précède le cryptogramme spécifie la date (9 juin) et le nombre de groupes (45).
  • Les deux derniers groupes (POTVT GZEBC) correspondent à l'indicateur. Ils suivent immédiatement le mot "FIN".
J’ai reconstitué (après le déchiffrement) la position du disque numérique:
     Q R S T U V W X Y Z A B C D E F G H I J K L M N O P  Disque de lecture
     9 8 7 6 5 4 3 2 1 0 1 2 3 4 5 6 1 2 3 4 5 6 7 8 9 0  Disque numérique
     Z Y X W V U T S R Q P O N M L K J I H G F E D C B A  Disque d'impression
Le message en supprimant le démarquage et les erreurs :
     N° 205-8/2 Mr Grenier habilité par commandant supérieur Air Alger 
     interrogera déserteur Kelam Kurt actuellement à Oran STOP Toutes 
     facilités seront données à Mr Grenier qui arrivera le 10 juin à 
     Oran FIN
Voici la clé (brute) que j'ai reconstituée :
     Clé de message (relative): AAAAA
     Roue 25 AB__E___I_KLM____R___V___
     Roue 23 A__DE____J__M__P_RS____
     Roue 21 ABC__FG_I_KLM_OP__S_U
     Roue 19 A_CDE__HI__LM_OP_R_
     Roue 17 AB_D_FG_IJ_L__O_Q
     Slide: 15 (“calage” : “G” [cf. 6.3.5.4])

Note de bas de page:
[1] J'en ai eu confirmation à partir d'autres documents (cf. 6.3.6).

5.4 Cryptanalyse moderne via la méthode Hill Climbing

Pour trouver la solution du cryptogramme décrit dans le paragraphe précédent, j'ai écrit un programme en Python. J'ai utilisé l'algorithme publié par George Lasry qui lui a permis de trouver la configuration d'une machine M-209 dans le cas où le clair est connu (Lasry, Kopal, Waker 2016). J'ai supprimé le calcul des tétons (ils sont connus ou presque). De plus, comme fonction d'évaluation (fitness fonction) j'ai utilisé un score basé sur la fréquence de bigrammes au lieu de la fonction ADE qui se base sur la comparaison entre le crypto et le clair. J'ai calculé les fréquences de bigrammes à partir de l'ouvrage "La bataille de France" de Louis Madelin (Madelin 1920). J'aurai pu aussi me baser sur la centaine de déchiffrement brut (raw) de message C-36 que j'ai récolté au SHD (SHD-11P187 1944). Malheureusement ils dataient de 1943 et le cryptogramme que j'analysais datait de 1941. Il est sur que dans les cas extrêmes, de bonnes statistiques sont vitales.

Algorithme

     0. Positionner le score maximal à zéro. 

     1. Générer une clé clé aléatoire (constitué du positionnement des ergos),
        déchiffrer le cryptogramme avec cette clé et calculer un score initial
        avec la fonction d'évaluation choisie. Initialiser le score maximal
        avec ce score initial.
	 
     2. Répéter les étapes suivantes. Sortir de cette boucle infinie si
        la fonction d'évaluation n'améliore pas le score maximal.

        2.1. Boucler un certain nombre de fois (par exemple, 200 fois).
             2.1.1. Basculer au hasard un ergot.
             2.1.2. Déchiffrer le cryptogramme et calculer un score grâce
                    à la fonction d'évaluation. 
             2.1.3. Si ce score est meilleur que le score le plus haut,
                    fixer le score le plus haut à ce score. De plus conserver
                    la modification de l'ergot. Sinon, on revient en arrière
                    en remettant l'état de l'ergot à son état antérieur.
			   
        2.2. Si le score le plus haut est supérieur au score maximal, mettre
             à jour le score maximal en prenant de score. Afficher le score,
             la clé et le début du déchiffrement (le clair obtenu).
		
     3. Réprendre à l'étape 1, i.e. redémarrer avec une nouvelle configuration
        d'ergots. Arrêter si le nombre prédéfini de boucles est atteint
        (approche Shotgun).
En fait, j'ai répété l'algorithme pour chaque Slide (il y en a 26 possibles) Je limitait à 100 le nombre d'essais pour chaque Slide testé (Shotgun Hill Climbing). A chaque essai il y avait environ 15 000 déchiffrements. Ce qui fait (dans le pire des cas) moins de 40 millions de déchiffrement (15 000x100x26). J'ai commencé mes essais avec la configuration de Lugs A de la
Table 2, la seule possédant des overlaps. J'ai trouvé la solution (au bout du 8ième essai shotgun pour le Slide P) avec celle-ci mais j'avais prévu d'essayer les 6 autres configurations vraisemblables (cf. 2.6, 7.3).

Mon programme prenait environ 15 minutes pour chaque valeur de Slide. J'utilisais une machine Intel Pentium G860, 2 cores (mais je n'utilisais qu'un core), à 3 GHz) et un langage interprété (Python) car il permet un développement rapide (de type Agile).

J'avais prévu en cas d'échec d'utiliser des méthodes plus complexes inspirées de la thèse de George Lasry sur les recherches métaheuristiques en cryptologie classique (Lasry 2017). Même si j'avais trouvé la solution sans utiliser ces méthodes, je les testais par curiosité. J'ai manipulé les algorithmes que cet auteur a utilisés contre la M-209 (inverser chaque ergot ou échanger chaque paire d'ergot…). J'ai aussi utilisé d'autres fonctions d'évaluation (ftness functions) : IC, unigrammes, trigrammes et quadrigrammes sans résultat. Ensuite, j'ai réussi à trouver la solution avec une combinaison de méthodes d'évaluation, comme le suggère l'auteur : IC puis trigrammes, unigrammes, puis quadrigrammes. A chaque fois j'ai déclenché la deuxième méthode en me basant sur le meilleur score de la première. J'ai également réussi à trouver la solution basée uniquement sur l'utilisation de trigrammes mais avec beaucoup plus de tests. J'ai également essayé l'algorithme simulated annealing. L'implémentation de cette approche n’a pas été aisée tant au niveau du détail de l’algorithme que du niveau de son paramétrage. Globalement, tous mes tests ont été concluants mais ils étaient bien plus complexes que mon approche initiale et notamment pas plus efficaces. Je pense que l’explication réside dans le fait que le C-36 est une machine simple qui ne nécessite l'usage d’algorithmes sophistiqués. En fait, j'aurais pu résoudre ce problème avec un crayon et du papier. En effet, les berceaux les plus fréquents étaient présent: NOKW ... KSURKW ... END (cf. 6.3.2).

5.5 Le point de vue allemand, cryptanalyse

Après l’anéantissement de la France, les cryptologues allemands ont eu tout le temps pour casser les systèmes C-36 et B-211. Ils pouvaient se baser non seulement sur la capture de ces machines mais aussi sur de nombreux documents saisis durant la campagne de France [1]. Comme les systèmes C-36 et B-211 ne faisaient pas partie des moyens de chiffrement autorisés sur les ondes par les allemands, ceux-ci ne purent pas intercepter leurs trafics qui était que filaire et donc ne purent pas les exploiter.

Voici le résultat de ces études qui sont décrites dans le document « OKW/Chi [2] Cryptanalytic Research on Enigma, Hagelin and Cipher Teleprinter Machines » (TICOM-45 1945) :

     Les différentes méthodes pour casser le C36 sont les suivantes :

     1. Solution par superposition de messages chiffrés avec la même clé
        (messages in-depth).
     2. Solution à partir de début stéreotypés.
     3. Solution générale.
La solution générale nécessite des messages très long, de l’ordre de 1000 caractères. Le document TICOM la décrit dans les grandes lignes. L’ouvrage de Baker qui traite de la M-209 la décrit dans le détail (Baker 1977). Du fait que les messages échangés avec la C36 étaient pour la plupart inférieur à 300 caractères, l’intérêt de la solution générale n’a qu’un intérêt académique sauf si on connaît la méthode indicateur qui permet de connaître la position de chaque message dans l’espace des clés et ainsi agréger plusieurs messages qui en final sont l’équivalent d’un seul gros message.

L’utilisation de messages superposés (in-depth) était plus réaliste mais elle nécessite d’avoir des messages chiffrés avec la même clé de message et qui ont donc les mêmes indicateurs. Normalement les procédures produites par le service du chiffre interdisait cette pratique mais il ne fait aucun doute que les conditions de guerre ont favorisées cette pratique. Il ne faut pas oublier que c’est la seule technique qui a permis aux allemands de déchiffrer des messages provenants de la M-209. Le document TICOM décrit dans les grandes lignes cette méthode, l’ouvrage de l’armée hollandaise, ouvrage très longtemps classifié, (post-1945 SMID). la décrit en détail pour la C-446 qui comme la C-36 utilise un Slide variable.

La méthode la plus utilisée par les déchiffreurs allemands à partir de novembre 1942 est sans contexte l’exploitation de messages ayant un début stéréotypée. Malheureusement, les chiffreurs français en faisait un usage abusif (cf. 6.3.2). Je vais la décrire et donner un exemple.

     TICOM I-45 - OKW/Chi Recherche cryptanalytique sur Enigma, Hagelin
     et les téléimprimeurs chiffrés. Les documents ci-joints, rédigés 
     conjointement par ORR Huettenhain et Sdf. Dr Fricke...

     Solution de la C.36 grâce à des débuts stéreotypés (le mot 
     cheville signifiant ergot et le mot saut signifiant clé)
     Supposons que le début soit "CONFIDENTIAL". De ce mot en clair 
     et du texte codé correspondant, on peut déduire les douze premiers 
     clés utilisés pour chiffrer le début du texte. Ainsi, les douze 
     premiers agencements d'ergots des cinq roues sont connus, si la 
     position initiale des roues est supposée être la « position zéro ».
     ... Le texte clair des lettres en position 26 à 29 peut alors 
     être immédiatement déduit. La suite est devinée. De cette manière, 
     d'autres dispositions d'ergots des différentes roues peut être 
     déterminées. Ces arrangements d'ergots permettent de déduire de
     nouveaux de textes clairs, etc. jusqu'à ce que toutes les 
     dispositions des ergots soient connues.
J’illustre la méthode décrite ci-dessus par l’exemple suivant en anglais. Soit le cryptogramme suivant. On suppose qu’il commence par le mot ORGANIZATIONK (K étant utilisé comme espace).
     INCXL BISSD QGQLZ XJVGX CHBEA MDYBX XIEPV WEPVF VEZLW LMSWD
     TPMZR JCTMV ZXVFU IHAJW TMCMQ UDVOX ASQRH HGAGG HRNDG QEITY
     HKIXQ WRWCJ MZHDK YOBYH WNNBP MZTUO JDGJR
Dans le chapitre sur le fonctionnement de la C-36, (cf. 2.1) nous avons étudiés les formules qui décrivent le chiffrement : C = D - P et D = S + K, où C: Lettre_chiffrée, P: Lettre_clair, D: Différence, S: Slide, K: Clé (provenant de la configuration des tétons).

Nous pouvons calculer ces valeurs pour la première lettre; nous supposons que le Slide est égal à 20 :

     C = D - P      => D = C + P = i (8) + o (14) = 24, 
                       K = D - S = 24 - 20 = 2
Dans la Table 4, nous avons calculé toutes les clés possibles pour chaque configuration des ergots. La clé égale à 2 correspond à la configuration d'ergots [0 1 0 0 0]. La Table 5 liste les configurations des ergots pour chaque lettre du crib. On peut en déduire la configuration des ergots pour les positions 19 à 32 en partie ou complétement. On peut deviner le mot SIGNAL à la position 23. Ce mot est encadré d'espaces, on déduit donc la chaine KSIGNALK. On peut en déduire quelques ergots: pos. 22: [? 0 1 0 1], pos. 23: [0 1 0 0 0], pos. 24: [0 0 0 0 1], pos. 26: [? 1 0 1 1], pos. 27: [1 0 1 0 0]. Ces déductions permettent à leur tour de faire d'autres déductions jusqu'à ce que la configuration de tous les ergots soit découverte. Je laisse la joie au lecteur de trouver cette configuration et la signification du reste du message.

Le livre de Cipher Deavours & Louis Kruh (Deavours, Kruh 1985) décrit également cette méthode. Par contre, il y a problème. La méthode que l’on vient de décrire nécessite de connaître le Slide. Ni le document TICOM ni celui de Deavours & Kruh n’évoquent ce problème. En fait, si la configuration des tétons est la configuration A (Table 2), on peut deviner facilement la valeur du Slide. La table 4 donne les différentes décalages possibles. On remarque que les décalages 16, 19, 20 et 23 sont impossibles. On remarque aussi que certains décalages sont plus probables (3, 10, 14,…,24, 25) que d’autres (0,1,4,5,…). Si l’on teste le crib pour chaque Slide possible on s’aperçoit que seule les Slides 2, 20 et 23 sont possibles. Pour chacun on peut calculer un score en fonction de la présence plus ou moins nombreuses des décalages les plus probables. On obtient respectivement les scores  7, 8, 5. Ainsi le Slide 20 est le plus probable, ensuite, le Slide 2 et enfin le Slide 23. Il est donc légitime de tester le Slide 20 en premier. On s’aperçoit ainsi de la grave erreur des concepteurs de la C-36 qui ont créé une configuration de tétons avec des overlaps qui ne permet pas d’avoir tous les décalages possibles.

On peut aussi trouver le Slide facilement avec un Crib très court (NUMKW par exemple) mais en testant de nombreux messages qui commencent par lui. J’ai fait un test avec seulement 5 messages qui m’a permis de déduire le Slide. A partir de ces cinq messages on reconstitue une toute petite partie de la clé, mais si on a à sa disposition des dizaines de messages, il est possible par recoupement de reconstituer complètement la configuration des ergots après avoir trouvé le Slide.

Un document (TICOM-IF-107 1944) confirme que cette méthode a été utilisé par les cryptanalystes allemands (cf. 6.4.1).

Notes de pied de page:

  • [1] Les documents TICOM ne précisent pas la nature des documents capturés. Mais on peut supposer qu’ils comportaient des tableaux de clés ainsi que le détail des procédures utilisées.
  • [2] OKW/Chi (OberKommando der Wehrmacht/Chiffrierabteilung): l'agence cryptologique de la Wehrmacht. Cette dernière étant composée de l'Armée de terre (Heer), de la Marine (Kriegsmarine) et de l'Armée de l'air (Luftwaffe).
  • [3] Messages superposés (in-depth), c'est à dire chiffrés avec la même clé.

Table 4: Les différentes clés en fonction des ergots

Config. ergots  Clé         Clé  Configuration des ergots
   0 0 0 0 0      0          0   [0 0 0 0 0]    
   0 0 0 0 1     14          1   [1 0 0 0 0]
   0 0 0 1 0      7          2   [0 1 0 0 0]
   0 0 0 1 1     21          3   [0 0 1 0 0],[1 1 0 0 0]=[???00]
   0 0 1 0 0      3          4   [1 0 1 0 0]
   0 0 1 0 1     17          5   [0 1 1 0 0]
   0 0 1 1 0     10          6   [1 1 1 0 0]
   0 0 1 1 1     24          7   [0 0 0 1 0]
   0 1 0 0 0      2          8   [1 0 0 1 0]
   0 1 0 0 1     15          9   [0 1 0 1 0]
   0 1 0 1 0      9         10   [0 0 1 1 0],[1 1 0 1 0]=[???10]
   0 1 0 1 1     22         11   [1 0 1 1 0]
   0 1 1 0 0      5         12   [0 1 1 1 0] 
   0 1 1 0 1     18         13   [1 1 1 1 0]
   0 1 1 1 0     12         14   [0 0 0 0 1],[1 0 0 0 1]=[?0001]
   0 1 1 1 1     25         15   [0 1 0 0 1],[1 1 0 0 1]=[?1001]       
   1 0 0 0 0      1         16   Impossible!    
   1 0 0 0 1     14         17   [0 0 1 0 1],[1 0 1 0 1]=[?0101]     
   1 0 0 1 0      8         18   [0 1 1 0 1],[1 1 1 0 1]=[?1101]
   1 0 0 1 1     21         19   Impossible!
   1 0 1 0 0      4         20   Impossible!
   1 0 1 0 1     17         21   [0 0 0 1 1],[1 0 0 1 1]=[?0011] 
   1 0 1 1 0     11         22   [0 1 0 1 1],[1 1 0 1 1]=[?1011]
   1 0 1 1 1     24         23   Impossible! 
   1 1 0 0 0      3         24   [0 0 1 1 1],[1 0 1 1 1]=[?0111]
   1 1 0 0 1     15         25   [0 1 1 1 1],[1 1 1 1 1]=[?1111]
   1 1 0 1 0     10
   1 1 0 1 1     22 
   1 1 1 0 0      6 
   1 1 1 0 1     18
   1 1 1 1 0     13
   1 1 1 1 1     25
Table 5: Configuration des ergots déduite d'un crib, slide = 20
Compt. Chiffré Clair Diff Clé Hypothèse de la configuration des ergots
  000      I     O    22   2  [ 0 1 0 0 0 ]
  001      N     R     4  10  [ ? ? ? 1 0 ]
  002      C     G     8  14  [ ? 0 0 0 1 ]
  003      X     A    23   3  [ ? ? ? 0 0 ] 
  004      L     N    24   4  [ 1 0 1 0 0 ]
  005      B     I     9  15  [ ? 1 0 0 1 ]
  006      I     Z     7  13  [ 1 1 1 1 0 ]
  007      S     A    18  24  [ ? 0 1 1 1 ]
  008      S     T    11  17  [ ? 0 1 0 1 ]
  009      D     I    11  17  [ ? 0 1 0 1 ]
  010      Q     O     4  10  [ ? ? ? 1 0 ]
  011      G     N    19  25  [ ? 1 1 1 1 ]
  012      Q     K     0   6  [ 1 1 1 0 0 ]
  013      L                  [           ]
  014      Z                  [           ]
  015      X                  [           ]
  016      J                  [           ]
  017      V                  [         0 ]
  018      G                  [         0 ]
  019      X                  [       0 1 ] 8,9,11,12   L,M,O,P  
  020      C                  [       1 0 ] 1-7         Z,A-F
  021      H                  [     0 0 0 ] 20-23       N,0,P,Q
  022      B                  [     ? 0 1 ] 8,9,11,12   H,I,K,L
  023      E                  [   1 0 0 0 ] 22,23       S,T
  024      A                  [   ? ? 0 1 ] 8,9,11,12   I,J,L,M   
  025      M                  [ 0 0 1 1 1 ] 18          G
  026      D                  [ ? ? 0 1 1 ] 12,13       M,N
  027      Y                  [ ? 0 1 0 0 ] 23,24       Z,A
  028      B                  [ ? 1 1 0 1 ] 12          L
  029      X                  [ 1 1 1 1 0 ] 7           K
  030      X                  [ ? 0 1 1   ] 4,5,8       H,I,L
  031      I                  [ 1 0 ? 0   ] 21,24,8,11  N,K,A,X
  032      E                  [ ? 0 1     ] 19,20,1,2,15T,U,A,B,P
  033      P                  [ ? ? 1     ]
  034      V                  [ ? 1       ]

Réfèrences

  • Barker Wayne G., 1977. Cryptanalysis of the Hagelin cryptograph", Aegean Park Press
  • Deavours, Cipher A., Kruh, Louis. 1985. Machine Cryptography and Modern Cryptanalysis – Cipher A. Deavours & Louis Kruh, Artech House, Inc, Boston, London.
  • Ribadeau-Dumas, L. 1975. Essai d’historique du chiffre de l’armée de terre, 4ième partie (1919-1939), Bulletin de l’ARCSI, Nouvelle série N°3, p19–34
  • Ribadeau-Dumas, L. 1976. Essai d’historique du chiffre de l’armée de terre, 5ième partie: la guerre 1939-1945, Bulletin de l’ARCSI, Nouvelle série N°4, p33–52
  • SHD - 1 P 136. 1942. Délégation générale du gouvernement en Afrique française – 1941-1942
  • SHD 11 P 187. 1944. 1er Division Blindée – Section du chiffre – E.M: 2e Bureau – Télégrammes expédiés 9-6-43 au 21-12-1944. 1943-1944.

Liens Internet