2 - Guerra ad Enigma: i crittoanalisti polacchi

 

 

Dopo i successi della Grande Guerra l’Inghilterra e i suoi alleati si sentivano sicuri della loro superiorità e l’attenzione che avevano posto nell’intercettare e risolvere i crittogrammi dei loro nemici nel passato andò man mano diminuendo fino a subire una vera e propria battuta d’arresto dopo il 1926, anno in cui cominciarono a intercettare messaggi di cui non venivano a capo. Si trattava dei primi crittogrammi prodotti da Enigma per le forze armate germaniche. Dopo qualche mese di insuccessi i crittoanalisti della Stanza 40 si diedero per vinti, seguiti dai colleghi degli uffici analoghi delle altre potenze vincitrici.

Fortunatamente una Nazione non aveva smesso di preoccuparsi dei suoi avversari che in realtà diventavano sempre più minacciosi e questa era la Polonia, stretta tra Germania e Russia. In particolare un ufficio chiamato Biuro Szyfrow, l’ufficio cifre polacco, si impegnò a raccogliere tutte le informazioni possibili sulle comunicazioni crittate tedesche e non si scoraggiò nemmeno di fronte ai messaggi apparentemente indecifrabili prodotti da Enigma.

Questo ufficio possedeva una versione commerciale della macchina, ma questo non era di nessuna utilità per risolvere le comunicazioni militari. La situazione rimase invariata fino al novembre del 1931 quando Hans-Thilo Schmidt, un impiegato dell’ufficio amministrativo preposto alle comunicazioni crittate militari, fornì ad una spia francese, il cui nome in codice era Rex, le foto di due manuali di istruzioni per la cifratrice  dietro ricompensa di 10000 marchi (circa 30000 €). I servizi segreti francesi passarono, quasi senza dargli conto, queste informazioni al Biuro Szyfrow che così fu in grado di produrre una replica della versione militare di Enigma. Ma anche questo non bastava. Infatti  gli utilizzatori di Enigma basavano la loro sicurezza sull’elevatissimo numero di combinazioni da controllare per trovare la chiave giornaliera in quanto la conoscenza del dispositivo da parte del nemico era già data per scontata. Inoltre per maggiore sicurezza (dato che la chiave giornaliera sarebbe stata usata per centinaia di messaggi e questo poteva facilitare il compito dei crittoanalisti nemici) venne adottata una nuova chiave per ogni messaggio, detta chiave di messaggio. Tale chiave veniva trasmessa usando l’assetto indicato dalla chiave giornaliera (nota in anticipo a tutti gli operatori perché contenuta nel cifrario) e ripetuta due volte di seguito e poi veniva usata per regolare il nuovo assetto della macchina per il singolo messaggio. Ad esempio se la chiave giornaliera era QCW e la chiave di messaggio PGH (entrambe indicano un orientamento degli scambiatori), l’operatore mittente avrebbe digitato PGHPGH come inizio del messaggio in chiaro. Cifrando il messaggio quelle lettere sarebbero diventate poniamo KIVBJE (da notare che la prima metà della stringa è diversa dalle seconda perché Enigma modificava automaticamente l’assetto degli scambiatori dopo ogni lettera). Dopo aver cifrato la chiave di messaggio l’operatore posizionava gli scambiatori su PGH e cifrava il messaggio vero e proprio. Il destinatario regolava la macchina su QCW, la chiave giornaliera, e decifrava le prime sei lettere del messaggio ricevuto dopodiché posizionava gli scambiatori su PGH e poteva decifrare il testo del messaggio.

 

 

 

Marian Rejewski

 

Fig.1: Marian Rejewski.

 

 

 

