La crittogra a durante la seconda guerra mondiale

Transcript

La crittogra a durante la seconda guerra mondiale
Facoltà di Ingegneria - Corso di Laurea Magistrale ITCI
Corso di Elementi di Crittograa
La crittograa durante la seconda
guerra mondiale
A cura di
C. Ciaschi, L. Luzi, S. Perugia, F. Venturini
Anno Accademico 2009/2010
Indice
1 Introduzione
6
2 La seconda guerra mondiale
8
2.1
La Battaglia delle Midway . . . . . . . . . . . . . . . . . . . . . . . . . . .
9
2.2
Morte dell'Ammiraglio Yamamoto
9
. . . . . . . . . . . . . . . . . . . . . .
3 La macchina Enigma
10
3.1
La tastiera, i rotori e il visore
. . . . . . . . . . . . . . . . . . . . . . . . .
11
3.2
Il riessore . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
12
3.3
Il pannello a prese multiple
12
3.4
La cardinalità dell'insieme delle chiavi
3.5
Inizializzazione
. . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
13
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
13
3.6
Crittanalisi della macchina Enigma . . . . . . . . . . . . . . . . . . . . . .
14
3.7
La scontta di Enigma . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
15
4 Decrittazione di Enigma
4.1
Bletchley Park
4.2
I Clicks
16
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
16
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
17
5 Evoluzioni di Enigma
21
5.1
La macchina Sigaba
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
21
5.2
La macchina Lorenz
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
22
5.3
Struttura della macchina Lorenz
5.4
Forzatura di Lorenz
. . . . . . . . . . . . . . . . . . . . . . .
22
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
24
6 Decifratura di Lorentz
6.1
Evoluzione della Bomba
6.2
Il Mark 1
6.3
25
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
25
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
26
Alan Turing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
28
2
7 La macchina di cifratura giapponese
29
7.1
Introduzione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
29
7.2
Convenzioni giapponesi e tecniche di rappresentazione
. . . . . . . . . . .
29
7.3
Red Machine Cipher
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
31
7.3.1
7.4
Regole di cifratura
. . . . . . . . . . . . . . . . . . . . . . . . . . .
34
Purple Machine Cipher . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
37
7.4.1
Funzionamento . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
38
7.4.2
Switch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
42
7.4.3
Spazio Permutazioni Purple . . . . . . . . . . . . . . . . . . . . . .
43
7.4.4
Crittoanalisi
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
43
7.4.5
Conclusioni
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
46
7.4.6
MAGIC
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
47
3
Elenco delle gure
3.1
La macchina Enigma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10
3.2
La struttura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11
3.3
I rotori . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
12
3.4
Il pannello a prese multiple
. . . . . . . . . . . . . . . . . . . . . . . . . .
13
4.1
Bletchley Park
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
16
4.2
Bomba di Turing
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
18
4.3
Schema di settaggio dei tamburi per la risoluzione del loop . . . . . . . . .
19
4.4
Diagonal Board . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
20
5.1
Sigaba . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
21
5.2
Lorenz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
22
5.3
Struttura della macchina Lorenz
. . . . . . . . . . . . . . . . . . . . . . .
23
6.1
Colossus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
26
6.2
ENIAC
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
27
7.1
Tabella delle frequenze . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
30
7.2
Schema RED
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
31
7.3
Half - Rotor RED . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
32
7.4
Tabella sostituzioni . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
33
7.6
Schema consonanti . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
34
7.5
Schema vocali . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
34
7.7
Testo in chiaro
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
36
7.8
Testo cifrato . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
36
7.9
PURPLE Machine Cipher . . . . . . . . . . . . . . . . . . . . . . . . . . .
37
7.10 Schema Purple
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
38
7.11 Schema Typewriter - Switch . . . . . . . . . . . . . . . . . . . . . . . . . .
40
7.12 Esempio di cifratura
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
40
7.13 Schema riassuntivo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
41
4
7.14 Parte 1 del messaggio dell'attacco a Pearl Harbour
7.15 Purple Machine Cipher e sue connessioni
5
. . . . . . . . . . . . .
45
. . . . . . . . . . . . . . . . . .
46
1 Introduzione
1 si intende l'arte di scrivere messaggi segreti che possano essere
Con la parola crittograa
letti esclusivamente da coloro a cui sono diretti.
2
Le origini della crittograa sono molto antiche , nel tempo essa è stata utilizzata principalmente da militari e diplomatici per l'invio di messaggi adati a corrieri. A partire dal
XX secolo lo scenario in questione è mutato radicalmente grazie soprattutto al contributo
delle possibilità di trasmettere informazioni attraverso l'uso di onde elettromagnetiche e
di raggiungere attraverso Internet qualsiasi zona del mondo. Ogni persona fa quotidianamente uso di tecniche crittograche, spesso senza saperlo, ad esempio quando utilizza il
Bancomat o acquista su Internet con carta di credito.
Proprio l'invenzione delle trasmissioni radio ha permesso alla crittograa di assumere
sin dal XIX secolo un ruolo fondamentale per trasmettere messaggi di tipo militare che
venivano emessi via etere e che quindi potevano essere intercettati dal nemico. Col passare
del tempo i cifrari sono diventati sempre più sosticati e probabilmente in nessun'altra
guerra come nella seconda guerra mondiale la crittograa ha svolto un ruolo di primo
piano. Il secondo conitto mondiale fu una vera e propria guerra dei codici combattuta
a distanza fra crittogra e crittanalisti. In questa guerra comparsero diverse macchine a
rotori simili nel funzionamento, ma il caso più noto è sicuramente quello della macchina
Enigma, utilizzata dall'Asse.
Gia durante la prima guerra mondiale l'importanza della crittograa crebbe enorme-
3
mente . I francesi furono i primi a disporre di un eciente ucio cifra presso il quartier
generale dell'esercito prima ancora dello scoppio della guerra, e dall'Ottobre 1914 i crittanalisti francesi erano in grado di decifrare i messaggi tedeschi. Anche gli austrici erano
preparati e riuscivano a decifrare i messaggi russi, che però solo in parte erano criptati,
mentre le altre nazioni organizzarono veri e propri uci cifra solo dopo l'entrata in guerra.
1
2
3
Crittograa deriva dal greco, signica scrittura nascosta o segreta.
La forma più antica di crittograa è la scitala
lacedemonica ,
secondo Plutarco usata gia ai tempi di
Licurgo (IX secolo a.C.), ma più probabilmente a quelli di Lisandro (verso il 400 a.C).
Durante la prima guerra mondiale, furono usati il cifrario bido di Delastelle, la cifra campale
germanica e il cifrario Playfair.
6
Tra i più impreparati vi erano i russi che all'inizio della guerra nemmeno cifravano
i messaggi come accadde nella battaglia di Tannenberg nell'Agosto 1914 quando pure
gli ordini operativi venivano trasmessi in chiaro permettendo ai tedeschi di intercettare
tutto.
In Inghilterra Sir Alfred Ewing organizzò la cosiddetta room 40 dal numero della
sua stanza negli uci dell'Ammiragliato, riuscendo a decriptare i messaggi della marina
tedesca.
Il più importante fu sicuramente il telegramma Zimmermann con il quale i
tedeschi orivano ai messicano il loro appoggio contro gli Stati Uniti. La lettura di tale
messaggio decriptato al Congresso degli Stati Uniti portò gli USA all'entrata in guerra
nel 1917.
La prima guerra mondiale dunque mostrò a tutti gli Stati la necessità della crittograa,
che fu utilizzata in modo massiccio nella seconda guerra mondiale.
Gilbert Vernam inventò una macchina cifrante in cui una chiave impostata su nastro
perforato, veniva combinata carattere per carattere con il testo in chiaro. Fu l'input per
l'ideazione dei sistemi one-time-pad in cui la chiave è lunga quanto il testo, che Claude
?
Shannon dimostrò essere inviolabili nel 1949 ([ ]).
7
2 La seconda guerra mondiale
Nella vittoria degli alleati nella seconda guerra mondiale, la crittograa ha giocato un
ruolo di primaria importanza e la loro superiorità in questo campo è stata determinante.
La Germania considerava anattaccabile la sua macchina Enigma, tuttavia già nel 1932
l'ucio cifra polacco era riuscito a forzarla cosi come gli inglesi che più volte sono riusciti
a decifrare i messaggi tedeschi generati da essa durante la guerra, e poi dalla macchina
Lorenz a partire dal 1941.
In più occasioni la superiorità in campo crittograco si è rivelata essere un fattore
discriminante per le vittorie alleate come ad esempio nella Battaglia di Capo Matapan,
in cui gli inglesi erano riusciti a decifrare i messaggi della marina tedesca che fornivano
l'esatta posizione della otta italiana che fu quindi distrutta nel Marzo 1941, e nello
Sbarco in Normandia, in cui gli alleati inviarono falsi messaggi sul loro sbarco a Calais
facendo si che i tedeschi mandarono in quella zona le loro migliori truppe in modo tale da
avere una bassa resistenza in Normandia; gli inglese seppero della riuscita dell'inganno
decifrando i messaggi tedeschi generati dalla macchina Lorenz.
Gia a partire dal 1940 gli Americani disponevano della macchina Magic con la quale
decifravano i messaggi giapponesi cifrati con la macchina Purple. Alcuni storici americani
1 sostengono che gli Stati Uniti sapevano in anticipo dell'attacco di Perl Harbour,
ma non lo impedirono per scuotere la popolazione e convincerla all'ingresso in guerra.
Altri storici aermano invece che l'America sapeva di un attacco giapponese ma non dove
sarebbe avvenuto. In ogni caso alla ne della guerra il generale Marshall ammise che in
molte occasioni dovettero ngere di non conoscere i messaggi cifrati nemici in modo tale
che questi ultimi continuavano a non sapere che i loro messaggi venivano decifrati.
Fra tutti, vi sono due episodi conclamati in cui gli americani conoscevano le mosse
nemiche: la Battaglia delle Midway e la morte dell'Ammiraglio Yamamoto.
1
Tra gli altri, lo scrittore americano Gore Vidal.
8
2.1 La Battaglia delle Midway
Nel Maggio 1942, il comandante della otta giapponese,l'Ammiraglio Yamamoto, aveva
preparato un piano per attaccare le isole Midway a est delle Haway, ma grazie a Magic
gli americani seppero i dettagli dei piani nemici in anticipo permettendo all'Ammiraglio
Nimitz, comandante della otta USA, di preparare la battaglia. Quest'ultimo inoltre fece
trasmettere falsi piani americani utilizzando un cifrario che sapeva essere stato forzato
dai giapponesi.
La vittoria americana alle Midway è dovuta in gran parte alla loro superiorità nella
crittograa.
2.2 Morte dell'Ammiraglio Yamamoto
Il 14 Aprile 1943 fu decifrato un messaggio che informava che l'Ammiraglio Yamamoto
il 18 avrebbe visitato l'isola di Bougainville specicando le ore di partenza e di arrivo e
i tipi di aerei usati.
L'Ammiraglio Nimitz organizzò una squadra di aerei P-38 che intercettò e abbattè
l'aereo di Yamamoto determinando per i giapponesi la perdita del loro uomo più prezioso.
9
3 La macchina Enigma
La più conosciuta macchina cifrante a rotori è sicuramente l' Enigma che fu inventata nel
1918
da
Arthur
Scherbius,
uno
studioso
tedesco
di
ingegneria
elettrica.
Enigma era contenuta in una scatola di dimensioni
34×28×15 e pesava 12Kg .
L'in-
ventore tedesco per ogni dispositivo crittograco richiese il prezzo di
(circa
30000
20000 sterline
odierni), che scendeva a
se ne venivano richiesti
Nonostante
le
3000
1000.
conseguenze
della
de-
cifrazione del telegramma Zimmerman, i
tedeschi solamente nel 1925 ordinarono la
produzione militare su larga scala di Enigma e nei decenni successivi le armate di
Hitler poterono disporre di oltre
Figura 3.1: La macchina Enigma
30000
esemplari di essa.
La macchina Enigma applica ripetutamente sostituzioni e permutazioni di tutte le
lettere del messagio. Le sostituzioni sono operate da connessioni elettriche tra coppie di
contatti che corrispendono a caratteri. La macchina ha al suo interno un certo numero di
rotori il cui funzionamento è il seguente: il primo rotore scatta ogni volta che una lettera
è stata cifrata, quando ha compiuto un giro completo scatta anche il secondo rotore e
cosi via per gli altri rotori.
L'Enigma è una macchina simmetrica, nel senso che se la lettera A è cifrata con la I in
una certa posizione del testo, allora nella stessa posizione la I sarà cifrata con la A, questo
signica che può essere utiluzzata sia in fase di cifratura che in quella di decifratura, una
comodità pagata in termini di debolezza crittograca.
Quando viene premuto un pulsante, il segnale elettrico attraversa i rotori no a giungere
ad un ultimo rotore chiamato riettore che lo fa tornare indietro no ad illuminare una
lettera che è il carattere cifrato, permettendo all'operatore di copiare a mano il testo
cifrato.
10
Figura 3.2: La struttura
I tedeschi erano convinti che l'Enigma fosse inattaccabile, tuttavia già nei primi anni
'30 un gruppo di matematici polacchi era riuscito a decifrare i i crittogrammi. Anche il
gruppo di crittoanalisti inglese, cui partecipava Alan Turing, erano in grado di forzare
l'Enigma sin dall'inizio della guerra sfruttando le sue debolezze.
3.1 La tastiera, i rotori e il visore
La macchina Enigma consiste, semplicando, di tre componenti principali collegati elettricamente: una tastiera per dare in input le lettere del testo in chiaro, un rotore che cifra
ogni lettera trasformandola nel corrispondente carattere del crittogramma, e un visore
con alcune lampadine che accendendosi indicano la lettera da inserire nel teso cifrato. Il
rotore, o scambiatore, è il componente più importante e consiste in uno spesso disco di
gomma attraversato da una tta rete di li provenienti dalla tastiera. Questi li entrano
nello scambiatore e dopo un percorso formato da vari gomiti escono dalla parte opposta.
Lo schema interno del rotore permette al congegno di operare una semplice cifratura a
sostituzione monoalfabetica.
Quando l'operatore preme il tasto corrispondente ad una lettera da cifrare, l'impulso
elettrico che passa nei li elettrici attraverso il rotore e va ad illuminare il visore in modo
da accendere la lettera cifrata corrispondente. Il rotore quindi crea una corrispondenza tra le lettere in chiaro e quelle da cifrare.
Dopo aver cifrato ogni lettera, il disco
1
scambiatore ruota di
26 di giro, quindi ogni lettera viene sostituita diversamente ad ogni
passo.
In questo modo il rotore denisce
26 diversi alfabeti cifranti permettendo ad Enigma di
eettuare una sostituzione polialfabetica. Dopo
11
26
pressioni sulla tastiera il rotore torna
Figura 3.3: I rotori
nella posizione iniziale, tuttavia introducendo un altro scambiatore, mentre il primo ruota
il secondo rimane fermo n quando il primo ha completato un giro.
Il secondo rotore
quindi avanza di una posizione grazie ad una dentatura. In questo modo si ritorna al
punto di partenza dopo
26
26 × 26 = 676
Aggiungendo un terzo rotore il numero di sostituzione diventa
lettere.
giri del primo scambiatore, cioè dopo la cifratura di
26 × 26 × 26 = 17576.
Nel corso della storia il numero di rotori è stato aumentato.
3.2 Il riessore
La macchina Enigma ha un altro componente chiamato riessore, che consiste in un disco
di gomma con circuiti elettrici interni simili a quelli del rotore. A dierenza del rotore,
il riessore non ruota e i li entrano ed escono dallo stesso lato.
In questo modo quando si da in input una lettera il segnale elettrico passa attraverso
i tre rotori, arriva al riessore, torna indietro e passa di nuovo nei rotori ma percorrendo
un percorso diverso.
3.3 Il pannello a prese multiple
Per aumentare il numero di chiavi, sono stati usati rotori removibili e sostituibili, questo
signica che tre rotori potevano essere permutati in sei modi diversi. Inoltre tra la tastiera
e il primo rotore fu inserito il pannello a prese multiple, un componente che permetteva
di scambiare due lettere prima della loro immissione nel rotore attraverso dei cavi con
spinotto, in modo tale da far percorrere all'impulso di una lettera il percorso di un'altra.
Inizialmente vi erano a disposizione sei cavi che permettevano di scambiare sei coppie di
lettere contemporaneamente.
12
Figura 3.4: Il pannello a prese multiple
3.4 La cardinalità dell'insieme delle chiavi
I tre rotori potevano combinarsi in
26 × 26 × 26 = 17576
posizioni diverse e potevano
essere messi in sei posizioni reciproche diverse.
Per quanto riguarda il pannello a prese multiple, il numero delle combinazioni di
12
lettere su
26
26!
sono
6!(26−12)!26
= 100.391.791.500.
2×6 =
Il numero totale di chiavi quindi è
17576 × 6 × 100.391.791.500 = 1, 05869e16.
Il mittente e il destinatario dovevano accordarsi sui collegamenti del pannello, sull'ordine dei rotori e sul loro orientamento
3.5 Inizializzazione
Enigma veniva quotidianamente settata con impostazioni giornaliere.
Ogni mese gli
operatori ricevevano un cifrario con scritte le chiavi giornaliere.
La chiave quindi conteneva informazioni sull'assetto del pannello a prese multiple,
sull'ordine dei rotori e sul loro orientamento rispetto all'asse di rotazione.
I crittanalisti nemici pertanto potevano sfruttare il fatto per la durata di un'intera
giornata veniva usata sempre la stessa chiave per cifrare una gran quantità di messaggi.
Per rendere il sistema di cifratura più sicuro, la chiave giornaliera veniva usata dal
mittente per trasmettere al destinatario una seconda chiave, detta chiave di messaggio,
che veniva usata per cifrare il testo in chiaro. La chiave di messaggio dieriva dalla chiave
giornaliera per l'orientamento dei rotori. Per evitare errori, la chiave di messaggio veniva
trasmessa due volte consecutive. In questo modo la chiave giornaliera veniva usata per
cifrare meno informazioni.
13
3.6 Crittanalisi della macchina Enigma
Nella versione originale dell'Enigma ci sono un rotore di ingresso con 26 contatti elettrici,
tre rotori forniti di 26 contatti elettrici su ogni faccia che in modo segreto connettono ogni
contatto sulla faccia destra con un contatto sulla faccia sinistra, e un riettore con 26
contatti elettrici solo su una faccia, accoppiati a due a due secondo uno schema segreto.
La macchina si comporta come un cifrario a sostituzione polialfabetica e dal punto di
vista matematico tutto questo equivale a un sistema di permutazioni; ogni rotore eettua
una permutazione delle 26 lettere, e così pure il riettore e il dispositivo di ingresso.
Nel settembre 1932 l'ucio cifra polacco chiamò tre matematici, Marian Rejewski,
Henryk Zygalski e Jerzy Rozicki, con il compito di cercare di forzare la macchina Enigma
usata dai tedeschi e da questi ultimi considerata inattaccabile. L'Enigma fu forzata nel
giro di tre mesi, un po' per merito dei tre matematici, un po' per l'incredibile leggerezza
delle procedure di cifra tedesche.
La disposizione e la posizione iniziale dei rotori, cioè la chiave, cambiava ogni giorno
in base a regole segrete basate sulla data corrente. Ogni messaggio conteneva una ulteriore chiave segreta composta di tre caratteri; questa chiave veniva trasmessa all'inizio
del messaggio stesso e per maggiore sicurezza veniva trasmessa due volte di seguito.
Questa idea di trasmettere due volte di seguito i tre caratteri segreti si rivelò essere un
grosso appiglio al crittanalista. Inoltre un altro bug era che nessuna lettera poteva essere
sostituita da se stessa. Dal punto di vista matematico l'Enigma si riduce a un prodotto
di permutazioni.
Poichè il primo e il quarto carattere di ogni messaggio sono uguali,
Rejewski potè ricostruire la permutazione tra il primo e il quarto carattere del messaggio
nel giro di pochi giorni, avendo a disposizione ogni giorno molte decine di messaggi cifrati
con l'Enigma. Se per esempio abbiamo tre messaggi che iniziano con queste sei lettere:
1. SDF GHJ
2. GHZ UJP
3. UKJ QDO
siamo in grado di ricostruire un frammento della permutazione AD (quella tra la prima
e la quarta lettera); infatti in 1. S diventa G, in 2. G diventa U, e in 3 U diventa Q.
Quindi si deduce che la sequenza SGUQ è parte della permutazione AD. Analogamente
la permutazione BE deve contenere la sequenza KDHJ, e insomma con un centinaio di
messaggi si possono ricostruire completamente le tre permutazioni AD BE CF. Tuttavia
per risolvere il problema è necessario trovare la soluzione di un sistema di 5 incognite,
ancora troppo complesso per essere risolto in modo univoco. Approssimando, i due rotori
14
che girano più raramente insieme al riettore, possono essere considerati come un blocco
unico riducendo a 3 il numero delle incognite.
Nel dicembre 1932 l'ucio cifra francese venne in possesso della struttura del disco
iniziale e la comunicò ai colleghi polacchi. Con ormai solo due incognite Rejewski fu in
grado di ricostruire completamente la permutazione del rotore iniziale e grazie al fatto che
i tedeschi cambiavano periodicamente la disposizione dei rotori, riuscì a ricostruire una
dopo l'altra tutte e tre le permutazioni dei tre rotori e quindi l'intera struttura interna
della macchina Enigma.
Una volta ricostruita questa struttura, usando la teoria delle permutazioni Rejewski
progettò un dispositivo elettro-meccanico, il ciclometro, che permetteva di ricostruire
velocemente la posizione iniziale dei rotori; in seguito furono usati anche fogli perforati
e le bombe crittologiche. Nel 1937 fu stimata al 75% la percentuale di messaggi Enigma
forzati dall'ucio cifra polacco. Tra il 1938 e il 1939 i tedeschi cambiarono le regole di
cifratura e aumentarono il numero di rotori da 3 a 5 di cui ne venivano usati 3 diversi ogni
giorno: questo moltiplicava per sessanta le combinazioni possibili e la bomba polacca non
poteva arontare un tale incremento di complessità così che il metodo di Rejewski perse
buona parte della sua ecacia.
3.7 La scontta di Enigma
Nel Dicembre 1943 il matematico Alan Turing, padre dell'informatica teorica, creò un
prototipo sulla base del macchinario Bomba, chiamato Colossus. Dal Febbraio del 1944
questo calcolatore sarà in grado di decifrare sistematicamente tutti i messaggi dell'esercito
tedesco. Da questo momento il vantaggio tattico della Germania verrà denitivamente
annullato. Per questa ed altre importanti ragioni si prola la scontta del patto tripartito
tra Germania, Italia e Giappone.
15
4 Decrittazione di Enigma
4.1 Bletchley Park
Bletchley Park, anche nota come Stazione X, è una proprietà situata a Bletchley, un paese
a circa 75 km a Nord-Ovest di Londra. Durante la Seconda guerra mondiale, Bletchley
Park fu il sito dell'unità principale di Crittoanalisi del Regno Unito.
I migliori matematici, sici, linguisti, studiosi di statistica, campioni di scacchi provenienti da ogni parte del mondo furono assoldati dal governo inglese per un totale di 3000
persone con lo scopo di decrittare le comunicazioni dell'asse. Il lavoro di queste persone
era coperto da segreto di stato ed è stato importantissimo per la riuscita della guerra.
Dopo trent'anni dalla ne della guerra questi studiosi hanno avuto il permesso di poter
raccontare al mondo cosa è successo a Bletchley Park. Prima dello scoppio della guerra
i decrittatori polacchi grazie al lavoro di Marian Adam Rejewski aveva messo a punto
una macchina in grado di poter decrittare i messaggi di Enigma, chiamandola BOMBA.
Tuttavia questa era molto lenta e quindi assolutamente obsoleta per i tempi frenetici del
susseguirsi di situazioni allo scoppio della Grande Guerra. Fu a quel punto che il genio
matematico Alan Turing studiò un sistema per decrittare messaggi delle forze nemiche
cifrate con una macchina Enigma leggermente complicata rispetto alla precedente , vista
l'aggiunta di 2 scambiatori, e basato sulle uniche informazioni in possesso dell'Inghilterra,
Figura 4.1: Bletchley Park
16
ovvero un "plain text conosciuto" che in seguito verrà ribattezzato con il nome di "crib".
Turing pensò che se l'analisi dei testi cifrati poteva portare a una parziale decrittazione
dello Stesso e che l'utilizzo di calcolatori, i quali potevano testare diverse congurazioni
di rotori in poco tempo, poteva portare a buoni risultati. Inoltre, Turing, attraverso l'uso
delle proprie abilità matematiche, riuscì a dimostrare che una trasformazione da un testo
cifrato al testo in chiaro precludeva un vasto numero di congurazioni di rotori.
4.2 I Clicks
La GC&CS (Governement Codes & Ciphers School), negli anni tra il '38 e il '39, riuscì
ad intercettare un gran numero di testi cifrati con la relativa copia in chiaro, grazie
anche alla collaborazione di un impiegato polacco. Tra le caratteristiche che Turing scovò
occasionalmente vi era quella che la stessa coppia chiaro/cifrato di caratteri occorreva più
volte in dierenti punti del medesimo messaggio. Questa caratteristica venne chiamata
"clicks". Infatti:
. . . . . J Y C Q R P W Y D E M C J M R S R
. . . . . S P R U C H N U M M E
. . . . . ..
.. |
.. | .. .. .. ..
|
R X E
|
I
N
S
.. .. | .. .. ..
Questo avveniva perché Enigma era reversibile, ovvero la coppia chiaro/cifrato di R,C
era la stessa C,R così come M,E ed E,M ma altrettanto certo era che non veniva mai
cifrata una lettera con la medesima lettera del crib. L'occorrenza di una coppia è determinata dall'ordine del rotore e dalla posizione iniziale di esso, quindi Turing capì che
l'ordine dei rotori e la loro posizione di partenza potevano essere trovati provando tutte
le congurazioni che soddisfacevano la coppia esaminata. Ovviamente provare tutte le
combinazioni possibili su una sola macchina Enigma una alla volta avrebbe richiesto un
tempo impossibile. Di conseguenza, il passo seguente, fu quello di considerare come il
test poteva essere eseguito simultaneamente per una particolare congurazione iniziale
della macchina. Il test di ogni coppia di lettere richiedeva un metodo per determinare
rapidamente quale congurazione fosse esatta o errata. Questo faceva capo al concetto
di collegare insieme più macchine Enigma per velocizzare le operazioni di decrittazione.
Il risultato fu quello di usare una macchina Enigma "aperta", con connessioni in input/output separate, permettendo così, di avere più macchine Enigma in serie.
Nella
Letchworth Enigma (chiamata così perché la fabbrica British Tabulating Machine, che
la costruì, si trovava a Letchworth) la cosa intelligente fu quella di includere i cablaggi
anteriore e posteriore dei rotori di Enigma in un unico tamburo. Le connessioni tra un
17
Figura 4.2: Bomba di Turing
tamburo e il successivo avvenivano tramite quattro cerchi composti da 26 contatti ssi
per ognuno. I tre set di contatti erano cablati insieme, permanentemente, ai connettori
di input/output. I tre tamburi, rappresentanti i tre rotori presenti sull'Enigma originale,
potevano essere posizionati sull'albero, formando una macchina Enigma in congurazione
aperta, con i connettori di input/output separati dagli altri.
Ritornando al discorso dei clicks, Turing decise di arontarlo nel seguente modo:
a b c d
J Y
C Q
S P R U
..
..
| ..
e f g h i j k l
m n o
R P W Y D E M C J
C H N
..
q
M R S R
U M M E R X E
| .. .. .. .. | | ..
p
I N S
| .. ..
..
pose un oset, rappresentato dall'alfabeto minuscolo, per identicare ogni coppia. In
questo modo C,R erano rappresentate dall'oset c ed e mentre M,E da j, k, n.
Alla
connessione rappresentata dall'oset, in questo caso la "C", dell'Enigma a congurazione
aperta veniva applicata una tensione, in questo modo, le 26 lampadine attaccate ad essa
indicavano se la possibile cifratura era esatta.
Ovviamente in questo caso si sarebbe
dovuta accendere la lampadina relativa alla lettera R. Con una singola macchina Enigma
questa operazione avrebbe richiesto un incredibile numero di settaggi.
Le macchine
Enigma in congurazione aperta erano tutte settate con lo stesso ordine di tamburi,
18
Figura 4.3: Schema di settaggio dei tamburi per la risoluzione del loop
tranne l'ultimo che rappresentava l'oset della lettera del crib da testare. In questo modo,
attraverso un set di relè era possibile fornire un voltaggio in ingresso all'ultimo tamburo di
tutte le macchine e vericare se il settaggio dei tamburi soddisfaceva il crib. Se il risultato
era negativo si procedeva a cambiare l'ordine dei tamburi attraverso un motore elettrico.
La prima la era collegata con la seconda che eseguiva la permutazione del secondo
rotore; la seconda la era collegata con la terza che eseguiva la permutazione del terzo
rotore quindi lo scambio del riettore e nuovamente la permutazione del terzo rotore. Dal
terzo rotore il segnale elettrico tornava indietro e subiva nuovamente le permutazioni del
secondo e del primo rotore, inne usciva dal primo tamburo. Un estensione del concetto
delle coppie di lettere è il loop di lettere.
A
J Y
S P
.
b c d e f g h
C Q R
i j k
l m n o p q
P R Y D E M C
R U C H N U M M E
.
. .
.
. . .
. |
|
J
R X
.
.
M R S R
E
|
I N
.
|
S
|
Il primo problema fu quello di trovare le posizioni principali S1, S2 e S3.
Turing
capì che c'era un'altra via per scoprire le interconnessioni tra le macchine Enigma in
congurazione aperta.
Come da gura i tamburi numero 1 sono settati in corrispondenza degli oset S1, S2
e S3. I tamburi numero 2 e 3 corrispondono alla congurazione standard dell'Enigma.
A questo punto le posizioni dei rotori corrisponderanno alla posizione originale presente
nella macchina Enigma al momento della crittazione. In questo modo il voltaggio di S1
19
Figura 4.4: Diagonal Board
sarà lo stesso in ingresso di S2 mentre il voltaggio di S2 sarà l'ingresso di S3 e si ottiene la
congurazione originale. Ora il trucco sta nel connettere i terminali di uscita dall'ultima
macchina nell'input della prima. Quest'ultima operazione portava ad avere un loop tra
le macchine, isolando, però, le connessioni S1, S2 e S3. In seguito, Turing pensò che se
S1 era sconosciuto e se gli si applicava un voltaggio casuale, questo avrebbe raggiunto
tutte le macchine senza inuenzare gli ingressi S1, S2 e S3 perché essi non erano connessi
a nessun terminale. Il test nale consisteva nello spostare i rotori in modo da vedere se
una o 25 lampadine si accendevano. Nella seconda ipotesi la posizione di settaggio era
errata. Questo test avveniva in pochissimo tempo, l'unico accorgimento era quello di non
surriscaldare i motori che muovevano i tamburi.
L'altra idea che ha permesso di perfezionare la Bomba di Turing venne da Gordon
Welchman. Egli pensò di costruire dei registri, che opportunamente modicati potessero
riassumere le connessioni tra le macchine Enigma in congurazione aperta. Attraverso la
"Diagonal Board" (così fu chiamata) era facile risalire alla corrispondenza tra le lettere,
in particolare risultava quasi immediata la soluzione nei casi di loop di cifre.
Con questo mastodontico apparato dal dicembre 1932 venne decrittato un buon numero
di messaggi cifrati tedeschi; nel 1937 fu stimata al 75% la percentuale di messaggi Enigma
decifrati dall'Ucio Cifra polacco.
20
5 Evoluzioni di Enigma
5.1 La macchina Sigaba
Il meccanismo di Enigma, nonostante forzato, venne preso in considerazione per progettare nuove macchine cifranti con l'accortezza di superarne il punto debole ovvero il
meccanismo di rotazione dei rotori che era di fatto quello di un semplice contatore; solo
l'ultimo rotore ruotava di un passo alla volta, mentre il penultimo rotore ruotava una
volta ogni 26 e il terzultimo una ogni 676, come a dire che questi rotori contribuivano
poco alla sicurezza della macchina.
Per questo motivo aumentare il numero di rotori
come fecero i tedeschi non aumentava di molto la sicurezza della macchina.
Nel 1935
Friedmann insieme al suo collaboratore Frank B. Rowlett progettò una nuova macchina
cifrante elettromeccanica, la ECM Mark II, nota con il nome di Sigaba. La macchina fu
adottata dalla Marina americana e dal 1940 anche dall'esercito con la sigla M-134. Come
l'Enigma, la Sigaba si basa su rotori con 26 contatti su ogni faccia e un cablaggio interno
segreto che provvede a permutare le lettere; ma invece dei tre o cinque rotori dell'Enigma,
la Sigaba ne ha 15; in pratica i rotori destinati alla cifratura sono solo 5, mentre gli altri
10 servono a generare una sequenza pseudo-casuale che stabilisce quali rotori ruotano a
ogni passo; in questo modo la principale debolezza dell'Enigma è superata. In un certo
senso quindi la Sigaba equivale a due Enigma in una.
Figura 5.1: Sigaba
21
5.2 La macchina Lorenz
Ancor prima che la macchina Enigma fosse forzata, i tedeschi stessi vedevano la necessità
di una macchina cifrante dierente. Enigma forniva solo una cifratura visiva, lettera per
lettera, del messaggio da trasferire; inoltre vi era la possibilità che tali cifratrici cadessero
in mano nemica in quanto erano usate dalle truppe direttamente sul campo di battaglia.
Si aspirava ad un sistema il cui vantaggio era che il mittente inseriva il testo in chiaro
ed il destinatario lo riceveva anche lui già in chiaro; questo era possibile utilizzando un
apparato telescrivente di cui Enigma era sprovvisto. Le dimensioni di un tale sistema,
51cm
Ö
46cm
Ö
46cm (cui si doveva però aggiungere la telescrivente), lo rendevano
troppo grosso e pesante per poter essere usato direttamente sul campo, e infatti si penso
di farne un uso dierente, solo per il traco radio destinato ai livelli gerarchici più elevati,
in particolare per crittare le comunicazioni tra Hitler e i suoi capi di stato maggiore. Tale
sistema prese il nome di Lorenz e le località dove erano ubicati i suoi utilizzatori erano
lontane dai campi di battaglia e di conseguenza era anche più dicile che le cifratrici
Lorenz potesserero cadere in mano nemica.
Lorenz rappresenta un sistema simile a
Enigma nei principi di funzionamento ma molto piu complicato, basti pensare che se per
forzare Enigma erano sucienti dispositivi elettromeccanici, per forzare Lorenz sarebbero
serviti dispositivi elettronici, quindi molto piu veloci.
Figura 5.2: Lorenz
5.3 Struttura della macchina Lorenz
Lorenz si basava sulle idee del cifrario di Vernam, un cifrario di tipo one time pad e
denito come "teoricamente sicuro"; secondo le idee base del Vernam ogni carattere del
messaggio era scomposto nei suoi 5 bit, che venivano sommati in modo binario (con
un connettivo XOR) con i bit del corrispondente caratterre della chiave (detta anche
22
sequenza oscurante); secondo Vernam la chiave dovrebbe essere indenitamente lunga e
del tutto casuale; a queste condizioni il Vernam è inattaccabile, ma vista la dicolta di
comunicare in modo sicuro la chiave al corrispondente, i progettisti di Lorenz pensarono
di sostituire la chiave casuale con una chiave pseudo-casuale generata da un dispositivo
meccanico (dodici rotori) secondo una procedura ovviamente segreta. In questo modo
la chiave diventa l'algoritmo generatore e il cifrario non è piu inattaccabile. L'algoritmo
di cifratura è simile a quello di Cesare ma invece della trasposizione delle lettere si
usava sommarle tramite la rappresentazione delle stesse con il codice Baudot, un codice
binario inventato per telescriventi basato sulla rappresentazione a 5 cifre delle lettere
dell'alfabeto. Si riporta di seguito tale rappresentazione binaria:
A 11.000 B 10.011 C 01.110 D 10.010 E 10.000 F 10.110 G 01.011 H 00.101 I 01.100 J
11.010 K 11.110 L 01.001
M 00.111 N 00.110 O 00.011 P 01.101 Q 11.101 R 01.010 S 10.100 T 00.001 U 11100 V
01.111 W 11.001 X 10.111
Y 10.101 Z 10001
E' possibile analizzare il principio di funzionamento di Lorenz in base al seguente
schema che rappresenta la struttura della macchina in cui vengono riportate le suddivisioni di periodicità per ogni singolo rotore.
Figura 5.3: Struttura della macchina Lorenz
In totale si hanno 12 rotori di cui soltanto 5 erano destinati alla scrittura del messaggio
cifrato generando la cifratura di Vernam in codice di 5 bit; altri 5 rotori generano bit in
sequenza pseudo-casuale che, prima della trasmissione, venivano posti in XOR con quelli
del testo cifrato; altri 2 rotori provvedevano all'avanzamento casuale, in particolare il
23
cilindro con periodicità 61 muoveva il primo gruppo di rotori e conduceva il secondo
cilindro con periodicità 37, il quale a sua volta guidava il secondo gruppo.
Il gruppo
di rotori K agisce in base all'input, ognuno di essi fa riferimento ad uno dei 5 bit del
carattere d'ingresso. Il gruppo S a dierenza del K non si muove ad ogni ingresso ma
dipende dai rotori del gruppo M. I 12 rotori sono provvisti di perni disposti in posizione
casuale, che chiudevano o aprivano un circuito elettrico a seconda della loro posizione.
Nel caso in cui K ed S hanno i perni in posizione ON(chiudono il circuito elettrico) lo
stato del corrispondente bit del carattere in input viene alterato, viceversa se la posizione
è OFF. Ciò può essere meglio inteso nel seguente esempio:
input 11000
gruppo K - perni o/on/o/on/o 10010
applicare lo XOR 01010
gruppo S - perni on/o/o/o/on 11011
applicare lo XOR 10001
quindi, in termini di codice Baudot, se il carattere digitato nel Lorenz è A(11000) viene
trasmesso Z(10001).
5.4 Forzatura di Lorenz
I crittanalisti inglesi del progetto Ultra a Bletchley Park dopo aver forzato la macchina
Enigma riuscirono anche a forzare la macchina Lorenz usata dagli alti comandi tedeschi,
e quindi di importanza ancor maggiore dell'Enigma.
Gli inglesi avevano intercettato
entrambi i messaggi e notato che i primi caratteri erano uguali. Una volta ricostruita una
sequenza oscurante era necessario comprendere la regola pseudo-casuale che la generava
per poter rendere sistematica la decrittazione. Ma decrittare a mano un cifrato Lorenz
richiedeva un lavoro lungo. Fu all'inizio del 1943 che si ebbe l'idea di simulare le parti
meccaniche con circuiti elettronici e iniziarono il progetto del Colossus.
Con questo
progetto per la prima volta non si pensava solo alla velocita del dispositivo, ma anche
alla sua programmabilità.
24
6 Decifratura di Lorentz
6.1 Evoluzione della Bomba
Tra il 1938 e il 1939 i tedeschi cambiarono le regole di cifratura, aumentando il numero
dei rotori della macchina Enigma da 3 a 5, così che il metodo dei polacchi perse gran
parte della sua ecacia. In quel periodo la decrittazione di messaggi Enigma da parte
dell'ucio cifra polacco divenne sporadica. In eetti, nel 1940 furono decrittati con l'aiuto
della "Bomba" solo 178 messaggi.
La "Bomba" conobbe una nuova fase di sviluppo
ancora con il contributo del geniale Turing quando si arrivò nel 1944 alla costruzione del
calcolatore Colossus.
I crittanalisti inglesi del progetto Ultra a Bletchley Park dopo aver forzato la macchina
Enigma riuscirono anche a forzare la macchina Lorenz usata dagli alti comandi tedeschi, e
quindi di importanza ancor maggiore dell'Enigma. Il primo successo si ebbe grazie a una
grossa ingenuità di un cifratore tedesco il 30 ago 1941; questi aveva appena trasmesso
un messaggio in cifra da Vienna ad Atene, quando ricevette la richiesta di ripetere il
messaggio perché non era stato ricevuto bene; il cifratore, forse per pigrizia o forse
per impazienza, invece di ritrasmettere lo stesso messaggio identico, lo ritrasmise con
alcune abbreviazioni (primo grave errore), dopo aver riposizionato i rotori della macchina
alla stessa posizione del messaggio precedente (ancor più grave errore).
Così il primo
messaggio iniziava con la parola Spruchnummer, il secondo con Spruchnr (Spruchnummer
vuol dire numero del messaggio). Una vera manna per gli inglesi che avevano intercettato
entrambi i messaggi e notato che i primi caratteri erano uguali; fu il critto analista John
Tiltman che con un paziente lavoro riuscì alla ne a ricostruire la sequenza oscurante
della Lorenz e quindi il messaggio chiaro. Una volta ricostruita una sequenza oscurante
era necessario comprendere la regola pseudo-casuale che la generava per poter rendere
sistematica la decrittazione dei cifrati Lorenz; fu il chimico Bill Totte a completare questo
lavoro arrivando a ricostruire completamente la struttura interna della Lorenz, che gli
inglesi chiamavano in codice Tunny. Ma decrittare a mano un cifrato Lorenz richiedeva un
lavoro lungo 4-6 settimane, un tempo eccessivo in tempo di guerra. I messaggi decrittati
erano spesso superati dagli eventi e di fatto inutili. Per velocizzare le cose fu dapprima
25
Figura 6.1: Colossus
costruita una macchina elettromeccanica la Heath Robinson che però aveva problemi a
mantenere la velocità di elaborazione necessaria.
6.2 Il Mark 1
Fu all'inizio del 1943 che il matematico Max Newman sostenuta dalla competenza di
un team di ingegneri presso l'Ucio postale di ricerca Stazione diretto dal Dr.Tommy
Flowers ebbero l'idea di simulare le parti meccaniche con circuiti elettronici e iniziarono
il progetto di Colossus, un vero e proprio calcolatore elettronico, capace di forzare la
Lorenz in poche ore. Lavorando con K1 e K2 e un messaggio in codice di 3000 caratteri,
erano necessarie 41
Ö
31
Ö
3.000 operazioni. Il primo Colossus, il Mark 1, fu assemblato
alla ne del 1943 e pienamente operativo all'inizio del1944. Il Colossus leggeva il testo
cifrato secondo il codice Baudot, con un lettore ottico di nastri perforati alla rimarchevole
velocità di 5000 caratteri al secondo. Il testo così letto veniva confrontato con la struttura
dei rotori della Lorenz alla ricerca di alcuni schemi caratteristici di questa macchina. Il
testo cifrato doveva essere letto anche molte volte no al momento in cui veniva forzato.
Da quando il primo Colossus divenne operativo (1944) acquistò grande importanza perché
si stava preparando lo sbarco alleato in Francia. I messaggi decrittati mostrarono infatti
agli alleati che Hitler aveva preso per buone le false notizie fatte trapelare su uno sbarco
alleato a Calais, aveva concentrato le truppe in Belgio e che quindi lo sbarco in Normandia
non avrebbe incontrato grossi ostacoli. Dopo il primo furono costruiti altri nove Colossi;
e nell'ultimo anno di guerra, grazie anche al fatto che gli alleati avevano sistematicamente
26
Figura 6.2: ENIAC
bombardato e danneggiato le linee telefoniche tedesche costringendo i tedeschi a usare
sempre di più le comunicazioni radio, quasi tutti i messaggi cifrati tedeschi venivano
decrittati fornendo un vantaggio formidabile ai comandanti alleati. Alla ne della guerra
ben 63 milioni di caratteri cifrati tedeschi erano stati decrittati dai Colossi!
I Colossi
furono distrutti alla ne della guerra, e solo nel 1996 ne fu ricostruito uno nel museo di
Bletchley Park. In denitiva il Colossus deve essere considerato il primo vero calcolatore
elettronico della storia, precedendo di più di un anno l'americano ENIAC che viene in
genere presentato come il primo computer.
Fatto è che la costruzione del Colossus era ovviamente uno dei segreti più gelosamente
custoditi dai servizi segreti inglesi, e solo negli anni '70 la storia dei Colossi fu resa di
pubblico dominio.
27
6.3 Alan Turing
Non sopportava gli sciocchi, ed abbandonava le conversazioni vuote e le compagnie idiote
repentinamente, e senza una parola di commiato. Imparò a fare la maglia da una ragazza
che aveva deciso di sposare, nonostante la propria omosessualità. Andava in bicicletta
con la maschera antigas durante il periodo dell'impollinazione, per evitare la febbre da
eno, o avvolto in tela cerata gialla durante la stagione delle piogge. Legava la tazza da
tè al termosifone con un lucchetto, per evitare che gli fosse rubata.
Portava la giacca
del pigiama al posto della camicia, e pretendeva di poter lavorare quando si sentiva (in
particolare, di notte e fuori dell'orario di ucio), anche sotto regime militare.
Faceva
calcoli, anche durante le conferenze pubbliche, con numeri in base 32 scritti all'indietro
(come si dovevano inserire nel computer). Giocava a tennis nudo sotto un impermeabile,
e non disdegnò di discutere con un bambino se Dio avrebbe preso il rareddore se si fosse
seduto sulla nuda terra. Turing ricavava (come egli stesso dichiarò) un piacere sessuale
dalla matematica, e si suicidò per motivi direttamente collegati alla sua omosessualità.
Nel 1954, infatti, morì mangiando una mela avvelenata con cianuro di potassio.
La
madre sostenne che il glio, con le dita sporche per qualche esperimento chimico, avesse
ingerito per errore la dose fatale di veleno; ma il verdetto uciale parlò senza incertezze di
suicidio. Nel referto medico venne infatti scritto "Causa del decesso: cianuro di potassio
autosomministrato in un momento di squilibrio mentale". Certamente Turing non era
uno squilibrato mentale ed anzi la sua azione fu un gesto di ribellione al sistema e di
rivendicazione umana e fu eseguita in un momento di piena coscienza. Infatti già molti
anni prima pare che Turing avesse mostrato interesse per la storia di Biancaneve e i
sette nani (nella favola, Biancaneve viene avvelenata da una mela) e quindi, come in
una favola, decise di concludere platealmente la sua giovane vita alla soglia dei 42 anni.
Speculazioni avanzate nel libro Zeroes and Ones di Plant, vogliono che il logo della Apple
Inc. sia un omaggio ad Alan Turing, tuttavia, il management Apple non ha mai smentito
o confermato.
28
7 La macchina di cifratura giapponese
7.1 Introduzione
Codici e meccanismi di cifratura, hanno giocato un ruolo fondamentale durante la Seconda Guerra Mondiale.
Durante questo periodo, molte delle nazioni coinvolte svilupparono sistemi di crittazione per nascondere le loro intenzioni e pianicare un sistema di spionaggio ai danni
dei loro nemici. Si trovavano a fronteggiarsi sia i sempre più perfezionati sistemi di crittograa, che le nuove tecniche di crittanalisi, per cercare di carpire i segreti che le potenze
si scambiavano.
Due di queste nazioni erano Giappone e Stati Uniti, che dai primi anni degli anni 30,
fecero di questi sistemi, il loro mezzo esclusivo per veicolare informazioni e sulla quale
si basò tutto l'evolversi delle vicende che coinvolsero le due potenze durante gli anni del
conitto globale. Un susseguirsi di continue rincorse, tra le due potenze, alla ricerca della
macchina di cifratura perfetta e del metodo più rapido per renderla vulnerabile.
7.2 Convenzioni giapponesi e tecniche di rappresentazione
Bisogna dapprima spiegare come un testo in giapponese possa essere rappresentato da
un'alfabeto romanico.
La lingua giapponese, come oggi la conosciamo, deriva da una forma della lingua cinese
ed usa come caratteri gli ideogrammi.
La lingua scritta, venne riadattata e semplicata introducendo un sistema fonetico
chiamato kana, costituito da 48 sillabe base. Di questo alfabeto base vennero proposte
due versione hirigana e katagana, e questo ultimo preferito per le telecomunicazioni
per la sua maggior semplicità e per la possibilità di riprodurlo con i simboli kana.
A questo viene fatto corrispondere un'alfabeto, chiamato Hepburn Romaji, al quale
viene fatto corrispondere ad ogni kana, un simbolo dell'alfabeto Romanji.
Di fatto
questa semplicazione viene ancora oggi usata per la trasposizione della lingua giapponse
29
Figura 7.1: Tabella delle frequenze
in un'alfabeto comprensibile agli occidentali. Tale rappresentazione fa riferimento ad una
tabella delle frequenze (Fig. 7.1), dalla quale è possibile ricavare una corrispondenza o
coincidenze, ad esclusione delle lettere L, Q, X.
Le macchine di cifratura giapponese, utilizzavano proprio questo tipo di approccio alla
conversione in testo, e le RED, PURPLE, CORAL e JADE sfruttavano proprio questo
principio di scrittura e conversione dei kana all'alfabeto romanico.
30
7.3 Red Machine Cipher
Denominata 91-shiki injiki ("System 91 Printing Machine") ed introdotta nel 1930, venne
realizzata da una versione commerciale della macchina di cifratura tedesca Enigma, modicata opportunamente per migliorarne la sicurezza e la segretezza tramite meccanismo
di reverse-engineer. Il cuore di questa macchina, consisteva nella modica sostanziale del
meccanismo di crittazione delle vocali.
La macchina così realizzata venne chiamata RED dal governo americano, e venne
usata spesso dai diplomatici giapponesi per criptare le loro conversazioni.
Tale tipo di macchina venne sprotetta 5 anni più tardi da William Friedman dell'American Army Signal Intelligence Service (SIS) usando la crittoanalisi statistica, riuscendo a
decrittare le comunicazioni classicate come TOP SECRET.
La macchina RED, utilizzava un semi-rotore, importato dal crittografo svedese Arvid
G. Damm, che utilizzava una tecnica più rozza, rispetto al metodo proposto da Enigma,
per la criptazione e la creazione delle corrispondenze tra input ed output.
Figura 7.2: Schema RED
In questo meccanismo, vengono sistemati 26 collegamenti, strutturati a coppie, uno
situato sulla faccia sinistra del rotore, l'altro collegato sulla faccia destra del rotore.
L'OCP evidenziato in gura, è il link dedicato alla creazione dell'output, direttamente
connesso al rotore e dove il contatto in ingresso è rimpiazzato da quello che in gura è
chiamato Slip ring, che costituisce l'interfaccia rotante, situato lungo un'asta attaccato
al corpo del rotore.
Ogni lettera in ingresso è collegata ai 26 anelli. Il meccanismo prevedeva la rotazione di
questi anelli e il movimento dell'asta ad esso collegata. Tale tipo di collegamento implica
31
che ogni lettera è sempre l'opposto della corrispondende lettera appartenente alla faccia
di sinistra del rotore, qualunque sia la posizione del rotore.
Figura 7.3: Half - Rotor RED
In Fig. 3, vediamo come il processo di cifratura della lettera in chiaro Y, venga eettuato durante due posizioni consecutive assumendo per prima che la connessione interna
del rotore, colleghi la Y del LLF al D del RLF e successivamente che la D del RLF sia
l'opposto della J del OCP, situato in posizione iniziale.
Riassumento alla pressione della letterea Y sulla tastiera avremo i seguenti passi:
ˆ
un percorso che va dalla lettera Y sulla tastiera alla Y rotante
ˆ
un percorso che va dalla Y rotante al contatto Y della LLF
ˆ
un percorso che va dalla corrispondente lettera D del RLF alla J del OCP
ˆ
inne il percorso che va dalla J dell'OCP alla lampadina che accende la corrispondente lettera J.
Nel caso in cui si chiama l'ordine di rotazione, ovvero da orario ad antiorario, il meccanismo appena citato, cifrerà la stessa Y in un'altra lettera, che sarà, seguendo i passaggi,
la I.
32
Una possibile tabella delle sostituzioni applicabili è la seguente:
Figura 7.4: Tabella sostituzioni
La macchine di cifratura RED prevedeva una serie di componenti:
1. Un semirotore da 60 contatti (minimo comune multiplo tra 6 e 20) che permettesse
di cifrare vocali con vocali e consonanti con consonanti, divisi in gruppi da 6 e 20.
2. una plugboard che collegava l'ingresso (generalmente una macchina da scrivere) agli
anelli rotanti del rotore, dove vi era una separazione tra le vocali e le consonati,
ovvero vi erano due alfabeti, uno di 6 elementi e uno di 20.
3. una ruota a 47 posizioni, contenenti tanti elementi quante le posizioni e dove iesimo elemento, se attivo, faceva corrispondere 1, o presente, viceversa se inattivo
o mancante, 0.
La breakwheel era responsabile del movimento da orario a antiorario, e viceversa, del semi
rotore della macchina RED ad ogni step, a seconda o meno della presenza dell'elemento,
se restituiva il valore corrispondente alla presenza oppure no, ed era possibile cambiare la
legge con la quale tale ruota inuiva sull'andamento del semirotore, tramite la rimozione
di 11 elementi mobili. In buona sostanza venivano rimossi dai 4 ai 6 di questi elementi
per creare la propria legge di movimento del rotore.
33
Ad esempio al raggiungimento
Figura 7.6: Schema consonanti
di uno degli elementi, durante la rotazione del rotore, se questo veniva rimosso, causa
un'ulteriore rotazione aggiuntiva.
7.3.1 Regole di cifratura
RED inizialmente deniva lo spazio delle vocali VOC={A,E,I,O,U,Y}.
Il paradig-
ma di poter associare vocali alle vocali e consonanti alle consonanti, era risolto tramite
l'implementazione di due semirotori, dove erano presenti due interfacce rotanti a 6 e 20
anelli rispettivamente, scegliendo quindi di usare invece del rotore a 60 posizione, due
meccanismi che costituivano il minimo comune multiplo, ovvero 6 e 20.
Il meccanismo di cifratura del RED può essere associato a due cifrari di Vigenere a
sostituzione, come è possibile vedere dalle tabelle in Fig. 7.5 e 7.6.
Figura 7.5: Schema vocali
Queste tabelle dimostrano che se la cifrature di T nisce in k, di posizione 6:
34
T → k = C−6 (Θ(T )) = C−6 (r)
allora RED cifra U in u
U → u = C−7 (Θv(U )) = C−7 (Y )
in posizione P+1=7=1 mod 6.
Deniamo ora complessivamente le operazioni di sostituzione eseguite dalla macchina
RED. Deniamo l'insieme delle vocali VOC={A,E,I,O,U,Y} e quello delle consonanti
CON={B,C,D...Z}.
Le funzioni ordinarie delle vocali e consonanti sono denite come>
ˆ
ordVOC costituiscono la posizione di x nell'alfabeto VOC
ˆ
ordCON costituiscono la posizione di y nell'alfabeto CON
L'inverso di tali funzioni sono invece:
ˆ
invVOC(j) il j-simo carattere in VOC compreso in 0<j<6
ˆ
invCON(j) il j-simo carattere in CON compreso in 0<j<20
Quindi le procedure di crittazioni di vocali e consonanti hanno dierente modulo.
35
Un possibile esempio di cifratura, tenendo presente le condizioni appena illustrate è il
seguente:
Figura 7.7: Testo in chiaro
che cifrato diviene:
Figura 7.8: Testo cifrato
senza contare che ad ogni modica della breakwheel e dei suoi pin, ogni testo crittato
assume forma totalmente diversa a seconda del numero di pin rimossi e modicati.
36
7.4 Purple Machine Cipher
Angooki Taipu B, meglio conosciuta e classicata come Purple, costituisce un'evoluzione
ben più sosticata della macchina RED. Il nome è derivato dal colore dei contenitori,
usati per contenere le informazioni sul cifratore.
I giapponesi usarono questo tipo di
macchinario per criptare tutte le conversazioni diplomatiche no alle ne della guerra.
Non venne usatà altresì per criptare le comunicazioni navali, le quali venivano adate al
cifratore JN-25.
A memoria si ricorda questo macchinario durante le operazioni di attacco su Pearl Harbour, dove a causa di problemi dovuti alla decrittazione e alla traduzione, il messaggio in
cui i giapponesi interrompevano ogni rapporto con gli Stati Uniti, non venne consegnato
in tempo al Segretario di Stato, a cui seguì il famoso attacco a Pearl Harbour.
Figura 7.9: PURPLE Machine Cipher
Da sottolineare che a dierenza di altri apparecchi, ad esempio Enigma, che vennero
scoperti e recuperati durante la seconda guerra mondiale, e che agevolarono il processo di
reverse engineering per la loro decrittazione, della Purple non vennero trovati esemplari,
anche dopo la ne della guerra, e per la loro decrittazione ci si dovette adare solamente
al processo di crittoanalisi analizzando dei testi cifrati.
La macchina Purple era un dispositivo a sostituzione, in cui veniva sostituito ogni testo
in chiaro in un testo cifrato, con una combinazione o alfabeto ottenuto con scrambling.
La permutazione dell'alfabeto cambiava dopo ogni crittazione e decrittazione, e costituiva un cifrario polialfabetico.
37
7.4.1 Funzionamento
La macchina Purple era costituite da da due macchine da scrivere elettriche convenzionali,
dove i messaggi da cifrare o decifrare, veniva inseriti sulla tastiera di questa, da cui usciva,
dopo i passaggi di elaborazione, il messaggio cifrato sul dispositivo di stampa.
La macchina da scrivere in ingresso, era stata concepita per accettare tre alfabeti per
costituire l'alfabeto in chiaro, l'inglese, il romaji e il roman.
L'elemento primario del meccanismo di cifratura era uno switch telefonico a 25 posizioni, usato anche negli Stati Uniti all'inizio degli anni '30, come commutatore automatico per le chiamate, che connetteva uno degli input ad uno dei 25 terminali di
uscita.
Un magnete, collegato allo switch, faceva avanzare il meccanismo di una posizione,
come risposta ad un impulso elettrico. Il meccanismo, prevedeva, una volta collegato,
che lo switch, avanzasse alla posizione seguente ogni volta che una chiave (lettera) veniva
digitata sulla macchina da scrivere. Una volta arrivata alla posizione 25, il meccanismo
ripartiva da 1 e faceva scalare il blocco successivo.
Il meccanismo di selezione era proprio derivato dallo switch telefonico, in grado di
selezionare all'interno di un insieme di numeri, no a 100 di questi.
Un modello particolare di Purple, adottava aveva sei livelli di switch per 25 contatti
a livello, ogni livello aveva un input separato dagli altri, per cui erano indipendenti le
connessioni e potevano essere collegate simultaneamente.
Figura 7.10: Schema Purple
Vediamo in gura, uno schema semplicato della macchina. Il design della macchina
permetteva di rendere totalmente incorrelate ogni input per ogni uscita.
38
Il cuore della macchina era costituito da switch a 4 passi, che erano posizionati nel
mezzo tra la macchina da scrivere e la plugboard. Questi switch si spostavano costantemente, ognuno rispetto all'altro, e producevano cammini diversi per ogni testo in chiaro
ad ogni testo cifrato. La plugboard con gli switch, era la responsabile del elevato grado di
complessità e cuore della macchina stessa. La plugboard stessa poteva essere modicata
da messaggio a messaggio e cambiare le combinazioni di testi in chiaro e testi cifrati in
maniera del tutto casuale.
La Purple poteva sostituire una singola lettera con una serie di centinaia di migliaia di
lettere lunghe, prima che potesse raggiungere la medesima ripetizione di lettere. Grazie
a questa caratteristica la Purple si dimostrava uno dei sistemi più innovativi e adabili
per nascondere i messaggi e rendere sicure le comunicazioni.
Oltretutto si poteva agira anche sugli step degli switch, così che poteva essere cambiato
giorno per giorno il meccanismo di crittazione, anche facendolo eseguire dall'operatore
stesso.
Come si può vedere i 26 caratteri dell'alfabeto sono divisi in due gruppi, quello delle 6
vocali (sixes) e quello delle 20 consonanti (twenties), anche se la macchina non codicava
necessariamente vocali con vocali e consonanti. Successivamente due varianti di Purple,
Jade e Coral, non ebbero la stessa modalità che venne implementata per la prima volta
in RED. Questo poichè proprio l'elemento di divisione delle vocali dalle consonanti, fu il
fulcro per la decodica di RED e successivamente di Purple.
Gli ingressi degli elementi relativi alla porzione della plugboard delle vocali, sono collegati in ingresso ad uno stepping switch a 25 posizioni e 6 livelli. L'uscita degli switch
sono collegati così che possano permutare e riarrangiare le lettere in ingresso. In questo
modo vi erano 6! possibili combinazioni in uscita.
Gli ingressi delgli elementi relativi alla porzione della plugboard delle consonanti, erano
collegati ad uno stepping switch a 25 posizioni e 20 livelli, che lavoravano con lo stesso
criterio di quello delle vocali, con la dierenza che gli switch erano collegati tra loro, ad
un secondo e terzo switch, e il ciclo totale degli switch era 15,625 permutazioni.
L'uscita degli switch è collegata alla plugboard di uscita, a sua volta collegata ad un
meccanismo per la stampa del testo in chiaro o cifrato.
E' da sottolineare un passaggio importante del processo di cifratura e decifratura: una
delle sixes veniva sostituita da un'altra appartenente allo stesso gruppo e così anche per i
twenties, sostituite all'interno del loro stesso gruppo. Tale particolarità sarà importante
da sfruttare per il processo di crittoanalisi.
La gura sotto mostra un altro possibile modo di creare le onnessioni tra la macchina
da scrivere e gli switch della Purple.
39
Ogni lettere che proviene dalla macchina da scrivere (sulla sinistra) può essere collegata a qualsivoglia ingresso della Purple (sulla destra), risultando criptata e decriptata
attraverso il processo di switch dei sixes e dei twenties.
Figura 7.11: Schema Typewriter - Switch
Purple invece di una singola permutazione per rotore, come in Enigma, usa step singoli,
in cui S, L, M e R commutano su permutazioni hardware dierenti ed incorrelate.
Cerchiamo di capire meglio il funzionamento della macchina Purple, considerando la
gura sottostante, che identica la circuiteria della macchina, avendo come in ingresso
una macchina da scrivere e come uscita, un sistema di stampa.
Figura 7.12: Esempio di cifratura
40
Quando viene premuta la lettera K, viene applicata una corrente all'elemento K della
plugboard.
In corrispondenza del tipo di sostituzione realizzata, può essere sostituita
anche da una lettera appartenente al gruppo delle vocali, come U. Questa costituisce
la quinta vocale dell'insieme sixes, e verrà applicata corrente alla macchina da scrivere,
al quinto livello dello switch dei sixes. Se questo sixes è collegato all'input 3, allora dalla
tabella si ricava che per l'ingresso 5 si ha una connessione con l'uscita 2 (che collega la
E). Inne l'uscita collega la plugboard dalla E ad una qualunque lettera, ad esempio la
S, che viene stampata.
Se la plugboard deve convertire una lettera in ingresso, ad una delle lettere appartenenti
all'alfabeto delle consonanti, si opera alla stessa maniera, ma vengono fatti più passaggi,
poichè la corrente applicata, deve passare attraverso lo Switch 3, lo Switch 2 e inne lo
Switch 1, prima di poter restituire l'uscita.
Dopo ogni passaggio di cifrature e decifratura, sia lo switch delle vocali che quello delle
consonanti, cambiano posizione e creano una nuova permutazione, risultando complessivamente un cifrario polialfabetico con un periodo di 25 passi per le vocali, e 15625 per
le consonanti.
Figura 7.13: Schema riassuntivo
Questo tipo di permutazione è il maggior vantaggio proposto da Purple rispetto a RED.
Di fatto è più dicile da progettare, e dal punto di vista crittoanalitico, la possibilità di
generare un numero ben più elevato di permutazioni, lo rende senz'altro più dicile da
svelare.
La formula di criptazione dipende dalla lettere che si vuole crittare, se corrisponde
all'alfabeto delle vocali o delle consonanti.
Immaginiamo di avere x l'input, e y la corrispondente lettera in tuscita, allora
possiamo scrivere la formula di crittazione come:
41

P −1 P P P P (x)
r m l i
0
y=
P −1 P P (x)
0
dove
s I
PI è l'ingresso alla plugboard, e P0 l'uscita, che servono per eettuare lo scrambling
degli alfabeti.
Una limitazione era che la macchina non era in grado di cifrare la punteggiatura o i
numeri e per ovviaere a questo problema, l'operatore doveva inserire i codici corrispondenti alla punteggiature e a i numeri, che sarebbero stati cifrati insieme al messaggio
da comunicare. La decriptazione prevedeva che la macchina in ricezione fosse impostata
esattamente allo stesso modo di come era stata impostata in trasmissione.
L'operatore addetto alla decriptazione, inseriva nella macchina da scrivere il testo
arrivato e in chiaro usciva il messaggio decifrato.
7.4.2 Switch
Il movimento dello switch sixes è in avanti, una volta raggiunta la posizione 25, questo
proseguiva scalando su 1 e agendo sugli switch dei twenties.
Per i twenties, ad ogni lettera in ingresso, veniva fatto corrisponde un movimento
in avanti dello switch 1 delle consonanti, e così via, con un meccanismo a cascata che
faceva permutare e avanzare le posizioni, ad ogni lettera in ingresso e per ogni completa
rivoluzione del circuito.
Tale tipo di meccanismo permetteva di avere un alfabeto totalmente incorrelato.
42
7.4.3 Spazio Permutazioni Purple
Diamo un calcolo delle possibili chiavi della Purple. Possiamo supporre, che le permutazioni sugli switch siano selezionabili, allora lo spazio delle chiavi, potendo agire sugli
insiemi S, L, M e R sarà di
26865 ,
ma a causa della immobilità delle permutazioni, che
sono dunque sse, il numero di chiavi è molto ridotto rispetto al teorico.
Con queste
restrizioni sulle S, L, M e R, il calcolo è ottenuto da:
ˆ
Impostazioni iniziali di S, M, L e R, per cui avendo ognuna 25 elementi, elevato
alla 4, costituisce un insieme di
ˆ
218 elementi.
Scegliendo la velocità degli switch (Slow, Medium, Fast) abbiamo ulteriori
23 combinazioni
circa.
ˆ
La selezione, totalmente indipendente, delle permutazioni delle plugboard, sia in
ingresso che in uscita e sono
2177
possibili combinazioni.
Quindi il possibile spazio delle chiavi è approssimativamente
2198 ,
dove però vanno sot-
21 possibili permutazioni per le varie plugboard, che riduce quindi lo spazio delle
tratte 2
chiavi a
2110
circa.
7.4.4 Crittoanalisi
Il componente plugboard è l'elemento debole della Purple, infatti consente un numero davvero limitato di chiavi, pari a
221 ,
quindi l'emento principale da capire era il
meccanismo di switch delle permutazioni, che era l'elemento chiave per la segretezza. I
giapponesi, oltretutto, avevano usato solo una piccola porzione dello spazio delle chiavi,
quindi una volta decrittata la chiave di lettura, decifrare una messaggio sarebbe stato
davvero rapido, quindi era necessario mantenere il più possibile segreta, la struttura della
macchina.
Per l'analisi del sistema, non era stata trovata alcuna macchina, quindi la sua analisi
dove partire solo da alcune considerazioni sui suoi principi di funzionamento, attraverso
alcuni esempi di testi cifrati, e alcuni testi in chiaro, per il supporto alla diagnosi del
sistema.
Già a partire dalla decifratura della macchina RED, il SIS aveva scoperto il meccanismo
di costruzione del messaggio cifrato, tipicamente veniva mandato il messaggio con una
43
formula di saluto o con un numero che identicava la missiva, e tenendo conto di questa relazione, il processo di decifrazione della macchina Purple, partì proprio da questo
assunto. Con questi dati, il SIS aveva decifrato il meccanismo di cifratura dell'alfabeto
delle vocali, da cui si è partiti per decifrare il sistema delle permutazioni delle consonanti. 18 mesi dopo l'introduzione della Purple, il sistema venne completamente decifrato,
costruendo degli esemplari che replicavano il corretto funzionamento, senza essere mai
venuti in possesso di un meccanismo originale.
La soluzione per le vocali fu trovata velocemente, ma allo stesso modo non fu per
lo spazio delle consonanti, a causa della segretezza del meccanismo, e del pattern di
cifratura totalmente casuale e non ciclico (o comunque con periodo lunghissimo) e in
aggiunta a questo, i giapponesi usarono solo 120 delle 15,625 possibili combinazioni,
cambiando anche giornalmente il pattern, dando pochi campioni di testo cifrati con
la medesima chiave, e dando pochi riferimenti per la decifratura dei meccanismi che
collegano il movimento degli switch delle vocali con le consonanti.
Questo poichè PURPLE utilizza una chiave composta da due parti. La prima parte
della chiave indica la posizione di partenza dello switch e il movimento, la seconda parte
denisce l'alfabeto usato nel giorno corrente della trasmissione.
Le impostazioni dello switch, venivano impostate tramite un indicatore a 5 cifre, posizionato in testa al messaggio, selezionato all'interno di una lista di
1204
elementi, di
cui 60 aventi numerdi dispari e 60 aventi numeri pari. Per resistere ad un processo di
crittoanalis, era necessariop
che il meccanismo non fosse sprecasse il numero di possibili combinazioni presenti, anche se questo generava due problematiche: da una parte si doveva prevenire dal fare messaggi usando sempre nuove chiavi e messaggi troppo lunghi, dall'altro limitando questo
meccanismo, si aumentavano le possibilità che un messaggio potesse esser cifrato col
medesimo meccanismo. Per ovviare a questo problema, venne inserito l'indicatore a 5
cifre in testa al messaggio, che veniva cambiato mensilmente.
Il successo della decifrazione della macchina Purple fu proprio nel aver raccolto alcune
decine di messaggi decifrati, con la medesima modalità e in dierenti giorni (e quindi
dierenti alfabeti), che permisero di raccogliere dati sucienti per stabilire i legami che
vi erano negli switch dei twenties.
44
Figura 7.14: Parte 1 del messaggio dell'attacco a Pearl Harbour
In Fig. 14, vediamo la prima parte del messaggio consegnato dai giapponesi al Segretario di Statro il 7 Dicembre 1941.
Sul testo è possibile vedere alcune note, inserite a penna, che denotano alcune particolarità.
ˆ
6th indica la data del messaggio (riferito al giorno di Tokyo).
ˆ
Army indica che il messaggio verrà trattata dall'U.S. Army.
ˆ
Pt.1 Indica che è la prima parte del messaggio.
ˆ
15739 indica le 5 cifre iniziali in testa al messggio, che sono le cifre dell'indicatore
di movimento da usare per la decifrazione.
ˆ
I numeri 9-1-24-6 sono le posizioni di partenza degli switch sixes e degli switch 1,
2 e 3 dei twenties, dove invece 4 indica il movimento di switch.
ˆ
L'alfabeto per questo messaggio è: per i sixes (NOKTYU) per i twenties (XEQLHBRMPDICJASVWGZF).
45
7.4.5 Conclusioni
Sia la RED che la PURPLE, furono sistemi di criptazione unici. In particolare la Purple
con il suo sistema di switch e movimenti.
Il punto debole, che fu della RED, venne
inspiegabilmente trasportato nei primi esemplari anche nella Purple, e diede modo di
poter stabilire le prime relazioni tra testi cifrati e testi in chiaro e risalire ai collegamenti
della macchina. Una volta stabiliti i meccanismi della macchina, il SIS potè decifrare con
la medesima velocità dei giapponesi, i messaggi cifrati.
Nonostante questa capacità, non fu suciente a prevenire l'attacco a Pearl Harbour
nella Seconda Guerra Mondiale, ma nonostante questo, diede grandi informazioni sugli alleati dei giapponesi, in primis i tedeschi, potendo ricavare informazioni sulle difese
tedesche, durante i colloqui tra i diplomatici delle rispettive parti. Col medesimo meccanismo si riuscì ottenere anche informazioni per uno dei più importanti eventi della
Seconda Guerra Mondiale, il D-Day.
Figura 7.15: Purple Machine Cipher e sue connessioni
46
7.4.6 MAGIC
Le informazioni ottenute dall'intelligence americana, dalla macchine cifranti giapponesi,
vennero chiamate MAGIC. Veniva identicato con questo termine, la serie di decriptazioni ottenuto per tutti i cifrari, come la RED, la PURPLE, la JN-25. Consisteva nel
processo meccanizzato di lettura e decrittazione, messo a punto da Friedman e dal SIS,
una volta trovati gli exploit alle relative macchine cifranti.
Al pari di ULTRA per gli alleati inglesi, si rivelerà importante e vitale per lo svolgimento della seconda guerra mondiale, basti citare l'episodio della morte dell'ammiraglio
Yamamoto, in cui proprio la decifrazione di un messaggio, da parte di MAGIC, permise
la conoscenza del viaggio che l'ammiraglio stava per intraprendere e l'abbattimento del
suo areo.
Ultimamente si viene a discutire sui fatti svoltisi durante l'attacco di Pearl Harbour, in
cui viene proprio messa in discussione l'utilizzo della macchina MAGIC e del suo impiego
in quella determinata circostanza, poichè da alcune testimonianze e ricostruzioni, la scelta
di non avvisare Pearl Harbour dell'imminente attacco, fu voluto, proprio per non far
capire ai giapponesi, che il loro sistema di crittazione era stavo violato.
Determinante fu anche nella battaglia di Midway e nei successivi scontri, in cui venne
annientata la otta giapponese, e permise di porre ne al conitto a vantaggio degli
americani.
47