Breve storia della crittografia

L’alba della crittografia: la sostituzione monoalfabetica

La crittografia è la branca della crittologia che tratta dei metodi per offuscare un messaggio, ovvero per renderlo incomprensibile a persone non autorizzate a leggerlo.
La storia della crittografia risale agli Ebrei e agli Spartani, ma divenne importantissimo
nell’Impero Romano, con la creazione del cifrario di Cesare. Esso è un cifrario a sostituzione monoalfabetica in cui ogni lettera del testo in chiaro è sostituita nel testo cifrato dalla lettera che si trova un certo numero di posizioni dopo nell’alfabeto.
Il funzionamento del codice di Cesare è possibile grazie all’aritmetica modulare: ?(?) = ? + ? (???. ?), dove ? è il numero di lettere nell’alfabeto e ? è la chiave.

Consideriamo di cifrare il messaggio “BENVENUTI” in chiave 15 tenendo conto dell’algebra modulare (21 lettere nell’alfabeto italiano, 26 in quello inglese):Alfabeto crittograficoApplicando la chiave 15, risulterà che ? = 1 + 15 = 16 = ?. Da ciò:
Alfabeto crittograficoSecondo la chiave 15 del cifrario di Cesare il nostro nuovo alfabeto sarà quindi:
Alfabeto crittograficoE di conseguenza il nostro messaggio “RVFPVFONC”. L’algebra modulare permette di
ricominciare la numerazione quando si giunge al termine ?.

Il cifrario di Vigenère: il primo esempio di codifica polialfabetica

Successivamente, venne creato il cosiddetto cifrario di Vigenère, considerato per secoli
inattaccabile. In realtà esso è il più facile da decrittare di tutti i cifrari polialfabetici e risulta essere una generalizzazione del cifrario di Cesare. Infatti, al posto di spostare dello stesso numero di posti la lettera da cifrare, questa viene spostata di un numero di posti variabile ma ripetuto, determinato in base a una parola chiave da scrivere ripetutamente sotto il messaggio. Ad esempio il nostro messaggio è “BUON APPETITO” e la nostra parola chiave è “TASSO”.
Pertanto scriveremo:Alfabeto crittograficoPer crittografare il messaggio, bisogna fare riferimento alla tabella di Vigenère, molto simile
per costituzione alla tavola pitagorica. Solitamente si utilizza la riga orizzontale per scegliere la lettera del messaggio in chiaro e la riga verticale per scegliere la lettera della parola chiave. In questo modo, intersecando le due rette, si ottiene la lettera cifrata.

Tavola di Vigenere

Ritornando alla nostra cifratura, il messaggio finale sarà allora “UUGF OIPWLWMO”.

Il cifrario di Vernam: un metodo teoricamente infallibile

Telefono rosso
Il telefono rosso della hotline Mosca-Washington.

Nel 1917 Vernam creò un cifrario teoricamente indistruttibile, utilizzato intensivamente durante la Guerra Fredda, da spie della CIA e del KGB, ma anche dalla cosiddetta Linea Rossa, il famoso collegamento telefonico diretto Washington-Mosca. La chiave del cifrario di Vernam deve rispettare le seguenti proprietà:

  • La chiave deve essere lunga almeno quanto il messaggio;
  • La chiave deve essere una sequenza completamente casuale di caratteri;
  • La chiave non deve essere mai riutilizzata (One-Time Pad);

Pertanto il cifrario di Vernam risulta essere una generalizzazione del cifrario di Vigenère poiché la parola chiave risulta essere lunga quanto il messaggio e del tutto casuale. Pertanto crittografiamo la frase “I TOPI NON AVEVANO NIPOTI” con la chiave generata casualmente “IJFSIJKDPFJMKLBFDGKIA”.
Da ciò risulta che la parola criptata è “Q CTHQ WYQ PANHKYP SLVYBI”.
Questo sistema di codifica, è usato per ottenere i più alti gradi di sicurezza militare, ma ha
anche il grosso difetto di non essere impiegabile su vasta scala, o per messaggi
particolarmente lunghi. Inoltre, il sistema One-Time Pad, ha delle grandi limitazioni perché rende necessario scambiare ogni volta una chiave tramite un canale sicuro che, inoltre, deve essere del tutto casuale.

Enigma e Bomba: la sfida crittografica della WWII

La macchina Enigma fu sviluppata da Arthur Scherbius a partire dal 1918 e iniziò a metterla
in vendita nel 1923. Dopo la scoperta da parte dei tedeschi del fatto che le comunicazioni
navali della prima guerra mondiale erano state decriptate dalla Gran Bretagna anche tramite codici scoperti dopo l’affondamento di un incrociatore tedesco, il governo tedesco pensò che fosse arrivata l’ora di affidarsi a un sistema sicuro per criptare i propri messaggi importanti.
Tale macchina fu usata sia durante la Guerra Civile Spagnola sia durante gli scontri nel Mar
Mediterraneo fra la flotta inglese e quella italiana. I servizi segreti polacchi riuscirono a
decifrare Enigma, grazie sia a una debolezza del sistema cifrante, sia a una regola imposta per l’uso della macchina da parte dell’Ufficio tedesco preposto. L’intelligente polacca, guidato dal matematico Marian Rejewski, progettò una macchina apposita chiamata Bomba, per simulare il funzionamento di una macchina Enigma e ottenere da un messaggio cifrato, con tentativi sistematicamente reiterati, le chiavi di regolazione della macchina che aveva eseguito la cifratura e quindi poterlo decifrare a sua volta.

Bomba
Una riproduzione della macchina calcolatrice Bomba progettata dall’intelligence polacca con la collaborazione di brillanti menti internazionali.

I tedeschi però cambiarono il funzionamento di Enigma introducendo un insieme di cinque rotori, dei quali sempre solo tre venivano usati, ma diversi ogni giorno: questo moltiplicava per sessanta le combinazioni possibili e la bomba polacca non poteva affrontare un tale incremento di complessità.

Alan Turing
Fotografia di Alan Turing.

Questo progetto di crittoanalisi venne affidato agli inglesi nel 1939, alla vigilia dell’invasione nazista della Polonia, i quali trasferirono il quartier generale a Bletchley Park. Tra le principali menti brillanti che lavorarono ad un metodo per decrittare i messaggi di Enigma, ci fu Alan Turing.
Anche la macchina Enigma può essere considerata come un’estensione del metodo del cifrario di Vigenère munita di vari dischi rotanti. La differenza principale sta nel fatto che i dischi cifranti sono più di uno, posti tra loro “in cascata”, e che manca qui la chiave, detta anche verme, che era invece elemento essenziale nel cifrario di Vigenère. I tre dischi erano “cablati” (detti rotori) con 26 contatti per lato. Il primo disco ruotava di una lettera a ogni pressione di tasto, il secondo ruotava di una lettera ogni volta che il primo compiva un giro e il terzo ruotava di una lettera quando il secondo finiva un giro.

    Roberto Parisi

Lascia un commento

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.