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

Blaise de Vigenère pubblicò nel 1586 un trattato di cifre nel quale partendo dalla cifra di Bellaso del 1553 proponeva una tavola quadrata come quella dell'abate Tritemio da usarsi con una parola chiave come proposto da Bellaso. Con il nome di tavola di Vigenère è poi entrata nella letteratura crittografica una versione semplificata di quella pubblicata nel trattato. Si tratta della più semplice cifra di sostituzione polialfabetica, e proprio per la sua semplicità ha goduto per secoli di grande popolarità fino ad essere considerata indecifrabile, fama piuttosto esagerata, essendo più debole di altre cifre polialfabetiche precedenti come il disco di L.B. Alberti, o delle cifre del Bellaso essendo più ordinata. Tale fortuna è durata fino a molti decenni dopo che era stato pubblicato un primo metodo di decrittazione: quello del Kasiski; e altri metodi di crittanalisi sono possibili.

Va detto che dal Vigenère possono ricavarsi cifrari molto più sicuri usando alfabeti disordinati, e soprattutto chiavi molto lunghe, che al limite portano al cifrario di Vernam, considerato il cifrario teoricamente perfetto.

Il metodo
tavola
Alfabeto

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 - ARRIVANOIRINFORZI Verme - VERMEVERMEVERMEVE Testo cifrato - VVIUZVRFUVDRWAVUM

Il testo cifrato si ottiene spostando la lettera chiara di un numero fisso di caratteri, pari al numero ordinale della lettera corrispondente del verme. Di fatto si esegue una somma aritmetica tra l'ordinale del chiaro (A = 0, B = 1, C = 2 ...) e quello del verme; se si supera l'ultima lettera, la Z, si ricomincia dalla A. Matematicamente il Vigenère si riduce a un'addizione modulo 26 (vedi aritmetiche finite).

Per semplificare questa operazione Vigenère usa la tavola quadrata del Tritemio, composta da alfabeti ordinati spostati. Volendo ad esempio cifrare la prima R di ARRIVANO si individuerà la colonna della R, quindi si scenderà lungo la colonna fino alla riga corrispondente della corrispondente lettera del verme (qui E); la lettera trovata all'incrocio è la lettera cifrata (qui V); la seconda R invece sarà cifrata con la lettera trovata sulla riga della R di VERME, e cioé con la I.

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.

Chi riceve il messaggio per decifrarlo deve semplicemente usare il metodo inverso (sottrarre invece che sommare); riferendosi all'esempio di sopra si avrà:

Testo cifrato - VVIUZVRFUVDRWAVUM Verme - VERMEVERMEVERMEVE Testo chiaro - ARRIVANOIRINFORZI

si potrà decifrare la seconda V ricercandola nella riga della corrispondente lettera del verme, la E; la colonna dove si trova la V ha al primo posto in alto la lettera chiara, la R.

Usando le finestre qui sotto si può cifrare un qualsiasi testo con una data chiave; si può poi provare a decrittarlo alla pagina crittanalisi automatica del Vigenère


Esempio interattivo
Testo chiaro
(max 255 caratteri)

Chiave
Testo cifrato
(max 255 caratteri)

ATTENDOORDINI


Riferimenti bibliografici
Siti e pagine web