Crittografia medievale e codici non decifrati

Quali erano i metodi di crittografia usati nel Medioevo? Ci sono alcune crittografie ancora non decifrate?

Marco Fusani
17 dicembre 2004
Alcuni codici crittografici dall'antichità al XVI secolo

Esaminaniamo cinque metodi crittografici classici.

  1. L'Atbash

    Si tratta di un codice ebraico. Per semplicità consideriamo il seguente alfabeto di 26 lettere italiane:

    abcdefghilmnopqrstuvzòàùéè

    L'alfabeto viene diviso in due parti uguali, e la seconda viene scritta al contrario sotto la prima così:

    abcdefghilmno
    èéùàòzvutsrqp

    Per codificare un messaggio si sostituisce una lettera con la lettera che le corrisponde nell'altra riga. Il processo di decodifica è identico.
    Per esempio chi era scontento, e temeva di manifestarlo, invece della Frase

    non ne po ssiamo pr oprio più di quest o governo

    inviava

    qpq qò oplltèrp ompomtp otc àt nhòlip vpgòmqp

  2. Il codice di Cesare

    L'idea era quella di sostituire ogni lettera con quella che segue tre passi dopo, muovendosi sull'alfabeto in modo ciclico.

    Utilizziamo, come modello, il seguente alfabeto, che chiamiamo ALFA:

    !"#$%&()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRST
    UVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~òàùè飧

    ALFA ha 101 caratteri. Il primo carattere (numero 1) è ! mentre il carattere numero 101, l'ultimo a destra, non si vede perché è lo spazio.

    Si deve pensare ai caratteri come se fossero disposti su un anello chiuso, dove ! e lo spazio sono adiacenti. Se si sostituisce ogni simbolo con quello che sta a tre passi di distanza (in senso orario) si ha che ! va in $, " va in %, ..., e lo spazio va in #.
    Con quest o metodo la nostra Frase diventa:

    qrq#qh#srvvldpr#sursulr#sl£#gl#txhvwr#jryhuqr

    Possiamo ruotare l'insieme delle lettere di un altra quantità, diversa da 3. Se per esempio facciamo 93 passi otteniamo:

    fgf~f]~hgkkaYeg~hjghjag~hay~\\a~im]klg~_gn]jfg

    L'idea comune agli esempi 1 e 2 consiste nel sostuire una lettera dell'alfabeto con un'altra. Si applica quindi una permutazione dell'alfabeto. Un codice di quest o genere viene detto codice di sostituzione monoalfabetica.

  3. La scitala spartana

    La scitala è interessante anche perché si tratta di uno dei primi strumenti creati per cifrare i testi. Come si vede in figura, si avvolge un nastro intorno a un cilindro, e si scrive lungo l'asse dello stesso. Svolgendo il nastro le lettere, se lette di seguito, formano una frase senza alcun senso.
    La codificazione cambia a seconda di quante volte si avvolge il nastro. Costruiamo un modello matematico semplificato della scitala. Supponiamo di avvolgere il nastro 9 volte. Ecco allora quello che accade nel processo di cifratura:

    1) La Frase (che ha 45 lettere) viene divisa in blocchi di 9 lettere, scritti in righe successive (se il testo contiene un numero di caratteri non divisibile per 9, si aggiungono spazi alla fine) :

     non ne po ssiamo pr oprio più di quest o governo 
    Questa è la situazione del nastro avvolto.

    2) Svolgere il nastro corrisponde a scrivere il messaggio per colonne. Si ottiene così il testo in cifra:

    nso oospd nirig ai onmoqveo ue perppisnorùto

    Se codifichiamo la Frase con blocchi di 10 lettere otteniamo una cifratura completamente diversa:

    nsr voiiqenaour m ennopsoe it pùo pr oodg spio

    La scitala, pur nella sua ingenuità, contiene una idea nuova rispetto ai codici di sostituzione: permutare le posizioni delle lettere. Il processo di permutare le posizioni viene detto trasposizione. I migliori risultati si ottengono alternando sostituzioni e trasposizioni.

  4. La steganografia

    La cosa più furba, forse, per impedire che persone non autorizzate leggano i nostri messaggi segreti è occultare il messaggio all'interno di un altro, apparentemente innocuo.
    Per esempio A e B possono convenire di leggere i testi che si scambiano tra di loro a righe alterne. Il messaggio sottostante, se letto in quest o modo, racchiude in sé un secondo messaggio:

    Non ne po ssiamo pr oprio più
    degli attacchi dei nemici
    di quest o governo. Cerchiamo
    di impedire che essi tentino
    di farlo cadere!

    Il primo libro di crittografia, Polygraphiae libri sex (Sei libri di poligrafia), fu scritto da Johannes Trithemius (1462-1516). La prima pagina del primo volume comincia così:

     a     Deus		      a     clemens
    b Creator b clementissimus
    c Conditor c pius
    ....
    Vi sono in quest o libro migliaia di accoppiamenti lettera - parola. Si formano frasi con queste parole, e chi le riceve risostituisce le lettere alle parole.
    Dunque "Creator Deus Conditor pius clemens" diventa "bacca".

    Nel 1499 Trithemius scrisse Steganographia, in tre libri. Nei primi due libri vengono esposti sitemi atti a celare messaggi all'interno di frasi, a volte oscure. Nella proposizione:

    PARAMESIEL OSHURMI DELMUSON
    THAFLOIN PEANO CHARUSTREA MELANY LYAMUNTO...

    La prima parola PARAMESIEL denota il metodo crittografico usato nel seguito. In quest o caso la convenzione è che si mettano di seguito le parole di posto pari (la seconda, la quarta, la sesta ...) :

    OSHURMITHAFLOINCHARUSTREALYAMUNTO...

    e nella parola ottenuta si leggano solo i caratteri di posto pari. Risultato:

    SUMTALICAUTELAUT... ovvero SUM TALI CAUTELA UT...

    Così come le tecniche di sostituzione e trasposizione (sia pure realizzate in modi allora impensabili) sono al centro della crittografia moderna, anche la steganografia è attualissima. I messaggi segreti possono essere celati ovunque nel mondo digitale: nelle immagini che girano a terabyte sulla rete, nei file compressi, negli MP3, nel rumore di fondo di un canale. Nel 2002 alcuni importanti giornali americani hanno diffuso la notizia che al-Queda inviava centinaia di messaggi nascosti in immagini digitali, presenti su siti assai noti. Esistono anche applicazioni difensive della steganografia, come il watermarking. Il watermarking consiste nel nascondere le informazioni riguardanti il copyrigth nei documenti accessibili in rete. In sostanza, tra un pixel e l'altro della immagine rubata e fraudolentemente pubblicata si trova il nome dell'autore!

  5. La griglia di Cardano

    Si tratta di un altro metodo steganografico dovuto a Girolamo Cardano (1501-1576).
    Bisogna predisporre una griglia con un certo numero di righe e colonne, dello stesso formato del foglio su cui scriviamo. In posizioni date la riga ha dei buchi. La griglia, con i suoi buchi, è condivisa dalla persona cui inviamo il messaggio. Sul foglio di carta scriviamo un testo qualsiasi, in modo tale che sovrapponendo al foglio la griglia, il vero messaggio si legga attraverso i buchi.
    Per esempio supponiamo di avre una griglia con 9 righe e 5 colonne. Rappresentiamo gli spazi pieni con - e i buchi con O:

     ----- --O-- ----- --O-- ----- ----- ---O- ---O- ----O 
    Seguendo la formattazione scriviamo la Frase:
     NON NE POS SIAMO  PROP RIO P IU DI QUES TO GO VERNO 
    Chi riceve sovrappone la griglia e legge
     ----- --P-- ----- --R-- ----- ----- ---E- ---G- ----O 

