◷ Storia dell'informatica

Colossus: il calcolatore elettronico segreto di Bletchley Park

Come Tommy Flowers costruì Colossus nel 1944 per attaccare il cifrario Lorenz e perché il primo grande calcolatore a valvole rimase segreto per decenni.

Per molti anni i libri di storia hanno indicato ENIAC come il primo grande calcolatore elettronico. Non per malafede, ma perché un'altra macchina, entrata in funzione quasi due anni prima, era protetta dal segreto militare. Si chiamava Colossus, fu costruita in Gran Bretagna durante la Seconda guerra mondiale e serviva a decifrare le comunicazioni dell'alto comando tedesco.

Non solo Enigma

Quando si parla di Bletchley Park, il centro britannico di decrittazione, si pensa subito a Enigma, la macchina cifrante usata da molti reparti tedeschi. Colossus però non aveva nulla a che fare con Enigma. Era stato costruito per un sistema diverso e più sofisticato: la macchina cifrante Lorenz, usata per i messaggi telescriventi tra i vertici militari tedeschi. A Bletchley Park il traffico Lorenz era chiamato in codice «Tunny».

Come funzionava il cifrario Lorenz

Le telescriventi trasmettevano ogni carattere con un codice a cinque bit. La macchina Lorenz generava una sequenza pseudocasuale di caratteri usando dodici ruote dentate e la combinava con il testo in chiaro tramite un'operazione che oggi chiameremmo XOR. Chi riceveva il messaggio, con una macchina impostata allo stesso modo, ripeteva l'operazione e otteneva il testo originale.

È lo stesso principio di molti cifrari a flusso moderni: la sicurezza dipende interamente dall'imprevedibilità della sequenza generata.

L'impresa di Bill Tutte

I britannici non avevano mai visto una macchina Lorenz. Nel 1941 un operatore tedesco commise un errore grave: trasmise due volte un lungo messaggio con la stessa impostazione, apportando piccole modifiche al testo la seconda volta. Grazie a questo errore i decrittatori riuscirono a ricavare un lungo tratto della sequenza generata dalla macchina.

Il matematico Bill Tutte analizzò quella sequenza e, lavorando a mano per mesi, ricostruì la struttura logica della macchina: quante ruote aveva, con quali periodi e come interagivano. È considerato uno dei più grandi risultati di crittoanalisi della guerra.

Dal metodo alla macchina

Conoscere la struttura non bastava: per leggere ogni messaggio bisognava scoprire l'impostazione iniziale delle ruote, che cambiava. Tutte individuò un metodo statistico per farlo, ma richiedeva una quantità enorme di conteggi. Il gruppo diretto dal matematico Max Newman costruì una prima macchina per automatizzarli, soprannominata «Heath Robinson». Funzionava, ma era lenta e soffriva di problemi di sincronizzazione tra due nastri di carta.

Tommy Flowers

A questo punto entrò in scena Tommy Flowers, ingegnere del General Post Office presso il centro di ricerca di Dollis Hill, a Londra. Flowers aveva esperienza con le valvole termoioniche negli impianti telefonici e propose una soluzione radicale: generare elettronicamente, con valvole, i dati che Heath Robinson leggeva da un secondo nastro. Rimaneva così un solo nastro, quello del messaggio intercettato, letto otticamente ad alta velocità.

Molti dubitavano che una macchina con così tante valvole potesse essere affidabile. Flowers sapeva che le valvole si guastavano soprattutto all'accensione e allo spegnimento, e che lasciandole sempre accese duravano a lungo.

Colossus in funzione

Il primo Colossus, con circa 1.600 valvole, entrò in servizio a Bletchley Park all'inizio del 1944. Una versione migliorata, il Mark 2, con circa 2.400 valvole, fu operativa dal giugno 1944, pochi giorni prima dello sbarco in Normandia. Alla fine della guerra ne erano in funzione dieci.

Caratteristica Colossus
Tecnologia Valvole termoioniche
Ingresso Nastro di carta letto otticamente
Programmazione Interruttori e spinotti
Funzione Conteggi statistici su ipotesi di impostazione
Uscita Macchina da scrivere elettrica

Che cosa sapeva fare

Colossus non era un computer universale: non memorizzava programmi e non poteva essere usato per qualsiasi calcolo. Era però programmabile, nel senso che gli operatori, molte delle quali erano donne del Women's Royal Naval Service, potevano configurarlo con interruttori e spinotti per eseguire diversi tipi di test logici e conteggi. È considerato il primo calcolatore elettronico digitale programmabile di grandi dimensioni.

Il lungo silenzio

Alla fine della guerra la maggior parte dei Colossus fu smantellata e la documentazione distrutta o secretata. Chi vi aveva lavorato non poteva parlarne, nemmeno con i familiari. Flowers non ricevette riconoscimenti pubblici adeguati per decenni. Solo a partire dagli anni Settanta le informazioni cominciarono a essere rese note, e ulteriori documenti furono declassificati negli anni successivi.

Il segreto ebbe un effetto concreto sulla storia dell'informatica. L'esperienza di Colossus non poté essere citata pubblicamente, anche se alcune persone coinvolte, come Max Newman, contribuirono poi ai primi computer britannici del dopoguerra.

Tra gli anni Novanta e i primi anni Duemila un gruppo guidato da Tony Sale ricostruì un Colossus funzionante, oggi visibile al National Museum of Computing di Bletchley Park.

Una lezione per chi si occupa di sicurezza

La storia di Colossus contiene un insegnamento che resta valido. La macchina Lorenz era ben progettata, ma la sicurezza fu compromessa da un errore operativo: il riuso della stessa chiave. Nella crittografia moderna il riuso di un nonce o di una chiave in un cifrario a flusso è ancora uno degli errori più gravi, proprio per lo stesso motivo.

In sintesi

  • Colossus fu costruito per decifrare il cifrario Lorenz dell'alto comando tedesco, non Enigma.
  • Bill Tutte ricostruì la struttura della macchina Lorenz senza averla mai vista, grazie a un errore di un operatore tedesco.
  • Tommy Flowers progettò Colossus con valvole termoioniche; il primo esemplare entrò in servizio all'inizio del 1944.
  • Il segreto militare tenne nascosta la sua esistenza fino agli anni Settanta; una ricostruzione funzionante è oggi a Bletchley Park.
MM
Marco Marzaduri

Marco Marzaduri si occupa di cybersecurity, informatica forense e sviluppo web. Laureato in informatica e in psicologia, unisce l'analisi tecnica alla comprensione del fattore umano.

Leggi anche