Quello che segue è un articolo, da me realizzato, pubblicato dalla EDIS - edizioni specializzate sulla loro rivista ESSECOME.

Breve storia della criptografia (parte terza)

gli Arabi
Anche la civiltà araba ha contribuito, seppur in modo episodico, alla storia della criptografia.

Si hanno notizie di un libro sull'argomento scritto nell'ottavo secolo da un matematico arabo, il cui nome sembra esso stesso un testo cifrato: Abu 'Abd al-Rahman al-Khalil ibn Ahmad ibn 'Amr ibn Tammam al Farahidi al-Zadi al Yahmadi, ispirato dalla risoluzione dei criptogrammi scritti in greco da funzionari dell'impero Bizantino.

La soluzione fu trovata seguendo il metodo, ancor oggi applicato, di ipotizzare le prime parole che compongono il messaggio, e, basandosi su tale ipotesi, verificare la decifrabilità dell'intero testo.

Un altro studioso arabo Abd al-Rahman ibn Khaldun, in un suo libro di storia ci narra dell'uso di nomi di profumi, frutti, uccelli e fiori per indicare lettere dell'alfabeto oppure l'uso di simboli al posto delle lettere.

Tali metodi di criptografia erano in uso presso i militari ed i funzionari preposti alla raccolta delle tasse.

Ma la generale mancanza di continuità degli stati islamici e la conseguente assenza di strutture pubbliche ed ambasciate presso gli altri stati, fu di ostacolo alla nascita di una cultura consolidata nella criptografia.

il Vecchio Continente Il contrario succedeva nel vecchio continente, dove la chiesa negli anni del medioevo era una organizzazione articolata, presente in tutte le nazioni, attivamente impegnata in affari ed in politica.
Tutte queste attività richiedevano la disponibilità di canali di comunicazioni segreti e di metodi per la criptografia dei messaggi.
Roger Bacone Ecco quindi il frate inglese, Roger Bacone, che nel 1200 descrive metodi per celare messaggi utilizzando abbreviazioni, alfabeti inventati, e codici veri e propri, in cui, per esempio, il nome di una città è sostituito con quello di un animale. Sua è l'affermazione che: "è pazzo chi scrive una cosa segreta in maniera tale che non sia nascosta agli altri".
Gabrieli di Lavinde ed
il primo Nomenclatore
Nel secolo successivo Gabrieli di Lavinde, su richiesta di Clemente VII, creò quello che è considerato il primo nomenclatore di cui si ha notizia.

Si tratta di uno strumento che comprende un metodo di criptografia basato sulla sostituzione, ed un codice, cioè una lista di parole a cui ne corrispondono altre da sostituire nel testo in chiaro.
Con le inevitabili modifiche, il nomenclatore rimase in uso per circa mezzo millennio, anche se nel frattempo furono sviluppati metodi migliori, nessuno dei quali aveva però quella stessa facilità d'uso che ne decretò il successo.

Quello che segue è un esempio di nomenclatore formato da tre parti: l'alfabeto di sostituzione, la lista dei codici e la lista delle parole nulle.
Quest'ultime sono parole che non hanno nessun significato e che vengono inframmezzate nel messaggio per rendere più complicata l'opera dei criptoanalisti.
Nell'alfabeto di sostituzione, per rendere le cose più difficili (da copiare e da ricordare) si possono usare, al posto delle lettere, dei simboli (A = R, B = ^, C = _, ecc.).

Alfabeto

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

P Q L A M Z X K S O W I E J D N C B V H F U R Y T G

Codice

Argento         Acqua

Oro             Cane

Preparare       Erba

Roma            Ferro

Trasportare     Fiume

Uomini armati   Gatto

Venezia         Rame

Parole nulle

Piombo, stagno, fuoco, terra, gallo.

Messaggio da inviare

Preparare venti uomini armati per trasportare l'argento da Roma a Venezia.

Applicando il codice si ottiene:

Erba venti Gatto per Fiume l'Acqua da Ferro a Rame.

Aggiungendo le parole nulle Stagno e Gallo si ottiene:

Erba Gallo venti Gatto per Stagno Fiume l'Acqua da Ferro a Rame.

Applicando l'alfabeto di sostituzione si ottiene:

Erba Gallo venti Gatto per Stagno Fiume l'Acqua da Ferro a Rame.

MBQP XPIID UMJHS XPHHD NMB VHPXJD ZSFEM I PLCFP AP ZMBBD P BPEM.

Come si vede il testo da inviare viene manipolato due volte, nella prima passata viene codificato (ad ogni parola si sostituisce il corrispondente codice), nella seconda passata viene criptografato.