Codici resistenti

Al termine della seconda guerra mondiale, dopo avere lottato, con successo, contro i codici tedeschi e giapponesi, gli esperti di crittoanalisi si dedicarono per divertimento a rompere i codici antichi conosciuti, e ci riuscirono in quasi tutti i casi. Due notevoli eccezioni sono costituite dal Terzo libro di Trithemius e dal Codice di Voynich.

Il terzo libro di Trithemius

Nella prefazione al libro III della Steganographia, Trithemius annuncia che il suo scopo è quello di offrire, in maniera segreta, un metodo per trasmettere testi a distanza, senza l'uso di parole, libri o messaggeri. Nel volume vi sono strani elenchi di numeri e simboli astrologici. Sotto è riportata parte di una pagina:

Per secoli gli studiosi hanno discusso sulla possibilità che in quest o volume non vi fosse alcun codice cifrato, ma venissero invece rappresentate operazioni alchemiche di interesse per gli occultisti. Finalmente nel marzo del 1998 Jim Reeds della AT&T Labs ha pubblicato la soluzione. In realtà, Thomas Ernst, un professore di tedesco, aveva risolto il problema, o almeno parte di esso, alcuni anni prima, quando era ancora studente. Con notevole ingegno, perseveranza, intuizione e fortuna, Ernst e Reeds sono riusciti a scoprire la chiave nascosta ed a rivelare il messaggio. L'inizio della soluzione fu la scoperta che i numeri 650, 649, 648... rappresentavano un alfabeto di 22 lettere A, B, C... Alla fine si è ottenuto un testo abbastanza confuso, come se alcune parti si fossero perdute; quello che rimane è formato da frasi comuni in latino e tedesco della quali, per esempio, una suona più o meno cosí: "il latore di questa lettera è un brutto furfante ed un ladro". Il libro è stato pubblicato per la prima volta, postumo, nel 1606: sono passati 392 anni prima che si riuscisse a decifrarlo. Non male vero?

