Fasi Multiple di crittografia : Macchine a Rotazione
Prima dell'introduzione di DES, l'applicazione più importante del principio delle fasi multiple di crittografia era una classe di sistemi nota con il nome di macchine a rotazione.
Il principio di queste macchine è abbastanza complesso. La macchina consiste in un insieme di cilindri rotanti indipendenti attraverso i quali possono passare degli impulsi elettrici. Ogni cilindro ha 26 terminali d'ingresso e 26 terminali di uscita con cablaggi interni che connettono ciascun terminale di ingresso a un solo terminale di uscita.
Se si associa a ciascun terminale di ingresso e di uscita una lettera dell'alfabeto, allora un cilindro definisce una sostituzione mono alfabetica. Si consideri una macchina con un unico cilindro. Dopo la pressione di ciascun tasto di input, il cilindro ruota di una posizione e dunque le connessioni interne vengono ruotate di conseguenza. Pertanto verrà impiegata un'altra sostituzione cifrata mono alfabetica. Dopo 26 lettere di testo in chiaro, il cilindro torna alla posizione iniziale: si ha dunque un algoritmo di sostituzione poli alfabetica con un periodo pari a 26.
Un sistema con un unico cilindro è molto semplice e non rappresenta un problema per l'analisi crittografica. La potenza della macchina a rotazione è costituita dalla presenza di più cilindri dove le uscite di un cilindro sono connesse agli ingressi del cilindro successivo. Quando si usano più cilindri, quello più vicino all'input dell'operatore ruota di una posizione a ogni input. Per ogni rotazione completa del cilindro interno, il cilindro intermedio ruota di una posizione. Infine, per ogni rotazione completa del cilindro centrale, il cilindro più esterno ruota di una posizione (esempio a tre cilindri). In pratica questo sistema si comporta come il contachilometri di un'automobile. Il risultato è che vi sono 26 x 26 x 26 = 17576 diversi alfabeti di sostituzione prima che il sistema si ripeta. L'aggiunta di un quarto e di un quinto rotore porta rispettivamente a runa ripetizione con un periodo di 456976 e 11881376. Per capire l'elevata complessità di questo sistema possiamo usare una citazione di David Kahn il quale ha riferito in modo eloquente riguardo alla macchina a rotazione con 5 rotori quanto segue:
Un periodo di questa lunghezza impedisce qualsiasi possibilità pratica di soluzione sulla base della frequenza delle lettere. Per ottenere una soluzione generale sarebbero necessarie circa 50 lettere per alfabeto cifrato, ovvero i cinque rotori dovrebbero svolgere il loro ciclo per 50 volte. Il testo cifrato dovrebbe essere lungo quanto tutti i discorsi tenuti al senato e alla casa dei rappresentati in tre sessioni successive del congresso. Nessun analista crittografico sarebbe in grado di catturare un tale tesoro in tutta la sua vita; perfino i diplomatici, che possono essere prolissi quanto i politici, raramente raggiungono questi livelli di loquacità
La macchina a rotazione è importante in quanto apre la strada alla cifratura attualmente più utilizzata: l'algoritmo DES (Data Encryption Standard).
Curiosità : Macchine basate sul principio del rotore sono state utilizzate sia da Germania (Enigma) sia in Giappone (Purple) durante la Seconda Guerra Mondiale. La violazione di questi due codici da parte degli alleati ha contribuito significativamente al risultato della guerra.