Storia della crittografiaCifrari polialfabetici
La tavola di Vigenère
Il trattato e la tavola di VigenèreCrittanalisiCrittanalisi automatica
Storicamente

Blaise de Vigenère pubblicò nel 1586 un trattato di cifre nel quale proponeva una cifra che coniugava la recta tabula dell'abate Tritemio con la parola chiave (contrasegno) proposta da G. B. Bellaso nella sua cifra del 1553; la tavola era quadrata 20x20 usando l'alfabeto latino classico, prese poi il nome di tavola di Vigenère e ne entrò nella letteratura crittografica una versione più semplice di quella pubblicata nel trattato; si tratta della più semplice tra le cifre di sostituzione polialfabetica, e forse proprio per questo la più conosciuta.

Esempio interattivo
Alfabeto AlfLat20
Chiaro+Verme
VIGENERE
Chiaro
Chiave
Cifrato

La tavola di Vigenère
Alfabeto latino classico 20 lettere : ABCDEFGHILMNOPQRSTVX
Alfabeto = ABCDEFGHILMNOPQRSTVX
A B C D E F G H I L M N O P Q R S T V X
A A B C D E F G H I L M N O P Q R S T V X
B B C D E F G H I L M N O P Q R S T V X A
C C D E F G H I L M N O P Q R S T V X A B
D D E F G H I L M N O P Q R S T V X A B C
E E F G H I L M N O P Q R S T V X A B C D
F F G H I L M N O P Q R S T V X A B C D E
G G H I L M N O P Q R S T V X A B C D E F
H H I L M N O P Q R S T V X A B C D E F G
I I L M N O P Q R S T V X A B C D E F G H
L L M N O P Q R S T V X A B C D E F G H I
M M N O P Q R S T V X A B C D E F G H I L
N N O P Q R S T V X A B C D E F G H I L M
O O P Q R S T V X A B C D E F G H I L M N
P P Q R S T V X A B C D E F G H I L M N O
Q Q R S T V X A B C D E F G H I L M N O P
R R S T V X A B C D E F G H I L M N O P Q
S S T V X A B C D E F G H I L M N O P Q R
T T V X A B C D E F G H I L M N O P Q R S
V V X A B C D E F G H I L M N O P Q R S T
X X A B C D E F G H I L M N O P Q R S T V

Procedura di cifra

Il metodo si può considerare una generalizzazione del cifrario di Cesare; invece di spostare sempre dello stesso numero di posti la lettera da cifrare, questa viene spostata di un numero di posti variabile, determinato in base ad una parola chiave, da concordarsi tra mittente e destinatario, e da scriversi sotto il messaggio, carattere per carattere; la parola chiave è detta anche verme, per il motivo che, essendo in genere molto più corta del messaggio, deve essere ripetuta molte volte sotto questo, come nel seguente esempio:

Testo chiaro - ARRIVANOIRINFORZIDOMANI Verme - VIGENEREVIGENEREVIGENER

Come detto sopra, Vigenère usa la tavola quadrata del Tritemio, qui a destra, composta da alfabeti ordinati spostati, ma con la novità di una parola (o frase) chiave da tenere rigorosamente segreta, possibilmente a memoria, senza scriverla da nessuna parte. Vediamo come si usa in pratica, con l'esempio visibile a destra.

Cominciamo dalla prima lettera del messaggio chiaro ("ARRIVANOIRINFORZIDOMANI") che è $A$, questa va combinata con la prima della chiave VIGENERE che è $V$; per far questo individuiamo la colonna sotto $A$, quindi scendiamo lungo la colonna fino alla riga corrispondente alla prima delle chiave, $V$ e all'incrocio troviamo la lettera da prendere come prima del cifrato: $$; per la seconda lettera del chiaro, $R$ si ripete la stessa procedura con la seconda del verme: $I$ ottenendo la seconda del cifrato $$ e così via fino alla fine del messaggio.

Testo chiaro - ARRIVANOIRINFORZIDOMANI Verme - VIGENEREVIGENEREVIGENER Testo cifrato -

Chi riceve il messaggio per decifrarlo usa semplicemente il metodo inverso; si cerca nella riga della prima lettera del verme $V$ la prima del cifrato: $$ e la si trova nella colonna sotto $A$ che è quindi la prima lettera del testo chiaro decifrato. E così via fino alla fine del messaggio.

Testo cifrato - Verme - VIGENEREVIGENEREVIGENER Testo chiaro - ARRIVANOIRINFORZIDOMANI

Pro e contro

Il vantaggio rispetto alle cifre mono-alfabetiche è evidente: la stessa lettera del testo chiaro non è sempre cifrata con la stessa lettera; e questo rende più difficile l'analisi statistica del testo cifrato e la decrittazione.