Il Codice di Voynich

Si tratta di un piccolo volume (23 · 18 cm) rilegato di 116 fogli, dei quali ne rimangono 102, senza titolo e senza indicazione dell'autore. Attualmante è conservato nella Beinecke Rare Book Library della Università di Yale. Il testo è scritto in una calligrafia uniforme ed elaborata, con molte illustrazioni assai curate e belle. A prima vista la lingua sembrerebbe latino, ma di latino non c'è nemmeno una parola. Non ci sono correzioni, sembra uscito perfetto dalla mente dello scrittore. Dalle illustrazioni pare che tratti di botanica, astronomia, biologia, cosmologia, farmacia e alchimia.


Foglio del Codice di Voynich

Il codice è stato trascritto in caratteri latini moderni mediante un alfabeto creato appositamente, detto EVA (European Voynich Alphabet). Sotto si vede un esempio di trascrizione:


Testo originale

fachys.ykal.ar.ataiin.shol.shory.cthres.ykor.sholdy
sory.cthar.or.y.kair.chtaiin.shar.are.cthar.cthar.dan
syaiir.sheky.or.ykaiin.shod.cthoary.cthes.daraiin.sa
o'oiin.okeey.oteor.roloty.cth*ar.daiin.otaiin.or.okan
sair.y.chear.cthaiin.cphar.cfhaiin -------- ydaraishy

Trascrizione del testo originale in EVA

Il prezioso ed arcano volumetto è stato scoperto dall'antiquario americano Wilfrid Vounich nel 1912. Secondo una lettera del Seicento che conteneva, sarebbe stato acquistato da Rodolfo II di Bavaria nel 1586 per una ingente somma (attualmente si tratterebbe - dicono - di circa 130.000 dollari). Il re era molto interessato all'occulto, e probabilmente riteneva che il testo contenesse importanti rivelazioni, scritte in modo da essere incomprensibili agli incolti. Sta di fatto che, malgrado diversi tentativi, nessuno nel 17° secolo riuscí a decifrarlo. Poi scomparve, per riapparire due secoli e mezzo dopo nelle mani dell'antiquario.

Nel 1921 il filosofo William R. Newbold sostenne la fantasiosa idea che il manoscritto fosse opera di Roger Bacon (XIII secolo), ma la sua analisi si provò infondata. Negli anni quaranta i crittografi dilettanti Joseph M. Feely e Leonell C. Strong tentarono senza successo un attacco basato sui codici di sostituzione. Venne considerato un testo in ucraino senza le vocali da John Stojko nel 1978, e uno scritto cataro nel 1987 dal medico Leo Levitov. In tutti i casi le traduzioni apparirono completamente slegate dalle illustrazioni e incoerenti.

Una delle ipotesi fatte è che il Codice Voynich sia un falso. Un testo cioè scritto ad arte, senza alcun significato, affascinante per le illustrazioni e la calligrafia, crato per essere venduto ad un ricco credulone, con la promessa di chissà quali verità nascoste, delle quali sarebbe diventato unico possessore colui che ne avesse scoperto la chiave.

Il testo però, ad una analisi statistica, appare avere caratteristiche assai particolari. Per esempio le parole con 5 o 6 caratteri sono le più frequenti, e la frequenza di quelle più lunghe o più corte diminuisce rapidamente e in modo simmetrico all'allontanarsi dal picco. Invece nelle lingue umane la distribuzione è più ampia e soprattutto è asimmetrica, a favore delle parole relativamente lunghe. Come un falsario medioevale avrebbe potuto ottenere un effetto del genere? Non certo accostando simboli a caso.

Recentemente Gordon Rugg ha dimostrato che è possibile ottenere un risultato simile utilizzando le griglie di Cardano. Rugg ha costruito effettivamente le griglie, scrivendo manualmente i testi. Vi sono nel manoscritto di Voynich altre proprietà statistiche più complesse. Per provare che anche queste caratteristiche possono emergere in documenti fabbricati ad hoc, Rugg e i suoi collaboratori stanno usando un apposito sofware per produrre su computer grandi quantità di testo, con griglie e tabelle differenti.
I lavori di Rugg tendono solo a dimostrare che il Codice Voynich potrebbe essere un falso. Questo tipo di ricerca non può arrivare ad escludere la possibilità che si tratti di un opera in codice. Il mistero rimane!

Riferimenti

Per la storia della crittografia:

  • Andrea Sgarro, Codici segreti, Oscar Mondadori Milano, 1989
  • Simon Sing, Codici & Segreti, Rizzoli, 2000

Per il codice di Voynich:

  • Gordon Rugg, Il mistero del manoscritto di Voynich, "Le Scienze", agosto 2004, pag. 90-95

Umberto Cerruti Dipartimento di Matematica, Università di Torino

© Copyright SISSA - Scuola Internazionale Superiore di Studi Avanzati - Trieste (Italy) - 2001-2011