4 - La sfida più ardua: Enigma Navale
Come già ricordato, Enigma non era usata esattamente allo stesso modo su tutti i teatri operativi e nemmeno i cifrari erano gli stessi. Quindi Bletchley Park dovette lavorare per risolvere le comunicazioni cifrate nel Mediterraneo, in Nord Africa, verso l’Inghilterra e su tutti gli altri fronti, comprendendo anche le comunicazioni cifrate italiane e giapponesi. Il nome in codice di tutta l’operazione era Ultra e il suo successo fu di importanza vitale per la vittoria Alleata.
Il nemico più difficile da sconfiggere fu Enigma Navale, una versione modificata della macchina adottata soltanto dalla Kriegsmarine e che fu decisiva per le sorti della battaglia dell’Atlantico.
Fig.1: Enigma Navale a quattro rotori.
A prima vista non è ovvio il perché Enigma navale fosse così difficile da rompere, in quanto inizialmente usava la stessa versione della macchina adoperata dalle altre forze armate.
La difficoltà stava nel sistema di indicatori. Questo era unico per la Marina Tedesca e prevedeva un sistema di codifica separato, digrammi e trigrammi, per nascondere l’assetto del messaggio.
4.1 - Sommario del funzionamento di Enigma
“reciprocità” : se A -> J allora j -> A nella stessa posizione del rotore.
“non-collisione” : A non poteva essere cifrata come A.
Tacche di rotazione sui rotori dell’alfabeto. Gli anelli dell'alfabeto potevano essere posti in posizioni differenti rispetto al nucleo del rotore che conteneva il filamento incrociato(Ringstellung). Infatti i rotori differivano anche nel punto che trasmetteva il movimento al rotore successivo più lento (perchè più a destra). A seconda del numero del rotore il dentello che trasmetteva il movimento si trovava in corrispondenza di una lettera diversa.
Queste sono le lettere che apparivano nella finestra quando la rotazione (sostituzione) stava per verificarsi e la rima che veniva usata a Bletchley Park per ricordare la corrispondenza tra numero dei rotori e posizione del dentello (data dalla lettera cha appariva nella finestra della macchina) :
.(R)oyal
(F)lags (W)ave (K)ings (A)bove.
..I......II......III....IV.......V.
Questo era un errore. Tutti i rotori dovrebbero aver avuto gli stessi punti di rotazione, cosa che più tardi venne fatta sui rotori numerati 6,7 e 8. Con punti di rotazione differenti i rotori potevano essere identificati.
I rotori 6,7 e 8 furono aggiunti dalla Marina Tedesca. Tutti avevano due punti di rotazione che erano gli stessi per ciascuno di essi.
Per ogni numero di rotore alla sostituzione appare sempre la stessa lettera nella finestra.
La corrente elettrica passava attraverso i cavi e faceva illuminare una lampadina dopo che il rotore aveva compiuto la rotazione.
4.1.1 - Nascondere la chiave di messaggio
La Marina Tedesca usava due metodi per nascondere la chiave di messaggio ad un eventuale nemico:
La macchina Enigma stessa.
Si tratta del metodo che usavano le altre forze armate che consisteva nell’uso di una chiave di messaggio ripetuta due volte, cifrata con la chiave giornaliera e inserita all’inizio del messaggio stesso.
Un sistema di codifica completamente separato.
Nel maggio 1937 la Marina Tedesca introdusse un nuovo sistema per codificare la chiave di messaggio basato su sostituzioni di bigrammi.
Il sistema prevedeva di selezionare un trigramma da un libro ( il Kennbuch, o K Book), cifrare questo trigramma con la chiave Grund (vedi paragrafo successivo) e a questo punto effettuare una sostituzione di bigramma sul trigramma e trasmettere il risultato come intestazione del messaggio. Il destinatario compiva la sostituzione inversa del bigramma ottenendo il trigramma originale dal quale poteva ricavare anche la chiave di messaggio decifrandolo con la chiave Grund.
4.2 - La chiave giornaliera (Tagschluessel)
Disposizione degli scambiatori.
I numeri dei rotori che dovevano essere sistemati nella macchina da sinistra a destra ( 336 possibilità con 8 rotori, ridotte dalle regole dell’inclusione di almeno uno tra i rotori numerati 6, 7 o 8)
Ringstellung
(Assetto delle ruote) per ciascun rotore, da sinistra a destra ( 17576 combinazioni). Notare che la disposizione degli scambiatori e il Ringstellung cambiavano ogni due giorni, mentre l’assetto del pannello a prese multiple e il Grundstellung cambiavano ogni giorno.
Assetto del pannello a prese multiple.
Di solito si scambiavano dieci paia di lettere.
Grundstellung(Grund).
Era costituito dalle tre (o quattro) lettere che mostravano la posizione dei rotori da usare per cifrare la chiave di messaggio.
Fig.2: Riproduzione esemplificativa di un singolo Grund (a destra).
4.2.1 - Usare il K Book e le tavole dei bigrammi
Scegliere un trigramma dal K Book, poniamo YLA.
Cercare nella Zuteilungliste quali colonne del K Book sono allocate a questa chiave particolare ( Acque Territoriali, U-Boat, ecc)
Selezionare un altro trigramma (il Schluessel Kenngruppe), poniamo YVT.
4.2.2 - Il foglio di messaggio
Si scriveva nei rettangoli nella parte superiore del foglio per messaggio:
.
, Y V T.
Y L A .
.
Fig.3: Foglio per messaggio.
Si sostituiva ai punti lettere qualsiasi, poniamo
.
Q Y V T.
Y L A G.
.
A questo punto si cercano le coppie verticali di lettere nella tavola dei bigrammi,
Fig 4: Parte di tavola dei bigrammi.
scrivendo le coppie risultanti.
UB LK RS PW.
Queste sono trasmesse come due gruppi di quattro lettere all’inizio e alla fine del messaggio cifrato.
Quando il messaggio veniva ricevuto dal destinatario, le coppie di lettere venivano cercate nella tavola dei bigrammi per ricostruire il trigramma il quale a sua volta veniva decifrato usando il settaggio del Grund per recuperare la vera chiave di messaggio.
4.3 - Il problema degli intercettatori
Risolvere le tavole dei bigrammi
Questa fase doveva cominciare con un “assaggio”, cioè il recupero di un gruppo di tavole. Infatti, una volta iniziata la decifrazione dei messaggi, si poteva ricostruire nuove tavole le quali venivano cambiate quasi una volta all’anno.
Recuperare la chiave giornaliera
In particolare erano importanti la disposizione degli scambiatori e il cosiddetto Grund (assetto iniziale dei rotori). C’erano 336 disposizioni e (26)^3 o (26)^4 posizioni iniziali diverse, per un totale di 150000000 combinazioni da esaminare.
4.3.1 - Prove per trovare gli assetti della macchina
Cribs
Un crib nella terminologia di Bletchley Park era un’ipotesi fatta su una parte del testo in chiaro che era cifrato in modo da dare il testo cifrato catturato. Tale ipotesi aveva bisogno di indizi che i tedeschi fornivano in abbondanza.
Questi erano costituiti da messaggi standardizzati, cifrature ripetute dello stesso messaggio con chiavi diverse, e potevano basarsi sulla lunghezza, sulla provenienza e il tempo di partenza del messaggio.
Banburismo (banburismus)
Alan Turing si accorse, guardando per la prima volta Enigma navale nel 1938, che si poteva sfruttare l’errore di mettere le tacche di rotazione in posizioni differenti su ogni scambiatore. Pensò che se poteva essere mostrato che per dei dati messaggi in un giorno, la rotazione poteva non verificarsi in certi campi sull’alfabeto input, questo avrebbe precluso a certi rotori di trovarsi sul lato destro.
Che questo fosse possibile dipendeva dalla procedura degli Enigma Navali e richiedeva che tutte le macchina su una stessa rete per uno stesso giorno cifrassero la loro chiave di messaggio con le stesse tre lettere di assetto iniziale, cioè con lo stesso Grund.
Supponendo di avere avuto in qualche modo le tavole dei bigrammi, i crittoanalisti avevano il trigramma che rappresentava l’assetto della chiave di messaggio cifrata. Non conoscevano la chiave di messaggio originale, ma ne conoscevano la cifratura col Grund.
Poiché tutte le cifrature iniziavano col Grund, la stessa lettera nello stesso posto in una coppia di chiavi di messaggio cifrate significava che le lettere della chiave di messaggio cercata dovevano essere le stesse.
Se i trigrammi differivano solo nell’ultima lettera, allora anche gli inizi del messaggio dovevano differire solo nell’ultima lettera. Se si hanno due lunghezze di testo cifrato e dai trigrammi si può pensare che siano state cifrate con lo stesso assetto dei rotori, il Banburismo ci permette di trovare la differenza negli assetti iniziali dei due testi. Questo funziona perché la distribuzione delle lettere del testo non era completamente casuale. Il Banburismo consiste nel fatto che c’è una probabilità che, se due messaggi iniziano in due punti di cifratura diversi, ad un certo punto nei messaggi si presenterà la stessa lettera e tale lettera verrà cifrata da Enigma nello stesso modo. Per esempio, supponiamo che gli assetti iniziali siano CGC e CGG. Così quando i primi quattro caratteri del primo messaggio sono stati cifrati, l’assetto dei rotori è arrivato a CGG, che corrisponde all’assetto iniziale del secondo messaggio. Da questo punto in poi i due messaggi procedono in sincronia, cosicché se appare la stessa lettera in entrambi i messaggi in chiaro, essa verrà cifrata in entrambi i crittogrammi allo stesso modo.
Si scoprì che c’era una buona probabilità di trovare lettere corrispondenti quando i due testi cifrati sono allineati in base alla differenza tra le posizioni dei due rotori più a destra.
Ed è a questo punto che venivano usati i cosiddetti Banbury Sheets. Bisognava fissare i due testi cifrati su due fogli diversi e far scorrere i fogli uno sull’altro contando i buchi che si sovrapponevano fino ad ottenere le posizioni corrispondenti alla differenza tra gli assetti.
Questo metodo, nonostante richiedesse molto tempo e non fosse semplice da portare al successo, era molto preciso e risultava di vitale importanza quando si avevano a disposizione piccoli risultati statistici.
Fig.5: Banbury Sheet
4.4 - La procedura del Banburismo
Il Banburismo dipende dalle tavole di bigrammi ricostruite o catturate. Per prima cosa vennero raccolte 24 ore di intercettazioni e le tavole vennero usate per decodificare le coppie di trigrammi nei due gruppi da quattro lettere dell’inizio dei messaggi.
Il secondo di questi due, l’indicatore, era quello che l’operatore tedesco destinatario digitava nella sua macchina Enigma, impostata secondo il Grund del giorno, per ricavare l’assetto da usare per il resto del messaggio.
I crittoanalisti non sapevano qual’era il Grund, ma avevano l’indicatore.
E possibile dare una piccola dimostrazione di come il Banburismo funzionava usando, però, degli assetti realizzati ad hoc per questa prova e selezionati tra più di 200 intercettazioni per ottenere un più ristretto campo di ricerca. Tutti hanno la stessa lettera iniziale e una limitazione nella lettera intermedia. Bisogna ricordare che nella realtà dei crittoanalisti di Bletchley Park erano necessarie un minimo di 200 intercettazioni giornaliere per avere successo con questa tecnica.
Questo esempio parte da 36 testi cifrati appartenenti alle trasmissioni degli U-boat del 29 luglio 1941. Isolando solo le coppie di messaggi i cui indicatori davano una corrispondenza massima si ottiene la seguente lista che riporta le coppie di messaggi, gli indicatori e gli offset.
L’interpretazione che i crittoanalisti usavano seguiva la regola secondo la quale il primo indicatore più l’offset restituisce il secondo indicatore.
01,14
DXL + 26 = DIL |
|
Ad ogni offset maggiore di 26 si può sottrarre 26. Per esempio, nella seconda coppia, 01,15 , l’offset 28 è interpretato come le lettere centrali dell’indicatore sono cifrate in due lettere adiacenti mentre le terze lettere sono cifrate in due lettere con offset 2.
Quindi cominciamo con la lettera “O” all’estrema destra poiché questa è la più frequente.
O<-6->E
in 02,05 (che significa che O ed E sono cifrate in lettere con offset 6)
E<-2->W in 05,14
O<-8->W in 02,06
Questo può essere rappresentato nel modo seguente:
O<-6->E<-2->W
O<-.....8.....->W
In questo modo può essere costruita l’intera rete degli offset per la maggior parte delle profondità, ricordando che la direzione degli offset può essere anche negativa e modulo 26 (ad esempio 26-offset). Il risultato, che si potrebbe verificare con un po’ di pazienza, è:
R<-2->K<-4->L<-2->O<-2->I<-2->Z<-2->E<-2->D<-2->W<-2->C
Quello che resta da fare a questo punto è trovare le lettere assolute per l’indicatore. L’operazione consiste nello scrivere le lettere trovate sopra, con la giusta spaziatura, su dei fogli che andrebbero fatti scorrere sotto un alfabeto ripetuto più volte cercando di trovare una posizione del foglio in cui non si rilevano contraddizioni o sovrapposizioni.
PQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABC
.....R.K...L.O.I.Z.E.D.W.C.
In questo modo si ricostruisce un alfabeto parziale per il rotore più a destra di Enigma con assetto Grund+2. Ma, cosa più importante, ci porta ad identificare il terzo rotore come il numero 1 poiché è l’unico rotore la cui rotazione ( R) cade al di fuori del campo compreso tra U e O nel quale non può esservi rotazione.
Così si riusciva a scoprire il numero del terzo rotore con certezza e spesso si poteva trovare anche quello del rotore centrale. Ciò avrebbe ridotto il numero di disposizioni dei rotori da 336 a soltanto 20.
4.5 - L’Enigma con 4 scambiatori
Dal febbraio 1942 Shark ( nome in codice della versione navale di Enigma) introdusse una chiave del tutto diversa legata al fatto che un nuovo scambiatore, il quarto, era stato inserito nella macchina. Le caratteristiche principali della nuova versione erano:
1. due tipi di quarto rotore, Beta e Gamma
2. due riflessori, Bruno e Ceasar
3. qualsiasi combinazione poteva essere utilizzata
4. una combinazione veniva impiegata per un mese
5. Beta e Gamma erano sempre settati a Z
6. il quarto rotore poteva essere posto in una qualsiasi delle 26 posizioni, ma non ruotava durante il messaggio
7. con il quarto scambiatore posto in A, con Beta/Bruno o Gamma/Ceasar, la macchina era equivalente ad una versione con tre rotori
8. il numero di posizioni iniziali ora è: (26)^4 = 456976
Alcuni errori grossolani della sicurezza tedesca fecero scoprire i circuiti del nuovo scambiatore e del riflessore.
4.6 - U 559
Il 30 ottobre 1942 venne intercettato un U-boat nel Mediterraneo dell’est. Il cacciatorpediniere HMS Petard spinse il sommergibile a riemergere e i tedeschi abbandonarono la nave. Alcuni uomini dell’equipaggio inglese si introdussero all’interno e riuscirono a recuperare degli importanti documenti che vennero immediatamente spediti a Bletchley Park, ma persero la vita per l’improvviso affondamento del sommergibile. Questo episodio risultò cruciale per risolvere i nuovi problemi creati dall’introduzione dell’Enigma a quattro rotori in quanto i documenti trovati erano il Libro Delle Abbreviazioni Meteorologiche (Wetterkurzschluessel) e il Libro per le Segnalazioni Rapide.
Fig.5: Libro Delle Abbreviazioni Meteorologiche
La nuova macchina Enigma a quattro scambiatori venne adottata soltanto dall’Alto Comando della Marina Tedesca ( e quindi da tutte le unità operative in teatri di prima linea, come gli U-boat), ma doveva essere usata anche per comunicare con gli operatori che non possedevano questa versione. E fu proprio questo particolare che venne sfruttato per penetrare di nuovo nella sicurezza delle comunicazione della Kriegsmarine.
Infatti il Servizio Meteorologico aveva bisogno dei rapporti meteo che gli venivano forniti dai sommergibili i quali dovevano momentaneamente impiegare Enigma con un assetto adatto anche alle macchine con tre rotori. Per impedire possibili individuazioni della posizione della nave da parte degli Alleati venivano codificate e spedite delle abbreviazioni in cui si condensava il contenuto del rapporto richiesto dal Centro Meteo. Le abbreviazioni erano conservate in un libro, e proprio quel libro, nell’edizione del 1941, venne catturato con l’U 559.
Una volta che il Centro Meteo aveva messo insieme i rapporti, veniva trasmessa una sinottica generale nel loro codice meteo che usava il codice standard internazionale, ma era cifrata con le tavole di bigrammi. Questa sinottica venne decodificata a Bletchley e da essa si conoscevano le condizioni meteo in cui gli U-boat si trovavano e si potevano dedurre le osservazioni dei sommergibili. Dalla cattura dei libro dei codici dell’U 559, i crittoanalisti poterono risolvere i codici meteo inseriti dall’operatore Enigma per fornire il segnale intercettato dagli Alleati. Questo forniva un prezioso crib da usare con le bombe tradizionali a tre rotori e che poteva facilmente fornire una configurazione della macchina.
4.6.1 - Un esempio di intercettazione
Di seguito è presentato un semplice esempio.
La situazione meteo era rappresentata da 11 lettere, ognuna delle quali corrispondeva a un fenomeno diverso, ma sempre spedite nello stesso ordine. Di seguito sono mostrate le lettere e le tavole corrispondenti nel W Book.
Fig.6: Corrispondenze nel W Book.
E qui sotto ci sono le tavole del W Book per la direzione e il tipo dell’imbarcazione.
Fig.7: Tavola per direzione e tipo imbarcazione.
Le lettere del Codice Meteo erano precedute da una singola lettera che faceva riferimento, attraverso una tabella, alle tre lettere dell’assetto iniziale di Enigma per il messaggio.
Fig.8: Tabella delle lettere iniziali.
Questo esempio, preso dal W Book, compone quattro gruppi di quattro lettere: MYZR QSOV KVQM e se “m” fornisce un assetto iniziale di GWB, per un Grund di: disposizione degli scambiatori I VI III, Ringstellung DKT e assetto del pannello a prese multiple TG DW SX IQ LF UC PK YR BN MJ, si può cifrarlo per ottenere: KQJ MUAU JSZL, con la M non cifrata all’inizio.
Questo era quello che l’operatore Enigma faceva trasmettere dal radiofonista alla Stazione Meteo.
4.6.2 - Risoluzione
Quindi supponiamo che quello che abbiamo visto sopra sia ciò che veniva intercettato e mandato a Bletchley Park. Assumiamo anche che la sinottica per quell’area di mare fosse nota e che si avesse anche a disposizione la direzione e la posizione del sommergibile che trasmetteva. Perciò c’era un crib su cui lavorare con le bombe.
zab.cdef.ghij.........
KQJ MUAU JSEL . cipher
ZYR QSOV KVQM . crib
La prima cosa da fare è trovare una concatenazione:
S<- d ->U (S va a U e a d), con U<- f ->V e V<- h ->S che completano una concatenazone.
Le lettere che rimangono formano una catena.
L<- j ->M<- c ->Q<- i ->Z<- z ->K<- g ->J<- b ->R con Y<- a ->Q come braccio laterale.
La forma lineare della disposizione da mandare alle bombe era:
SUZD UVZF VSZH LMZJ MQZC QZZI ZKZZ KJZG JRZB YQZA
I crittoanalisti avrebbero dovuto controllare una grande quantità di disposizioni degli scambiatori e, anche riducendole sfruttando la conoscenza degli schemi di utilizzo dei tedeschi, questo rimaneva comunque un compito gravoso.
La bomba si sarebbe fermata nella posizione seguente:
163 CLI JM KP LF MJ QI RY SX UC VV YR ZZ
Non mostreremo come (anche se con un simulatore di bomba può essere fatto), ma questa configurazione presenta una conferma, JM MJ, e due lettere che sul pannello a prese multiple ritornano su loro stesse, VV ZZ. Un ultimo particolare: perché si trova l’assetto CLI quando l’assetto della macchina Enigma era GWB? Questo è dovuto al fatto che la bomba ha trovato l’assetto centrale che soddisfa i vincoli della disposizione per un Ringstellung ZZZ. L’unico modo di ricavare il Ringstellung originale era tentare di decifrare altri messaggi per i quali la posizione relativa di partenza era deducibile.
L’esempio mostrato forse non rende appieno la difficoltà dell’operazione, la quale era legata a tanti fattori quali la disponibilità della sinottica, la posizione dell’U-boat e la correttezza e il giusto ordine delle lettere dei codici tedeschi, nonché la disponibilità di un crib affidabile per il funzionamento delle bombe. Questo spiega perché fossero necessarie centinaia di intercettazioni per impiegare le bombe.
4.7 - I segnali di contatto degli U-boat
Nel 1943 una nuova battuta d’arresto per Bletchley Park venne dal cambiamento del Libro delle Abbreviazioni Meteo.
Per superare questa nuova crisi si pensò di sfruttare i segnali di rapporto degli U-boat. Tali segnali erano brevi comunicazioni radio in cui gli equipaggi tedeschi dei sommergibili riportavano i possibili avvistamenti di navi Alleate. Essi si basavano ancora una volta su un Libro che conteneva le abbreviazioni ed erano lunghi soltanto 22 caratteri. In questo caso il crib necessario poteva essere ricavato dalla cattura di tale Libro dal sommergibile U 559 e in particolare ricavando le informazioni sulla posizione, la velocità e la direzione del convoglio intercettato.
Fig.9: Libro per le Segnalazioni Rapide.
Per ricavare la chiave giornaliera da questi segnali ci si basava sul fatto che i segnali dovevano essere mandati velocemente e quindi i tedeschi usavano un sistema semplice per l’assetto della chiave di messaggio. La chiave di messaggio era la posizione dei rotori usata per decifrare (e cifrare) il messaggio e l’operatore Enigma cercava una coppia indicatore/chiave nel suo K Book, compreso l’indicatore nell’intestazione del messaggio, e cifrava il segnale partendo con i rotori posti secondo la chiave di messaggio.
Bletchley Park aveva in suo possesso un K Book quindi a partire dall’indicatore si poteva direttamente risalire alla chiave di messaggio. Ma non si conosceva la configurazione base della macchina Enigma.
Da un numero sufficiente di messaggi si poteva ricavare una disposizione (un Menu) da usare sulle bombe di Turing.
4.7.1 - Un insieme ricostruito di segnali
Stabilendo la possibile rotta di un convoglio attraverso l’Atlantico del Nord, si può ricostruire un insieme di segnali come quelli che avrebbe mandato un U-boat in vari punti della rotta. Vediamo un esempio da telescrivente.
Fig.10: Un esempio da telescrivente
Chiavi di messaggio dal K Book.
SC28/04/43 0940 7369 A348
LQB 0910/28/04/43 QGMI VVEE SERQ YGBW IAHK HW.......BHB
SC28/04/43 1140 7369 A356
TMF 1110/28/04/43 MLWP EOIG VUWY USNT AHFT WW.......LLG
SC28/04/43 1230 7369 A378
DLP 1205/28/04/43 RTVQ HSLL WKDS DAEK ABNO NG.......HPW
SC28/04/43 1335 7534 A406
JKT 1310/28/04/43 BZKN YRIY AUBD KFRJ EMBR DC.......RHO
SC28/04/43 1435 7369 A420
BHK 1405/28/04/43 QUWP YNLE LGEY DEZS BXYW XA.......LNU
SC28/04/43 1530 7534 A457
SAT 1510/28/04/43 RMRO RYOC ZJLB LNWQ XEUL TG.......LJT
SC28/04/43 1635 7369 A465
GLS 1605/28/04/43 LGRH CETW DLKZ WYVT ZBDN KL.......AIC
SC28/04/43 1705 7534 A487
HPX 1635/28/04/43 OBPF ARLK SZTK XGGW BFTT GL.......TRX
SC28/04/43 1725 7369 A505
NFT 1710/28/04/43 YWGH LYOO SZOO MXOW UHCU DE.......RMU
SC28/04/43 1825 7482 A528
BUW 1805/28/04/43 AIYE ULYF EUEE BFHR VMDV ET.......OGO
SC28/04/43 1855 7534 A537
OGV 1835/28/04/43 TSVB PZHM CZVM AGUF CZVE AP.......BPZ
SC28/04/43 1940 7369 A549
LFR 1910/28/04/43 VNPZ REZZ KUBG KHYO DCCG HX.......JRK
SC28/04/43 2020 7482 A556
QGX 1945/28/04/43 QTFH JSHV WTAD GBRB PYYQ ND.......RBN
SC28/04/43 2035 7534 A573
RVN 2005/28/04/43 LLUU GHKV TUYQ ICEP NNAZ DV.......SLR
SC28/04/43 2100 7369 A582
ULF 2035/28/04/43 HTBY GZWV WYKI SFUW RCLY LG.......BRF
SC29/04/43 2135 7278 A610
KPZ 2110/28/04/43 MIGU TMNR OAAP XHWR HYLG CL.......EUP
SC29/04/43 2220 7482 A636
YXW 2145/28/04/43 NGYB VZRP NTTH WCFM PECF LP.......BZR
SC29/04/43 2235 7534 A659
WPM 2205/28/04/43 XBFU LVES BJVN MFNP OLRC IB.......BFQ
SC29/04/43 2305 7369 A672
WLH 2235/28/04/43 ULQT QGZJ QDDK UGPI WQRC ZI.......DWX
SC29/04/43 2335 7278 A693
PNC 2310/28/04/43 YGXN PBAQ CUUL EHEB EGYC VW.......JJT
SC29/04/43 0005 7482 A712
DVZ 2345/28/04/43 FHLR XYUA SHLS NPCP WDXK EO.......EON
SC29/04/43 0035 7534
UNT 0005/29/04/43 ULQZ OEXS ULGL EFEA HSBC IR.......PKE
SC29/04/43 0105 7369 A751
FSZ 0035/29/04/43 LZET JPJR QFSY TAUH GKYN VU.......RYA
SC29/04/43 0140 7305 A783
RCU 0110/29/04/43 UDIF XIUB FZLR EGFS LFKZ QU.......BDG
SC29/04/43 0215 7560 A823
QKG 0145/29/04/43 NYCJ WSVI QDYK MXII RQFR EV.......HTS
Fig.11: Una possibile rotta.
Fig.12: Mappa tedesca a griglia dell’Atlantico del Nord.
Queste intercettazioni forniscono il tempo di inizio del segnale di contatto.
Le posizioni dei convogli vengono spedite a Bletchley Park. Un riferimento radio di direzione sul segnale dell’U-boat determina quale convoglio è stato individuato.
La mappa tedesca a griglia dell’Atlantico del Nord (Fig.11) può essere usata per ottenere le coordinate di riferimento per il convoglio.
Si cercano nel Libro dei Segnali le lettere per un messaggio del tipo: “Avvistato convoglio, riferimento griglia 1, riferimento griglia 2, direzione del convoglio, velocità del convoglio”. Le ultime due lettere possono essere ignorate poiché rappresentano l’identificativo del sommergibile che non si conosce. Al primo avvistamento la posizione è BD1491, la direzione 70 gradi, la velocità 10 nodi.
Questo fornisce il crib per il primo segnale:
CKSA KAFV MWZJ QKDX QRZA ??
SC28/04/43 0940 7369 A348
LQB 0910/28/04/43 QGMI VVEE SERQ YGBW IAHK HW.......BHB
..................CKSA KAFV MWZJ QKDX QRZA ??
Allo stesso modo vengono ricavati i crib per ciascuno dei segnali intercettati.
Si ordinano le intercettazioni in base all’ordine di arrivo rispetto alla prima lettera della chiave di messaggio cercata nel K Book.
AIC.....LGRH
CETW DLKZ WYVT ZBDN KL
BHB.....QGMI VVEE SERQ YGBW IAHK HW
BPZ.....TSVB PZHM CZVM AGUF CZVE AP
BRF.....HTBY GZWV WYKI SFUW RCLY LG
BZR.....NGYB VZRP NTTH WCFM PECF LP
BFQ.....XBFU LVES BJVN MFNP OLRC IB
BDG.....UDIF XIUB FZLR EGFS LFKZ QU
DWX.....ULQT QGZJ QDDK UGPI WQRC ZI
EUP.....MIGU TMNR OAAP XHWR HYLG CL
EON.....FHLR XYUA SHLS NPCP WDXK EO
HPW.....RTVQ HSLL WKDS DAEK ABNO NG
HTS.....NYCJ WSVI QDYK MXII RQFR EV
JRK.....VNPZ REZZ KUBG KHYO DCCG HX
JJT.....YGXN PBAQ CUUL EHEB EGYC VW
LLG.....MLWP EOIG VUWY USNT AHFT WW
LNU.....QUWP YNLE LGEY DEZS BXYW XA
LJT.....RMRO RYOC ZJLB LNWQ XEUL TG
OGO.....AIYE ULYF EUEE BFHR VMDV ET
PKE.....ULQZ OEXS ULGL EFEA HSBC IR
RHO.....BZKN YRIY AUBD KFRJ EMBR DC
RMU.....YWGH LYOO SZOO MXOW UHCU DE
RBN.....QTFH JSHV WTAD GBRB PYYQ ND
RYA.....LZET JPJR QFSY TAUH GKYN VU
SLR.....LLUU GHKV TUYQ ICEP NNAZ DV
TRX.....OBPF ARLK SZTK XGGW BFTT GL
4.7.2 - Regolare i messaggi intercettati in profondità
I crittoanalisti avrebbero dovuto iniziare ciascun gruppo non sapendo quale sarebbe risultato il migliore.
Il migliore è il gruppo “B” e di seguito sono regolati in profondità.
BHB.....QGMI
VVEE SERQ YGBW IAHK HW
BPZ.....TSVB PZHM CZVM AGUF CZVE AP
BRF.....HTBY GZWV WYKI SFUW RCLY LG
BZR.....NGYB VZRP NTTH WCFM PECF LP
BFQ.....XBFU LVES BJVN MFNP OLRC IB
BDG.....UDIF XIUB FZLR EGFS LFKZ QU
Fig.13: Foglio per lo studio dei crib.
Lungo il lato superiore del foglio ci sono alfabeti consecutivi in minuscole. Al di sopra di questi sono segnate le posizioni di rotazione dei rotori Enigma.
Di seguito sono scritti i messaggi intercettati con i crib al di sotto, spostati dalla terza lettera nella chiave di messaggio.
A questo punto il crittoanalista cerca e cerchia coppie verticali delle stesse coppie di lettere preferibilmente nella stessa area verticale su ciascun messaggio e preferibilmente tra posizioni di rotazione dei rotori. (poiché Enigma è simmetrica, A cifra R è lo stesso che dire R cifra A)
Le linee orizzontali mostrano le parti del crib che hanno la maggiore sicurezza di essere corrette.
4.8 - Costruire un Menu per la bomba di Turing
Ci sono tre messaggi, BRF, BZR e BFQ che hanno una sovrapposizione verticale tra i punti di rotazione dei rotori 1 e 3, quindi iniziamo con questa area.
Con offset “t” (lungo gli alfabeti posti alla sommità del foglio), in BRF, D -> U. In BFQ, A -> U.
Inoltre con offset “v” in BFQ, A -> V e in BZR, K -> V.
Quindi, ricordando che K -> V equivale a V -> K, allora: D – U – A – V – K è un frammento connesso di un menu.
L’ultimo messaggio, BDG, fornisce il collegamento F -> D che rende forte il Menu per la Bomba.
Fig.14: Esempio di collegamenti.
Le informazioni del Menu sono passate alla sala delle Bombe come gruppi di quattro lettere. Le prime due sono le lettere interessate e le altre due rappresentano l’offset.
Questo Menu è costituito da:
UAFT AVFV VKZU GKET KFSS FDEU DUST FSFS SXEU YSZT.
4.8.1 - Far funzionare la Bomba di Turing
Fig.15: Una bomba di Turing.
Se passassimo questo menu ad una simulazione di una Bomba di Turing, essa si fermerebbe con un ordine degli scambiatori 534, in posizione DMQ e un assetto del pannello a prese multiple AD DA FF GB KM SS UU VT XI YR.
Questa è considerata una fermata consistente con due conferme (AD DA) e due auto codifiche del pannello a prese multiple.
Quello che la Bomba ha scoperto è un insieme di circuiti centrali degli scambiatori che soddisfano il Menu, date delle lettere da scambiare nel pannello a prese multiple, come mostrato nella fermata. Ma la Bomba ha assunto un assetto dei rotori di ZZZ. Ciò che al crittoanalista rimane da fare è dedurre il vero assetto degli scambiatori e le restanti connessioni del pannello a prese multiple usate dagli operatori degli U-boat per cifrare i segnali di contatto.
Questo fornirebbe l’assetto completo di Enigma per un giorno e significherebbe che tutti gli altri messaggi mandati con Enigma a tre rotori potrebbero essere decifrati, comprese le vitali Abbreviazioni Meteo.
Ancora una volta, utilizzando una simulazione, possiamo ottenere che l’assetto di Enigma Navale per il giorno dell’esempio che abbiamo trattato era: disposizione degli scambiatori: 534, orientamento degli scambiatori: XMJ, assetto del pannello a prese multiple: AD GB KM VT XI YR ZH NQ OL CE.
Con queste informazioni si sarebbero potuti decifrare tutti i messaggi degli U-boat di quel giorno, le Abbreviazioni Meteo e ricostruire il relativo Libro.