Il crittogramma |
---|
Dal taccuino 1916 di Luigi Sacco una coppia di pagine dedicate a un cifrato con griglia di Fleissner (griglia quadrata di ordine dispari con casella nera al centro). Le pagine fanno parte di un capitolo intitolato “Sistemi a griglia” e datato 17 ott 1916, e sono le prime a riportare cifrati con griglia.
A differenza di altre pagine, qui Sacco non riporta esplicitamente alcuna soluzione, ma prospetta una possibile strategia di soluzione; avendo già esperienza nella decrittazione di trasposizioni a rettangolo irregolare, è naturale che Sacco tenti di trasformare la griglia 7x7 in una equivalente griglia rettangolare, in modo da poter applicare i metodi già collaudati.
Aggiornamento maggio 2020: Tobias Schrödel, noto esperto di crittografia storica, ha scoperto che la soluzione del cifrato è in realtà presente nella pagina, anche se mimetizzata: il secondo quadrato in alto, evidenziato in rosso, contiene infatti una serie di numeri da 1 a 48 che sovrapposti alla griglia forniscono l'ordine di lettura della soluzione. Riesaminando la pagina sembre che Sacco abbia scritto queste due pagine usando una griglia già risolta in precedenza come esempio per considerazioni sul modo di risolvere queste griglie. Nell'ottobre 1916 dunque era già in grado di risolvere queste griglie.
In altra pagina vengono trattati altri due crittogrammi cifrati con griglia quadrata 8x8.
Oggi questi crittogrammi possono essere decrittati in pochi secondi via software. Qui sotto mostro come ho decrittato questo cifrato con l'aiuto di un software tipo computer aided, e seguendo alcune idee esposte nel manuale di Sacco; viene poi mostrata una soluzione completamente automatica di Bart Wenmeckers basata su un algoritmo di hill climbing.
Una prima cosa che salta all'occhio è la presenza di due lettere rare in tedesco, come X e Y in basso a sinistra nella griglia; immediato il sospetto che siano le ultime due lettere del testo, usate come riempitivo per completare la griglia; ipotesi che si rivelerà corretta. Altra cosa singolare è la presenza della O con la umlaut, che suggerisce subito una parola come ÖSTLICH; inoltre si intravede nella parte in altro a destra la parola SUCHE o SUCHEN ma ci sono quattro S, tre U, quattro E e due N che possono fare al caso. Ci sono quindi decine di combinazioni da esaminare. Usando un software da me sviluppato in forma di pagina web, che simula una griglia con i suoi fori, sono riuscito a decrittare il cifrato. Punto di partenza come detto la parola suchen. Dopo diversi tentativi è emersa la soluzione riportata qui sotto, con una copia della pagina suddetta; i quattro colori indicano le quattro rotazioni della griglia: 0° in blu; 90° in verde; 180° in rosso; 270° in giallo. |
ESWURDENDREIPUNKTEGESEHENOTLLICHWEITESRSSUCHENXY ES WURDEN DREI PUNKTE GESEHEN OTLLICH WEITESRS SUCHEN XY Il messaggio ha diversi errori, OTLLICH invece di OSTLICH, una L di troppo, e una S mancante; e WEITESRS verosimilmente invece di WEITER, due S di troppo, forse usate come riempitivo, utili per mimetizzare la S di suchen? Insomma, errori accidentali o voluti per confondere il crittanalista? In ogni modo il testo tedesco corretto dovrebbe essere: Es wurden drei Punkte gesehen östlich weiter suchen XY che tradotto in italiano è: Furono avvistati tre punti, cercare ulteriormente verso est XY Curioso il fatto che una ingenuità come quella di concludere il messaggio con XY si accompagni con quelle che sembrano astuzie utili per confondere il crittanalista; in effetti avevo correttamente immaginato la parola östlich ma poi non c'era verso di trovarla nella griglia; e le tre S hanno notevolmente rallentato la ricerca della parola suchen. |
Oggi è possibile fare ancora meglio, una crittanalisi completamente automatica; la soluzione riportata a sinistra è quella dovuta a Bart Wenmeckers amministratore del gruppo facebook Cryptograms & Classical Ciphers. Nella figura a sinistra, i passi, coppie di righe, della soluzione: la prima riga rappresenta la griglia (C per foro, D per non-foro), il numero alla fine il punteggio, la seconda riga il tentativo di soluzione. Alla fine la soluzione coincide perfettamente con quella descritta qui sopra. Qui sotto il diagramma di flusso dell'algoritmo e la spiegazione, entrambe cortesemente fornite da Bart Wenmeckers. | |
|
Contesto storico | |
---|---|
Si tratta di crittogrammi austriaci o tedeschi? Come le suddette griglie 8x8 intercettate nello stesso periodo (ottobre 1916) anche questo sembra riferirsi a un evento della guerra navale, e le ipotesi sono le stesse: a) flotta austriaca in Adriatico; b) navi tedesche presenti nel Mar Nero. L`ipotesi b) tedesca sarebbe coerente con l'uso delle griglie a rotazione, usate frequentemente dai Tedeschi durante la guerra, mentre non risulta che griglie di questo tipo fossero usate dagli Austriaci. Risulta (p.es. Kahn, Codebreakers) che l'esercito tedesco tra la fine del 1916 e l'inizio del 1917 usò le griglie quadrate a rotazione e Sacco nel par. 157 del suo Manuale ricorda la decrittazione di cifrati di questo tipo (“Notevoli risultati si sono ottenuti contro i cifrari tedeschi, a trasposizione semplice e doppia, usati nei settori balcanici e nel traffico del Danubio.”) |