Storia della CrittografiaCifrari poligrafici
Il Playfair Cipher
Cifrari Collon - Cifra Campale Germanica

Playfair cipher, interattivo
Matrice 5x5
chiaro
chiave
UEATH
SONBC
DFGIJ
KLMPQ
RVXYZ
RINFORZIARIVANODOMANIX
YDOGSVYJUXFYNGSFNLNGGY

Il Playfair cipher fu inventato dal noto fisico inglese Sir Charles Wheatstone(1802-1875), mentre il nome di Playfair deriva da colui che divulgò questa cifra nelle alte sfere governative.

Lyon Playfair barone di St.Andrews, mostrò per la prima volta questo sistema nel 1854 durante una cena organizzata da Lord Granville alla presenza di Lord Palmerston (1784-1865) allora ministro degli Esteri. La speranza di Playfair era quella di far utilizzare questo cifrario durante la guerra di Crimea ma il sistema fu effettivamente adottato dall'esercito britannico solamente a partire dalla guerra Boera.

Il Playfair Cipher è una forma di cifrario poligrafico, lavorando con gruppi di due lettere (bigrammi o digrammi); ogni digramma è cifrato con un altro digramma e quindi la lunghezza del crittogramma è uguale a quella del testo chiaro, fatta salva l'eventuale aggiunta di un carattere come riempitivo, se il testo ha lunghezza dispari.


Il Playfair usa una matrice 5x5 per un totale di 25 caselle; usando l'alfabeto internazionale di 26 lettere, se ne deve eliminare una sostituendola con una dal suono simile; in questo esempio viene sacrificata la W sostituita con una U. Ovviamente la matrice deve essere segreta e quindi l'alfabeto non può essere ordinato come nella scacchiera di Polibio, ma va in qualche modo rimescolato. Si può usare il classico sistema di scegliere una parola chiave che andrà scritta all'inizio riga dopo riga ed eliminando i caratteri già presenti; dopo la chiave si scrivono le rimanenti lettere in ordine alfabetico.

Una volta generata questa matrice quadrata la cifratura avviene nel seguente modo:

  1. Il testo chiaro viene suddiviso in gruppi di due lettere;
  2. per ogni gruppo si cercano nella matrice le due lettere e si sostituiscono con altre due secondo le seguenti regole:
    • se le due lettere sono in colonne e linee diverse, si prendono le due che fanno rettangolo con esse, cominciando da quella che si trova in linea con la prima lettera del gruppo chiaro;
    • se le due lettere si trovano sulla stessa riga, si sostituiscono con le due lettere che le seguono a destra; se una lettera si trova sulla quinta colonna a destra, si prenderà come successiva la prima lettera a sinistra della stessa linea;
    • se le due lettere sono sulla stessa colonna, si prendono le due lettere sottostanti; se una lettera è nell'ultima riga, si prenderà come seguente la lettera che sta nella prima riga della stessa colonna;
    • se le due lettere dono uguali se ne elimina una, come in questo esempio che elimina preventivamente tutte le doppie che è sempre una buona pratica crittografica; in alternativa si potrebbe inserire una lettera rara al posto di una delle due.
Esempio

Si può provare questo metodo nella finestra a destra; dato il messaggio “Rinforzi arrivano domani” si ottiene la seguente scomposizione in blocchi da 2:

RI NF OR ZI AR IV AN OD OM AN IX

Il messaggio cifrato risultante è il seguente:

YD OG SV YJ UX FY NG SF NL NG GY
Sicurezza della cifra

Questa cifra è abbastanza sicura, ma come sempre molto dipende da come viene usata; una chiave troppo breve lascia buona parte dell'alfabeto ordinato nella matrice; una chiave più lunga ma consistente di una parola o frase comune, fa sì che le lettere più frequenti della lingua tendano a collocarsi sulle prime due linee, mentre quelle rare finiscono per lo più nell'ultima linea. Questo è un grosso aiuto per il crittanalista. Come al solito sarebbe molto più sicuro estrarre a sorte le lettere della matrice, ma si perderebbe la comodità operativa della chiave facile a ricordarsi a memoria.

Un messaggio cifrato con il Playfair è come di consueto tanto meno sicuro quanto più è lungo.

Riferimenti bibliografici
Siti e pagine web
L'alfabeto deve essere di 25 caratteri; se così non è, viene recuperato l'alfabeto predefinito. X
Il testo chiaro può essere scritto anche in minuscole, con spazi e segni di interpunzione. In ogni caso per la cifratura viene convertito in maiuscolo e ripulito di ogni carattere che non compaia nell'alfabeto definito qui sopra. X
Per il momento non viene applicata la regola delle doppie; se compaiono vengono cifrate con la lettera successiva nella riga, venendo questa regola prima di quella della colonna. X
In effetti questa regola non appare necessaria; le doppie possono essere cifrate secondo la regola della stessa riga, dando però luogo a una doppia anche nel cifrato; probabilmente è stata aggiunta per non fornire questo appiglio al crittanalista. X