Una storia matematica Secondo Tayllerand, lo statista famoso per la sua arte della diplomazia, i pensieri devono spesso essere mascherati ed a questo provvede la parola. Ma talvolta anche le parole devono essere mascherate, ed a questo provvede la crittografia che, non a caso e ben prima della sua diffusione moderna, è da sempre utilizzata negli ambienti diplomatici e militari. Se questo paradosso è solo parzialmente valido nella vita comune, in caso di conflitto la conoscenza delle mosse segrete dell'avversario risulta spesso un fattore decisivo. La protezione delle proprie azioni è cruciale e l'uso di sistemi crittografici assume l'aspetto di una vera e propria "battaglia", con le parole, ma non per questo meno cruenta e importante delle battaglie con le armi, che in molti sensi prepara e precorre. Anche le sorti della seconda guerra mondiale furono legate in gran parte ai successi della crittografia e della sua controparte, la "decrittazione", che tenta di violare le comunicazioni riservate del nemico. Un caso particolare e famoso è quello della macchina Enigma, un assemblaggio ingegnoso di elementi, combinati in un dispositivo allo stesso tempo maneggevole, per l'epoca, e sofisticato, il cui progetto era stato messo a punto ben prima della guerra allo scopo di proteggere le informazioni relative a transazioni commerciali e bancarie. La macchina fu poi perfezionata quando la Germania nazista decise di farne il prototipo dei propri sistemi di cifratura. Gli alti vertici militari tedeschi erano rimasti sconvolti dai successi conseguiti dai decrittatori inglesi nel conflitto precedente, nel quale i propri messaggi segreti erano rimasti del tutto senza protezione. Bisognava prepararsi per tempo e, già dal 1925, la macchina progettata per pochi uomini d'affari venne perfezionata, resa più complessa nella sua struttura e messa in produzione d'alta serie. Sembrava una mossa decisiva giacché, grazie all'apporto di Enigma, allo scoppio della guerra le comunicazioni militari tedesche presentavano un notevole livello di sicurezza. Invece fu un fattore che contribuì alla sconfitta. Anche qui si decisero le sorti del conflitto, in quanto il comando tedesco non venne mai a sapere che i messaggi della macchina erano sistematicamente decrittati fin dal 1942 - e inviati al comando inglese con un diverso sistema di cifratura e non sempre sfruttati al massimo, per lasciare il nemico nell'illusione che Enigma fosse sicura! Questa è la storia di una battaglia decisiva. In cui le armi sono quelle dello spionaggio, per mezzo del quale carpire alcuni segreti sulla struttura di Enigma, e delle risorse rese disponibili dal comando inglese che apprezzava senza riserve l'opera di decrittazione, ma anche quelle dell'ingegno e del calcolo. In questo senso, oltre che una storia militare è anche una storia matematica, in cui l'intuizione, l'esame di casi particolari, lo studio delle strutture, il calcolo delle possibili varianti, la messa a punto di appositi dispositivi meccanici di calcolo, consentì il successo ad un gruppo molto numeroso di scienziati. Fu un autentico lavoro collettivo, il cui ruolo tecnico ebbe l'apporto delle idee e fu coordinato dal giovane e brillante Alan Turing, già noto per alcuni articoli che avevano destato l'interesse del mondo matematico. Turing individuò il punto debole di Enigma nella sua versione più complicata e fu in grado di sfruttare al massimo questa debolezza, permettendo di decifrare i messaggi nemici anche nelle circostanze più difficili. Di fatto, ogni sistema cifrante può essere visto come un processo algoritmico e in quanto tale fa parte di quei dispositivi logici che in seguito hanno preso il nome di "macchine di Turing", dispositivi formali più che macchine reali, i quali incorporano nel loro funzionamento ideale la nozione intuitiva di algoritmo. Chi meglio di una persona come Turing, dotata di forte cultura matematica, al massimo della propria creatività scientifica ed abituata a ragionare in termini di congegni immaginari poteva affrontare con successo il problema? |
La struttura di Enigma Nella sua struttura di base Enigma era costituita da tre "rotori" disposti in serie, uno dopo l'altro, ciascuno dei quali era in sostanza uno spesso disco di gomma con ventisei contatti, tanti quante le lettere dell'alfabeto, situati sulla corona esterna da ciascuna parte. I contatti sulle due facce del disco erano poi collegati internamente a due a due per mezzo di una complicata, e segreta, trama di fili elettrici, attraverso i quali si realizzava automaticamente una serie di sostituzioni alfabetiche. Il tutto si presentava come una massiccia macchina da scrivere con una tastiera, su cui battere le lettere del testo "in chiaro", avente, nella parte superiore, un visore a lampadine su cui si illuminavano le corrispondenti lettere del testo cifrato. Gli impulsi elettrici che si propagavano all'interno dei tre rotori determinavano in questo modo l'alfabeto cifrante. Ma naturalmente non è tutto qui. La decrittazione sarebbe stata troppo facile. Una prima complicazione era data dal fatto che ad ogni passo, in conseguenza della digitazione di una lettera da parte dell'operatore, il primo rotore eseguiva automaticamente la rotazione (ecco il motivo del suo nome) di una "tacca", cioè di un ventiseiesimo di giro, determinando un nuovo alfabeto cifrante. E quando il primo rotore aveva compiuto tutto un giro, la rotazione passava al secondo, in un meccanismo analogo a quello dei moderni contachilometri. Quando anche il secondo aveva compiuto tutto un giro, e quindi dopo 26 ´ 26 = 676 battute, la rotazione passava al terzo disco. In tutto, gli alfabeti potenziali, usati in maniera successiva al progredire della digitazione del testo in chiaro, erano dunque 26 ´ 26 ´ 26 = 17576. L'idea di usare tanti alfabeti cifranti che cambiano con continuità nel corso del funzionamento o, come si dice, un cifrario a "sostituzione polialfabetica", viene da lontano, dai tempi del Rinascimento. È un'idea che non può essere attribuita ad una sola persona, ma si è presentata spontaneamente in numerosi ambienti, quando le esigenze delle crittografia hanno mostrato che l'uso di una sola sostituzione alfabetica era troppo facile da infrangere e quindi non garantiva la necessaria protezione alle informazioni. In generale, nel sistema attribuito al diplomatico francese del XVI secolo Blaise de Vigènere, viene usata una "parola chiave", utilizzata ripetutamente e le cui lettere successive indirizzano la sostituzione da utilizzare in ciascun momento. L'idea di un dispositivo automatico allo scopo di realizzare una sostituzione polialfabetica, è connessa in particolare al nome di Leon Battista Alberti, il famoso architetto del '400 che nella sua opera "Modus scribendi in ziferas" del 1466, lega il meccanismo alla rotazione di un disco. L'uso di un disco cifrante facilita grandemente la produzione di sistemi crittografici e metodi di questo tipo, automatizzati oppure no, rimasero in uso fino a quando i dispositivi meccanici e poi elettromeccanici come Enigma non furono sostituiti da quelli elettronici di calcolo veloce. In questo senso Enigma fu l'ultima macchina cifrante dell'era pre-computer. L'aspetto importante dei sistemi a sostituzione polialfabetica è che l'alfabeto cifrante cambia nel corso stesso dell'esecuzione e non fornisce appigli ai decritattori, se non dopo un "periodo" che può essere abbastanza lungo, quando la sostituzione si ripete con le stesse modalità. Abbiamo visto che nel caso di Enigma il periodo era uguale a 17576, un numero abbastanza elevato ma che non rappresenta certamente un ostacolo per un decrittatore esperto, che abbia informazioni anche parziali sulla struttura del sistema, qualche conoscenza di statistica e che possa impiegare adeguate risorse: essenzialmente un gruppo abbastanza nutrito di collaboratori e di macchine da calcolo. Con un numero sufficiente di messaggi intercettati è possibile risalire, mediante congetture, statistiche e una notevole dose di pazienza, alla struttura interna dei collegamenti nei rotori. A questo punto il problema che rimane è quello di determinare messaggio per messaggio la posizione iniziale dei rotori, rapidamente, nel vivo delle operazioni. Consci della necessità di aumentare l'affidabilità di Enigma, i progettisti avevano previsto che i tre rotori potessero scambiarsi di posto, operazione da eseguirsi giorno per giorno secondo uno schema prefissato, portando le possibili chiavi cifranti al numero di 17576 ´ 6 = 105456. Ancora troppo poche. Forse sufficienti per scopi commerciali, quando è ragionevole pensare che i concorrenti non vogliano impiegare nella decrittazione risorse troppo ampie, ma non sicuramente per gli scopi militari, quando un'informazione al momento adatto può risultare di vitale interesse. Per questo un altro dispositivo, situato nella parte inferiore della macchina, permetteva di aumentare di gran lunga le possibilità. Si trattava di un "pannello di scambio" che consentiva con opportuni allacciamenti su spinotti di scambiare fra di loro alcune coppie di lettere prima dell'ingresso nel sistema dei rotori. Questo pannello, la cui presenza distingue la versione commerciale da quella militare di Enigma, enormemente più complessa, a seconda dei modelli prevedeva di scambiare sei o perfino otto coppie di lettere e, tenuto conto del numero di possibili accoppiamenti di sedici lettere scelte fra ventisei, a due a due, permetteva di aumentare il numero di possibilità a qualche milione di miliardi. Una quantità troppo alta per pensare di utilizzare la "forza bruta" e verificare tutti i tentativi possibili, anche avendo a disposizione numerose macchine da calcolo veloce. È da notare che la potenza e la flessibilità di Enigma deriva proprio dall'accoppiamento di questi due dispositivi: il sistema dei rotori, che ha un numero limitato di possibilità, ma le cambia con continuità, e il pannello di scambio che aumenta di gran lunga il numero delle possibilità, anche se questo pannello, considerato isolatamente, per la sua essenza "monoalfabetica" sarebbe facile preda di chi sa usare sapientemente i metodi della decrittazione statistica. Altre caratteristiche di Enigma permettevano di aumentare le chiavi possibili mentre un altro aspetto ne facilitava l'uso, contribuendo alla sua praticità. L'ulteriore elemento di complessità era dato da un "anello" che permetteva di associare diverse lettere dell'alfabeto alle diverse posizioni di ciascun rotore. Questo anello aumentava le possibilità, ma non contribuiva in maniera essenziale a cambiare la funzionalità della macchina. L'elemento strutturale che forniva grande flessibilità d'uso a Enigma, ma che allo stesso tempo costituiva un elemento di debolezza, era fornito dal "riflessore", un dispositivo che consentiva di scambiare fra di loro il testo in chiaro col testo cifrato: il segnale elettrico generato dal testo in chiaro, dopo aver attraversato i rotori veniva riflesso e attraverso un nuovo percorso nei rotori giungeva fino al pannello d'uscita. In questo modo, il destinatario del messaggio, per risalire al testo in chiaro non aveva che da digitare il testo cifrato. Grazie al riflettore, i due testi, quello in chiaro e quello cifrato, erano ottenibili l'uno dall'altra allo stesso modo o, in altri termini, la funzione svolta da Enigma era idempotente: con due applicazioni forniva l'identità. L'utilità nell'uso pratico è evidente. Per leggere il messaggio, il legittimo destinatario, che aveva predisposto una macchina uguale a quella cifrante e disposta nelle stesse condizioni iniziali, non aveva che da digitare il testo ricevuto per ricostruire il chiaro sul visore. Non occorreva che la macchina incorporasse allo stesso tempo un sistema per cifrare ed uno, diverso, per decifrare. Il sistema era lo stesso e ciò ne facilitava grandemente l'uso. Anche l'elemento di debolezza insito nella struttura simmetrica risulta chiaramente: dal punto di vista della teoria dei gruppi significa che la sostituzione complessiva ottenuta da Enigma è un prodotto di scambi. A questo punto è chiaro come avveniva la trasmissione cifrata: mittente e ricevitore avevano due macchine uguali ed ugualmente disposte sulle condizioni iniziali. Il trasmettitore batteva il testo in chiaro e otteneva sul proprio visore il testo cifrato, da trasmettere via radio. A sua volta il ricevitore batteva il testo cifrato e leggeva direttamente sul visore il testo in chiaro del messaggio. Per sicurezza, le condizioni iniziali variavano giorno per giorno, secondo un cifrario che gli operatori ricevevano in maniera sicura una volta al mese. Consistevano di: - l'assetto del pannello di scambio: sei (o otto) coppie di lettere che specificavano gli scambi da realizzare con gli spinotti mobili per tutti i messaggi della giornata, - la disposizione dei rotori: una permutazione di tre elementi, - la disposizione dell'anello alfabetico su ciascun rotore: tre coppie di lettere, - l'orientamento iniziale dei rotori: tre lettere che ne specificavano il punto di partenza. Tutte queste informazioni costituivano la "chiave del giorno" e rimanevano in funzione per un giorno e per tutti gli operatori della rete. Per l'effettivo funzionamento veniva però introdotta un'ulteriore complicazione: un nuovo orientamento dei rotori, un informazione di tre lettere che era cambiata per sicurezza ad ogni messaggio. Si aveva così anche una "chiave di messaggio" usata per cifrare il testo vero e proprio, non contenuta nel cifrario trasmesso ogni mese e che veniva comunicata dal mittente all'inizio di ogni messaggio. Un meccanismo sofisticato, giacché in questo modo la "chiave di messaggio" non era condivisa fra mittente e ricevitore e inoltre la "chiave del giorno" veniva utilizzata solo per una quantità limitata di informazioni e si rendeva difficilmente disponibile alle analisi statistiche. Ogni singolo messaggio veniva cifrato con una propria, irripetibile, chiave. In sostanza, all'inizio delle operazioni giornaliere il mittente regolava le condizioni iniziali di Enigma secondo la "chiave del giorno" e poi, messaggio per messaggio, trasmetteva come prima cosa la "chiave di messaggio", tre lettere che per sicurezza, allo scopo di evitare indecisioni dovute a disturbi di trasmissione o ad errori umani, ripeteva due volte prima di cominciare il testo vero e proprio. Seguiva la trasmissione del messaggio cifrato. Da parte sua il ricevitore, che aveva disposto la macchina secondo la chiave del giorno, interpretava le prime sei lettere di ogni messaggio come informazione relativa al nuovo assetto dei rotori, valido solo per quel messaggio. Ma la ripetizione della chiave giornaliera, insieme alle informazioni sulla struttura interna dei rotori, risulterà decisiva per la decrittazione. Regolarità e ripetizione sono da sempre i punti deboli di ogni sistema crittografico. |
La decrittazione di Enigma La struttura base di Enigma era ben nota fin dai primi anni '20, quando la macchina era stata messa in commercio e pertanto reclamizzata, anche se le autorità militari ne avevano in seguito resa più complesso l'uso, in particolare arricchendola con il "pannello di scambio". Ma i collegamenti interni ai rotori ed al riflessore non erano noti e la condizione indispensabile per affrontare la decrittazione dei messaggi era proprio quella di non avere dubbi sulla struttura fisica della macchina, per potersi concentrare unicamente sulla ricerca delle chiavi, sia quella giornaliera che quella specifica di ciascun messaggio. Del resto, nel campo della crittografia si è ben coscienti del fatto che la chiave cifrante è l'unico elemento da mantenere assolutamente segreto. Ciò è perfino codificato in un principio, riconosciuto da tutti, enunciato in un periodo in cui i problemi crittografici hanno cominciato a vedere le prime trattazioni sistematiche. Il "principio di Kerckhoffs" prende il nome dal filologo olandese del XIX secolo Jean Guillaume Kerckhoffs, appare nella sua opera "La cryptographie militaire" (1883) e recita: "La sicurezza di un sistema crittografico dipende solo dalla sicurezza della chiave". Nel caso di Enigma, la struttura fisica della macchina venne conosciuta ben prima dell'inizio della guerra grazie all'opera dello spionaggio francese. Non furono acquisiti gli schemi costruttivi, ma dei manuali d'uso, dai quali tuttavia era possibile risalire alla struttura completa. Come nelle migliori situazioni della crittografia, il vero problema era quello della chiave. Le informazioni intercettate, che spiegavano anche in dettaglio la struttura dei cifrari, passarono dai francesi a un ufficio polacco appositamente costituito per decrittare Enigma e qui, col lavoro di più di un anno e l'analisi di numerosi testi cifrati, furono brillantemente separati gli effetti del sistema dei rotori da quello del pannello di scambio. I due principali dispositivi che opportunamente combinati provvedevano alla complessità del sistema venivano disgiunti ed affrontati uno dopo l'altro. Questa era la chiave del successo. L'idea vincente fu quella di sfruttare la ripetizione delle tre lettere che costituivano il codice di messaggio e capire che la lunghezza delle connessioni cicliche che si stabilivano fra le lettere, determinabile con l'esame di un sufficiente numero di messaggi dello stesso giorno, è un aspetto del sistema che non dipende dal pannello di scambio. Lo schema esatto della sostituzione dipende ovviamente dagli scambi, ma la lunghezza dei cicli no, dipende solo dal sistema dei rotori. Per così dire, ogni disposizione ed assetto iniziale, giornaliero, dei rotori era caratterizzato da una sorta di "impronta", certe lunghezze caratteristiche delle concatenazioni cicliche. Di queste fu redatto un repertorio, esaminando tutti i 105456 assetti possibili. Ciascuna "impronta" risultava facilmente riconoscibile attraverso il repertorio. Rimanevano le sostituzioni dovute al pannello di scambio. In questo caso il problema era di tipo "monoalfabetico" e, per quanto le possibilità fossero assai più numerose, analisi statistiche, ricostruzioni di parole dotate di senso ed altri accorgimenti a cui i crittoanalisti sono ben allenati consentivano di semplificare di molto la scoperta della chiave del giorno. Come sempre in un lavoro matematico, l'ispirazione e il buon senso sono altrettanto importanti che lo studio rigoroso delle strutture. In questo modo, già nel 1934 il servizio segreto polacco, dopo semplice consultazione del repertorio dei possibili assetti dei rotori, la cui compilazione aveva richiesto qualche anno di lavoro, era in grado di determinare la chiave del giorno in poche ore. Quando il sistema tedesco venne reso più sicuro per mezzo di una diversa procedura relativa proprio alla chiave del giorno, fu necessario automatizzare anche il procedimento di decrittazione e sei macchine elettromeccaniche collegate fra di loro, dette "bombe" per il loro caratteristico ticchettio, lavoravano simultaneamente per ricostruire la chiave. Le difficoltà erano aumentate, ma il principio rimaneva lo stesso, basato sulla lunghezza dei cicli di lettere concatenate. A questo punto tutti i messaggi crittografati da Enigma risultavano facilmente leggibili e tale rimase la situazione fino a quando i crittografi tedeschi, nell'imminenza delle azioni belliche, non aumentarono notevolmente la potenza della macchina: dal 1939 cinque rotori diversi potevano alternarsi nei tre alloggiamenti e il pannello prevedeva dieci possibili scambi anziché sei. Tutto ciò non richiedeva solo attrezzature di gran lunga più potenti e maggiori risorse di personale, ma anche nuove idee e nuove capacità di analisi. Il lavoro di decrittazione passa all'Inghilterra, insieme a tutta l'esperienza accumulata e al progetto "bombe" utilizzate prima della guerra dall'ufficio polacco. Qui viene istituito il grande laboratorio di Bletchey Park e qui, in capo a qualche anno, vengono messe a punto le nuove idee e le nuove macchine che consentono di vincere ancora una volta la sicurezza di Enigma nelle varie "reti" in cui questa era operativa: quella del Nord Africa, quella dell'Europa continentale, quella della Luftwaffe o della marina, le quali utilizzavano tutte delle procedure leggermente diverse e propri, autonomi, cifrari. La novità era un approccio "intuitivo" o "psicologico" alla decrittazione: non solo occorreva prestare attenzione alla struttura contenuta nel repertorio di messaggi già decifrati, che ormai si stava accumulando in maniera consistente e costituiva un autentico patrimonio di dati, ma anche tener conto di fattori legati alle abitudini degli operatori e alle modalità, solitamente stereotipate, delle comunicazioni militari, grazie alle quali, ad esempio, in certi momenti della giornata si trasmettevano solo informazioni di un certo tipo. Anche una sola parola decifrata correttamente nella sua esatta posizione può essere sufficiente ad un analista esperto, che conosca la struttura del sistema cifrante, per risalire alla chiave. Occorreva per questo avere un'ipotesi, che da sola non era sufficiente ma che costituiva il punto di partenza. Su questa ipotesi si innestava l'analisi relativa alla lunghezza dei cicli di lettere, come nel sistema introdotto dai decritattori polacchi, ed anche l'utilizzo di nuove "bombe" dedicate in maniera apposita a simulare il lavoro di Enigma, per verificare in maniera automatica, sistematica e rapida, quando da un testo cifrato si poteva risalire a un testo dotato di senso. Il lavoro congiunto di intuizione, ricerca strutturale e metodi meccanici ebbe effetto. Fu merito di Turing quello di progettare la nuova "bomba" che, a differenza di quelle polacche, le quali riconoscevano le lunghezze tipiche dei cicli, assumeva un carattere più logico: a partire da un'ipotesi simulava le possibili implicazioni e segnalava la comparsa di contraddizioni e quindi, in questo caso, la necessità di tentare con un assetto differente. Ancora una volta, Alan Turing, con la sua esperienza nell'incorporare le funzioni logiche in dispositivi meccanici, era la persona più adatta a progettare la nuova "bomba". Alla drastica riduzione dei possibili assetti da verificare ed alla capacità di sfruttare anche le minime ipotesi di carattere intuitivo contribuiva notevolmente la struttura simmetrica di Enigma. Il "riflessore" si rivelava come un idea di grande comodità ma dal costo molto elevato. Naturalmente, anche con le nuove e più potenti "bombe", il problema di infrangere Enigma non era del tutto risolto. L'ipotesi su cui lavorare richiedeva informazioni sicure. Bisognava confidare nelle abitudini e consuetudini degli operatori tedeschi, nel rilassamento legato alla convinzione che il sistema sia sicuro e per questo fa allentare l'attenzione. Era necessario sfruttare anche la minima ripetizione, le abitudini del comando che, ad esempio, di prima mattina faceva trasmettere i bollettini meteorologici, o la noia degli operatori che usavano chiavi di messaggio ripetute. Soprattutto la rete della marina tedesca presentava difficoltà dal punto di vista delle procedure e dell'attenzione degli operatori. A questa rete si dedicò in particolare Turing. Alla fine, in molti casi, come in quello di Enigma marina, occorreva rivolgersi ancora ai metodi tradizionali dello spionaggio, come all'inizio del lavoro di decrittazione, per ottenere sufficienti e sicure informazioni. Quando queste condizioni erano soddisfatte, in condizioni normali una "bomba" era in grado di identificare la chiave del giorno in circa un'ora. Dopo di che si potevano leggere tutti messaggi spediti quel giorno in una rete Enigma. Al massimo, nel 1942, a Bletchey Park furono in funzione fino a 49 bombe simultaneamente. Ciò che è creato a macchina, da una macchina può essere più facilmente risolto. |