Antonio Marzi
Munito di una radio ricetrasmittente dalla portata di 500 miglia, una MK II del 1943, fu paracadutato nel veronese, in territorio sotto occupazione tedesca e di lì si spostò nella zona di Udine ove raccolse e trasmise agli inglesi molte informazioni di carattere militare. Per questo scopo fu dotato di un sistema cifrante con cui poter nascondere il significato dei suoi messaggi radio ai tedeschi, nel caso questi li avessero intercettati.
La cifra di Marzi si basa su un elegante sistema di composizione ed occultamento della chiave di ogni singolo messaggio. Si parte da un alfabeto convenzionale creato in questo modo: dall'alfabeto internazionale ordinario si tolgono dalla loro posizione le lettere della parola RENATO che viene spostata in fondo all'alfabeto. Tutte le altre lettere hanno un equivalente simbolico: una parola presa dalla poesia di Aleardo Aleardi «Corradino di Svevia» secondo lo schema:
Marzi cifrò il messaggio numero 36 con la chiave: GENTILVISOCHIOMA,
in cui GENTIL corrisponde alla lettera L, VISO a K e CHIOMA ad H. Scelse
arbitrariamente altre due lettere [R ed E] per formare il seguente blocco:
RLKEH, a cui sommò il numero 44739 [ottenuto mediante complemento a 10 della
sua matricola nella Regia Marina, l'ultima cifra esegue il complemento a 9.
La matricola era: 66370]. A partire da R, nell'alfabeto convenzionale, scese
di quattro posizioni ed ottenne la T, poi, in successione L diventò S, K
diventò V, E diventò T ed infine H diventò U. TSVTU è la prima chiave
cifrata che Marzi inserì come quarto blocco del cifrato. Analogamente
procedette per calcolare la chiave da aggiungere alla fine del cifrato:
LEKHR diventò SOVKF.
A questo punto vediamo la tecnica per cifrare e di converso per decifrare.
Il messaggio chiaro viene scritto orizzontalmente, lettera dopo lettera,
nelle righe di una matrice o tabella che dir si voglia, la cui larghezza,
espressa come numero di colonne, è pari alla lunghezza della chiave. L'altezza della matrice, espressa in
righe, è data dal quoziente tra la lunghezza del messaggio e la lunghezza
della chiave. Se il risultato è zero, allora la figura è un parallelepipedo
completo, altrimenti il resto della divisione ci dice quante altre caselle
bisogna aggiungere dopo l'ultima riga. Si scrive riga per riga il messaggio
chiaro per formare un messaggio intermedio che si ricava come segue. Poiché
in GENTILVISOCHIOMA la prima lettera dell'alfabeto è la A [alla fine della
chiave], quindi i primi caratteri del messaggio intermedio si prenderanno
nella colonna ad essa sottostante: in prima posizione il primo carattere, in
seconda il secondo e così via fino al fondo della matrice. Poi si passa alla
seconda lettera in ordine alfabetico: la B, che non è presente, quindi si
cerca la C, che è presente in sestultima posizione e si continua a prendere
le lettere per il messaggio intermedio come abbiamo fatto sotto la A e così
fino alla fine della matrice. Se una lettera è presente più volte si prende
prima quella più a sinistra e si procede con le altre più a destra, una
posizione alla volta, ottenendo il messaggio intermedio o primo trasposto.
Completata questa prima trasposizione si continua con una seconda
trasposizione che ha ancora la stessa chiave. Scriviamo il messaggio
intermedio riga per riga e poi preleviamo il cifrato colonna per colonna in
base all'ordine della chiave.
Una volta completata anche la seconda trasposizione, si suddivide il cifrato
in blocchi di cinque cifre, poi tra il terzo ed il quarto blocco si aggiunge
il cifrato della prima chiave ed infine si aggiunge alla sua fine il secondo
cifrato della chiave ed il messaggio è pronto per essere trasmesso, in
alfabeto Morse, con la ricetrasmittente.
Arrivato a destinazione, venivano tolti al messaggio il quarto e l'ultimo
blocco, che sono i cifrati delle chiavi. Si calcolava la parola chiave come
abbiamo visto sopra, solo che in questo caso si sottraeva ad esse 44739, per
ricavare le dimensioni della matrice e l'ordine di inserimento del messaggio
cifrato. Si procedeva scrivendo fino alla fine il cifrato verticalmente,
colonna per colonna in accordo con la chiave, quindi lo si prendeva
orizzontalmente in ordine di riga. Questo messaggio intermedio veniva poi
riscritto di nuovo nella matrice, di nuovo colonna per colonna secondo la
chiave ottenendo il messaggio chiaro da leggersi riga per riga.
![]() |
![]() |