Paradossalmente questo vantaggio diventa un grave difetto agli occhi degli uffici crittografici dell'epoca che non usarono mai o quasi mai il Vigenère; infatti se un addetto alla cifra, distrattamente salta una lettera della chiave, tutto il resto del messaggio viene ad essere spostato di un posto e quindi diventa indecifrabile anche per il legittimo destinatario; ovviamente non ci vorrà molto a quest'ultimo per individuare la posizione dove inizia lo sfasamento, ma ci vorrà tempo per ripetere tutta la decifra tanto più lungo sarà stato il messaggio; e i dispacci diplomatici potevano essere molto, molto lunghi.

Inoltre il Vigenère cifra lettera per lettera e quindi ill dispaccio cifrato richiede tanti caratteri quanti ne ha il testo chiaro; può sembrare inevitabile, ma i nomenclatori prevedendo sillabari e dizionari, e cioè segni cifranti che nascondono due o più caratteri, di fatto dimezzano la dimensione del messaggio, al costo dell'aumento del numero di segni cifranti. Insomma sono un rudimentale ma efficace strumento per comprimere i dati.


Sicurezza della cifra

Il Vigenère ebbe per secoli fama di cifra indecifrabile, alquanto esagerata; in effetti la cifra è debolissima quando viene usata con chiavi brevi come parole o versetti o poesie, facili da tenere a memoria, come era raccomandato dallo stesso Vigenère; solo nel 1863 il colonnello prussiano F. Kasiski pubblicò un metodo generale di decrittazione, ma è verosimile che metodi simili fossero già noti agli uffici crittografici. In effetti dalle carte degli archivi risulta che era fortemente avversata dagli uffici cifra dei vari stati europei, che preferivano in genere i nomenclatori, più facili e veloci nell'uso e meno sensibili agli errori dei segretari addetti alla cifra. Fu piuttosto usato in ambito militare, come cifra da campo, per comunicazioni brevi, telegrafiche e non troppo importanti; un esempio è quello del cifrario militare tascabile, una variante del Vigenère, usato dall'esercito italiano all'inizio della Grande Guerra, mezzo secolo dopo la pubblicazione del metodo Kasiski.

Altri metodi di decrittazione seguirono, vedi per esempio: metodo dei minimi quadrati. Nonostante tutto è tuttora una delle cifre più conosciute, presentata insieme a quella di Cesare, proprio per la loro semplicità, come l'ABC della crittografia,


Matematicamente

Matematicamente il Vigenère si può definire in due modi almeno:

  1. Senza fare uso di tavole, equivale a un'addizione modulo $N$ dove $N$ è il numero di lettere dell'alfabeto (vedi aritmetiche modulari). Detta $x$ la posizione della lettera del chiaro nell'alfabeto usato (A = 0, B = 1 ...) e detta $v$ la posizione della corrispondente lettera del verme, la $y$ posizione della lettera cifrante è: $$ y = x + v \pmod N $$
  2. Senza usare l'aritmetica l'operazione di cifra può essere vista come una sostituzione di una lettera chiara $L$, usando un verme/chiave $V$, con una lettera cifrata $C$ , come definita dalla tavola qui accanto, che si può scrivere come funzione a due valori: $$ C = f(L, V) $$ o come operazione binaria: $$ L \oplus V = C $$ dal punto di vista dell'algebra astratta, si tratta di un gruppo che, come abbiamo visto, ha come componenti un alfabeto e un'operazione di cifratura. Che si tratti di un gruppo nel matematico del termine è assicurato dal fatto che gode delle proprietà richieste:
    1. L'operazione tra due lettere (una del messaggio e una della chiave) è chiusa nel senso che il risultato è sempre un elemento dello stesso insieme, che qui è l'alfabeto usato;
    2. esiste l'elemento neutro, la lettera $A$;
    3. ogni elemento (lettera) ha un elemento inverso, per esempio la lettera $A$ ha inverso $$, a conferma si osserva che nella tavola, all'incrocio tra riga e colonna corrispondente a $A \oplus $ c'è appunto la $A$, l'elemento neutro.
    4. L'operazione $\oplus$ ha la proprietà associativa: $ a \oplus (b \oplus c) = (a \oplus b) \oplus c $;
    5. ... e anche quella commutativa: $ a \oplus b = b \oplus a $, detto in altro modo si può cambiare impunemente sia l'ordine delle operazioni, sia l'ordine degli operandi.


    Riferimenti bibliografici
    • Blaise de Vigenere, Traicté des chiffres ou secrètes manières d'escrire, Abel L'Angelier, Paris, 1587 − 1587, pag. 49 - 50 → eBook
    • Luigi Sacco, a cura di Paolo Bonavoglia, Manuale di Crittografia, IV edizione, Youcanprint, Lecce, 1947 − 2014, “Tavola quadrata, detta di Vigenère”, pag. 22 - 24 → info
    Siti e pagine web