Nella prima metà del XX secolo cominciarono a diffondersi macchine cifranti a rotori, sul modello del cilindro di Jefferson reinventato da Beziers.
La più celebre di queste macchine è l’Enigma inventata nel 1918 dal tedesco Arthur Scherbius e adottata dall’esercito e dalla marina tedesca fino alla seconda guerra mondiale.
L’Enigma è una macchina simmetrica, nel senso che se la lettera A è cifrata con la G in una certa posizione del testo allora nella stessa posizione la G sarà cifrata con la A. La stessa macchina serve quindi per cifrare e decifrare; una grossa comodità operativa che è però anche una debolezza crittografica.
La macchina ha al suo interno un certo numero di rotori (nella prima versione erano 3) collegati elettricamente e liberi di ruotare (vedi la struttura matematica dell’Enigma); quando l’operatore preme un tasto p.es. la A un segnale elettrico passa da rotore a rotore fino al rotore finale detto il riflettore e quindi torna indietro fino a mostrare una lettera illuminata che è il carattere cifrato. Non esiste possibilità di stampa, dunque l’operatore deve copiare a mano, carattere per carattere il messaggio cifrato da trasmettere.
La chiave dell’Enigma è la disposizione iniziale dei rotori; questa chiave veniva cambiata ogni 24 ore secondo una regola prefissata; in definitiva la vera chiave segreta era questa regola. Anche i collegamenti interni dei rotori sono segreti.
Inoltre i tre (o più) rotori possono essere scambiati tra di loro, e quindi vi sono n! (3! = 6 nella Enigma originale) disposizioni possibili, cosa che aumenta il numero di posizioni iniziali possibili. Era anche consigliato di tenere una scorta di rotori con cablaggi diversi, in modo da poter aumentare ancora il numero di combinazioni possibili.
Il funzionamento della Enigma originale (tre rotori) può essere simulato usando la nostra macchina Enigma virtuale realizzata in Javascript.
I tedeschi erano convinti che l’Enigma fosse inattaccabile, ma questa fiducia era assai mal riposta. Già nei primi anni ’30 un gruppo di matematici polacchi guidato da Marian Rejewski era riuscito a ricostruire la struttura dei rotori e a decrittarne i messaggi.
E il servizio crittografico inglese al quale partecipava anche il famoso matematico Alan Turing riuscì a sua volta a forzare l’Enigma sin dall’inizio della guerra, sfruttando le debolezze intrinseche di questa macchina e alcune ingenuità dei cifratori tedeschi.
Mi ha sempre affascinato lo spionaggio e la crittografia in uso nella seconda Guerra Mondiale. A tal proposito [url=http://it.wikipedia.org/wiki/Simon_Singh]Simon Singh[/url] ha scritto [url=http://www.simonsingh.net/The_Code_Book.html]The Code Book[/url] nel quale spiega i segreti della Cypher Art.
La macchina Enigma è forse la protagonista fondamentale, anche se la meno conosciuta. Almeno al grande pubblico.
[url=http://it.wikipedia.org/wiki/Enigma_(crittografia)]Wiki[/url]
[url=http://enigmaco.de/enigma/enigma.swf]Simulatore Enigma[/url]