Ciò comporta che se anche il criptoanalista riesce a scoprire il metodo di criptatura, si trova comunque a dover risolvere la codifica prima di aver terminato il suo lavoro.

Inoltre questo sistema è modulare, si può cambiare il metodo di cifratura (p.e. un alfabeto diverso a seconda del giorno in cui viene inviato il messaggio), mantenendo il codice; oppure si può modificare il codice (p.e. a seconda del destinatario), mantenendo costante il metodo di cifratura.

Con il passare del tempo la parte di codice dei nomenclatori divenne sempre più grande fino a contenere molte migliaia di parole.

Nomenclatore ad una parte Per rendere agevole la consultazione, sia da parte di chi codificava il messaggio, che di chi lo decodificava, era in uso l'abitudine di elencare in ordine alfabetico le parole da codificare e di scegliere le parole sostitutive ancora in ordine alfabetico(Argento, Oro, Preparare,... e Acqua, Cane, Erba,...).

Questo sistema fornisce però al criptanalista un'informazione in più nel suo lavoro, in quanto la conoscenza di parte del sistema di codifica permette di risalire più facilmente alle restanti parole.
Infatti se è risaputo che Rame corrisponde a Venezia, sicuramente Zinco non può corrispondere a Milano in quanto, secondo l'ordine alfabetico, Zinco viene dopo Rame, ma Milano viene prima di Venezia.

Antoine Rossignol ed
i Nomenclatori
a due parti
Nel 1600 un francese, Antoine Rossignol, evidenziò questa debolezza e propose la realizzazione di una codifica in cui non vi fosse più un ordinamento tra le parole.

Per rendere pratico l'utilizzo di un tale metodo è sufficiente realizzare due elenchi, nel primo sono elencate in ordine alfabetico le parole da codificare, nel secondo sono elencate in ordine alfabetico le parole codificate.

Ovviamente nella fase di codifica si possono utilizzare dei numeri al posto di parole e quindi, tornando al nostro esempio, far corrispondere ad Argento 100, ad Oro 150, a Preparare 200 e così via.
Il metodo di criptatura sarà poi scelto in modo da poter lavorare al meglio con le cifre.

i Codici Commerciali
utilizzati con il telegrafo
Subito dopo l'avvento dell'uso del telegrafo, furono stabiliti dei codici commerciali con lo scopo di ridurre il numero di caratteri necessari per trasmettere un messaggio, al fine di contenere i costi.

Per gli affaristi che avevano necessità di mantenere segrete le comunicazioni, fu facile aggiungere una qualche forma di criptografia che garantisse la riservatezza del messaggio.

Un metodo molto semplice consiste nello scambiare di posto le cifre del codice, applicando quindi una trasposizione.

Se il messaggio codificato è composto dai codici 1024 3201 2501 1413, riarrangiando le cifre secondo la sequenza 3 2 4 1 (che costituisce la chiave secondo cui effettuare la trasposizione), si ottiene 2041 0213 0512 1431.
Esempio di Trasposizione
In alternativa, o in aggiunta, si può applicare una chiave da sommare (senza considerare il riporto) ai codici.
Quindi se la chiave è 3812 si ha:

1024 + 3201 + 2501 + 1413 +

3812 = 3812 = 3812 = 3812 =

4836   6013   5313   4225

Altre variazioni sul tema consistono nello scrivere, orizzontalmente, i codici in quattro file, che poi vengono rilette verticalmente.
Quindi il messaggio 1024 3201 2501 1413 3256 1298 7854 4315 2378 6745 1598 8375 7816 6235 4579 scritto come:

1024  3201  2501  1413

3256  1298  7854  4315

2378  6745  1598  8375

7816  6235  4579 (0000 per riempire lo spazio vuoto)
Esempio di Trasposizione

diventa 1327 0238 2571 4686 3166 2272 0943 1855 2714 5855 0597 1489 1480 4330 1170 3550.

Come si vede da questi esempi, la bontà del nomenclatore risiede proprio nella sua facilità di uso, che permette di eseguire le operazione di cifratura e decifratura, rapidamente e con il solo ausilio di carta e penna.

E questo rimane vero anche nel caso in cui, operando con un codifica a numeri, si devono eseguire operazioni di trasposizione o di somma, che complicano molto la fase di criptoanalisi, ma che costano relativamente poca fatica al mittente ed al destinatario del messaggio.

Indice


L'indirizzo di questa pagina è: www.sancese.com/Cripto3.html

Ultimo aggiornamento effettuato il  08 - Jan - 1998