Ed è a questo punto che l’ingegnosità dei polacchi pose le basi per la soluzione del problema. Nonostante tradizionalmente si fosse sempre creduto che le persone più adatte per risolvere problemi di crittografia fossero i linguisti e gli umanisti, a causa della natura elettromeccanica di Enigma i responsabili del Biuro Szyfrow decisero di reclutare dei matematici. E li scelsero inoltre organizzando un corso di crittografia all’Università di Poznan, situata in una zona ex prussiana e quindi appartenuta alla Germania fino al 1918. Tra i 20 matematici selezionati il più brillante era senza dubbio il giovane Marian Rejewski (Fig.1).

Dopo un breve periodo di apprendistato Rejewski venne messo al lavoro su Enigma. Egli cercò di tradurre in termini numerici ogni aspetto del funzionamento della macchina e basò la sua strategia sul fatto che la ripetizione è nemica della sicurezza, perché crea degli schemi i quali a loro volta sono l’alimento della crittoanalisi.

La ripetizione più ovvia nei messaggi Enigma era quella della chiave di messaggio che veniva cifrata due volte di seguito all’inizio di ogni comunicazione. Questo significava che la prima e la quarta lettera erano legate strettamente alla posizione degli scambiatori così come la seconda e la quinta e la terza e la sesta. Man mano che venivano intercettati nuovi messaggi Rejewski aveva materiale per completare una tabella delle corrispondenze. Poniamo per esempio che venissero ricevuti i seguenti quattro messaggi (ne consideriamo solo le prime sei lettere):

  1. L O K R G M
  2. M V T X Z E
  3. J K T M P E
  4. D V Y P Z X

Considerando le prime e quarte lettere di ciascun esagramma crittato si poteva costruire una prima tabella:

 

Prima lettera:   A B C D E F G H  I  J  K L  M  N O P Q R S T U V W X Y Z

Quarta lettera:            P                   M     R  X                                                  

 

E con un sufficiente numero di messaggi in una stessa giornata la tabella avrebbe potuto essere più completa:

 

Prima lettera:    A B  C  D  E   F   G  H   I   J   K  L  M  N  O  P  Q  R  S   T  U  V  W  X  Y  Z

Quarta lettera:   F Q H  P   L  W  O  G   B M  V  R  X   U  Y  C  Z   I   T  N   J  E   A  S   D  K

 

In base alle tabelle costruite il matematico polacco risalì a delle concatenazioni tra le lettere mettendo in relazione le lettere della riga superiore e quelle della riga inferiore. Tenendo conto solo della prima e quarta lettera di ogni messaggio otteneva concatenazioni simili alla seguente:

 

Concatenazioni:                                                                Numero di collegamenti:

A -> F -> W -> A                                                              3

B -> Q -> Z -> K -> V -> E -> L -> R -> I -> B               9

C -> H -> G -> O -> Y -> D -> P -> C                             7

J -> M -> X -> S -> T -> N -> U -> J                               7              

 

Ovviamente questo lavoro andava ripetuto per le altre coppie di lettere dell’esagramma.

Dall’analisi di Rejewski si capiva che queste concatenazioni dipendevano in modo complesso dai collegamenti del pannello a prese multiple, dalla collocazione degli scambiatori e dal loro assetto, ma fin qui le possibilità da vagliare non apparivano ridotte e quindi il problema non cessava di esistere.

L’intuizione geniale del crittoanalista polacco fu quella di capire che gli effetti del pannello e quelli degli scambiatori sulle concatenazioni potevano essere separati. In particolare notò che il numero di collegamenti dipende esclusivamente dagli scambiatori. Infatti, tornando all’esempio precedente, supponiamo che le lettere S e G siano scambiate dal pannello a prese multiple. Se usiamo il cavetto di S e G per scambiare ad esempio T e K otteniamo:

 

Concatenazioni:                                                                Numero di collegamenti:

A -> F -> W -> A                                                              3

B -> Q -> Z -> T -> V -> E -> L -> R -> I -> B               9

C -> H -> S -> O -> Y -> D -> P -> C                              7

J -> M -> X -> G -> K -> N -> U -> J                              7 

 

Notiamo che alcune lettere sono cambiate, ma il numero di collegamenti è rimasto invariato.

Grazie a questa intuizione si riuscì a ridurre in maniera molto significativa il numero di possibili combinazioni da controllare per trovare la chiave giornaliera: infatti ora bisognava scoprire non una chiave tra dieci milioni di miliardi, ma quale assetto degli scambiatori avesse generato le concatenazioni osservate. E il numero di assetti da verificare era il prodotto delle possibili collocazioni negli alloggiamenti (6) e dei possibili orientamenti (17576), quindi 105456.

Grazie alle repliche della versione militare di Enigma di cui il Biuro Szyfrow disponeva e dopo un anno di lavoro si riuscì a compilare un repertorio contenente tutte le possibili lunghezze delle concatenazioni e i relativi assetti degli scambiatori.

Questo fu uno storico passo avanti in quanto, una volta ricevuti un certo numero di messaggi Enigma, bastava osservare le prime sei lettere, costruire la tabella delle corrispondenze e controllando il repertorio si riusciva facilmente a trovare l’assetto degli scambiatori corrispondente alla chiave giornaliera. A questo punto i messaggi non erano totalmente in chiaro a causa degli scambi di lettera effettuati dal pannello a prese multiple, ma ciò non rappresentava un problema. Infatti escludendo il pannello sulle repliche della macchina una parte del messaggio (quella che conteneva lettere non scambiate dal pannello) era quasi comprensibile e perciò non risultava difficile trovare le lettere da collegare con i cavi del pannello a prese multiple.

Successivamente Rejewski riuscì a progettare, adattando alcune delle copie di Enigma a sua disposizione, un congegno che automatizzava la ricerca della chiave giornaliera controllando rapidamente le 17576 combinazioni per trovare le posizioni dei rotori degli scambiatori. Questi congegni erano chiamati “bombe” forse a causa del ticchettio prodotto durante il funzionamento e, poiché gli scambiatori potevano essere posti in sei posizioni diverse occorrevano sei “bombe” che funzionavano in parallelo. Così come Enigma aveva rappresentato l’automazione del processo di cifratura, così le “bombe” di Rejewski rappresentavano l’automatismo della decifrazione.

Un aspetto della storia che potrebbe stupire è che i crittoanalisti del Biuro Szyfrow vennero tenuti all’oscuro del fatto che ben 38 mesi di chiavi giornaliere erano già nelle mani dei servizi segreti polacchi grazie a Rex e al suo contatto Asche (Hans-Thilo Schmidt) che non smisero di incontrarsi segretamente mentre Rejewski e i suoi continuavano a lavorare sodo per decifrare i crittogrammi tedeschi con le loro sole forze. Questo avvenne perché si temeva che un giorno un’eventuale guerra avrebbe interrotto la fornitura delle chiavi giornaliere da parte delle spie e sarebbe stato necessario agire da soli.

Alla fine del 1938 i successi polacchi nel decifrare i messaggi Enigma subirono una pesante battuta d’arresto dovuta all’introduzione di nuove misure per aumentare la sicurezza della macchina. Infatti tutti gli operatori Enigma ricevettero due nuovi scambiatori e il numero di cavetti del pannello a prese multiple passò da sei a dieci. Con i nuovi scambiatori il numero delle combinazioni passava da sei a 60 il che rendeva necessaria la costruzione di altre 54 “bombe”, cosa che risultava impossibile per il bilancio del Biuro Szyfrow. Inoltre con le aggiunte al pannello a prese multiple le lettere scambiate passavano da dodici e venti su ventisei portando il numero di possibili chiavi a 159 miliardi di miliardi!

La guerra sembrava sempre più inevitabile e il Terzo Reich sempre più minaccioso così si decise di rivelare i progressi fatti dal Biuro Szyfrow su Enigma, fino ad allora tenuti segreti, agli alleati più potenti e ricchi di Francia e Inghilterra e di tentare di proseguire altrove il lavoro impedendo ai tedeschi di scoprire i risultati ottenuti.