M-209 - M-209

L'M-209

In crittografia , l' M-209 , designato CSP-1500 dalla Marina degli Stati Uniti ( C-38 dal produttore) è una macchina cifratrice meccanica portatile utilizzata dall'esercito statunitense principalmente nella seconda guerra mondiale , sebbene sia rimasta in uso attivo attraverso la guerra di Corea . L'M-209 è stato progettato dal crittografo svedese Boris Hagelin in risposta a una richiesta di tale macchina cifratrice portatile, ed è stato un miglioramento di una macchina precedente, il C-36 .

L'M-209 ha le dimensioni di un lunchbox , nella sua forma finale misura 3+14 per 5+1 / 2 di 7 pollici (83 mm × 140 mm x 178 millimetri) e un peso di 6 libbre (2,7 kg) (più 1 libbra (0,45 kg) per il caso). Ha rappresentato un brillante risultato per la tecnologia preelettronica. Utilizzava uno schema a ruote simile a quello di una macchina per la telecifratura, come il cifrario di Lorenz e il Geheimfernschreiber .

Operazione base

M209B-IMG 0553-nero.jpg

Il funzionamento di base dell'M-209 è relativamente semplice. Sei ruote chiave regolabili sulla parte superiore della scatola mostrano ciascuna una lettera dell'alfabeto . Queste sei ruote costituiscono la chiave esterna della macchina, fornendo uno stato iniziale, simile ad un vettore di inizializzazione , per il processo di cifratura.

Per cifrare un messaggio, l'operatore imposta le ruote dei tasti su una sequenza casuale di lettere. Una manopola di cifratura-decifratura sul lato sinistro della macchina è impostata su "cifra". Un quadrante noto come disco indicatore , anch'esso sul lato sinistro, è rivolto alla prima lettera del messaggio. Questa lettera viene codificata ruotando una manovella o una maniglia di alimentazione sul lato destro della macchina; al termine del ciclo, la lettera del testo cifrato viene stampata su un nastro di carta, le ruote dei tasti avanzano ciascuna di una lettera e la macchina è pronta per l'inserimento del carattere successivo nel messaggio. Per indicare gli spazi tra le parole nel messaggio, la lettera "Z" è cifrata. Ripetendo il processo per il resto del messaggio si ottiene un testo cifrato completo, che può quindi essere trasmesso utilizzando il codice Morse o un altro metodo. Poiché l'impostazione iniziale della rotellina del tasto è casuale, è necessario inviare anche tali impostazioni alla parte ricevente; questi possono anche essere criptati utilizzando una chiave giornaliera o trasmessi in chiaro.

Il testo cifrato stampato viene automaticamente suddiviso in gruppi di cinque dall'M-209 per facilitarne la leggibilità. Un contalettere sulla parte superiore della macchina indicava il numero totale di lettere codificate e poteva essere utilizzato come punto di riferimento in caso di errore di cifratura o decifrazione.

La procedura di decifrazione è quasi la stessa della cifratura; l'operatore imposta la manopola di cifratura-decifratura su "decifra" e allinea le ruote dei tasti alla stessa sequenza utilizzata nella cifratura. La prima lettera del testo cifrato viene inserita tramite il disco indicatore e viene azionata la maniglia di alimentazione, facendo avanzare le ruote dei tasti e stampando la lettera decodificata sul nastro di carta. Quando si incontra la lettera "Z", una camma fa apparire uno spazio vuoto nel messaggio, ricostituendo così il messaggio originale con degli spazi. Le "Z" assenti possono essere tipicamente interpretate dall'operatore, in base al contesto.

Un operatore esperto di M-209 potrebbe impiegare da due a quattro secondi per cifrare o decifrare ogni lettera.

Elementi interni

Panoramica

All'interno dell'involucro dell'M-209 emerge un quadro molto più complicato. Le sei ruote chiave hanno ciascuna un piccolo perno mobile allineato con ciascuna lettera sulla ruota. Questi perni possono essere posizionati ciascuno a sinistra oa destra; il posizionamento di questi perni influisce sul funzionamento della macchina. La posizione di sinistra è inefficace , mentre la posizione di destra è efficace .

Un riduttore intermedio (al centro) ingrana con gli ingranaggi adiacenti a ciascuna ruota chiave. Visibili a sinistra dell'immagine sono il nastro di carta e la rotella che stampano messaggi e testo cifrato.
Un perno inattivo (rosso) nella parte inferiore della ruota chiave sinistra (azzurro) tira indietro il braccio di guida (verde). Nessun perno blocca il braccio guida destro, quindi una molla inclina il braccio guida in avanti.
Al braccio di guida sinistro viene impedito di interagire con le alette (viola) sul tamburo (blu), mentre il braccio di guida destro è in una posizione effettiva e spingerà a sinistra qualsiasi barra con un'aletta in quella posizione.

Ogni ruota chiave contiene un numero diverso di lettere e un numero corrispondentemente diverso di pin. Da sinistra a destra, le ruote hanno:

  • 26 lettere, dalla A alla Z
  • 25 lettere, dalla A alla Z, eccetto W
  • 23 lettere, dalla A alla X, eccetto W
  • 21 lettere, dalla A alla U
  • 19 lettere, dalla A alla S
  • 17 lettere, dalla A alla Q

Questa discrepanza è stata scelta per conferire alle dimensioni delle ruote una natura coprima ; il risultato finale è che le ruote si allineano allo stesso modo solo una volta ogni 26×25×23×21×19×17 = 101.405.850 lettere cifrate (noto anche come il periodo ). Ad ogni ruota chiave è associato un braccio guida metallico inclinato che viene attivato da eventuali perni in posizione "effettiva". Le posizioni dei perni su ciascuna ruota chiave comprendono la prima parte del meccanismo di codifica interno dell'M-209.

Dietro la fila di sei ruote chiave c'è un tamburo cilindrico composto da 27 barre orizzontali. Ogni barra del tamburo è fissata con due alette mobili ; le alette possono essere allineate con una qualsiasi delle sei ruote chiave, oppure possono essere posizionate in una delle due posizioni "neutre". Un perno efficace fa inclinare in avanti il ​​suo braccio di guida, a contatto con il tamburo. Il posizionamento delle alette comprende la seconda parte del meccanismo di calettamento interno. A causa della complessità dell'impostazione del meccanismo di codifica interno, è stato modificato relativamente di rado; cambiare le chiavi interne una volta al giorno era comune nella pratica.

Quando l'operatore gira la leva di comando, il tamburo cilindrico compie un giro completo di tutte e 27 le barre. Se un'aletta su una delle barre tocca il braccio di guida di una ruota chiave attiva, quella barra viene fatta scorrere a sinistra; le alette in posizione neutra, o che non entrano in contatto con un braccio di guida, non influiscono sulla posizione della barra. Tutte le barre che vengono fatte scorrere verso sinistra comprendono un ingranaggio a dentatura variabile , che a sua volta sposta la lettera da codificare; lo spostamento è uguale al numero di barre che sporgono a sinistra. La lettera del testo cifrato risultante viene stampata sul nastro di carta.

Una volta completata la rotazione, un retrattore riporta in posizione le barre sporgenti. Una serie di ingranaggi intermedi fa avanzare le ruote della chiave di una posizione e un braccio di bloccaggio si blocca nel tamburo per impedire una seconda codifica fino a quando il disco indicatore non viene regolato per la lettera successiva.

Questo sistema permetteva di cambiare l'offset per ogni lettera cifrata; senza questa struttura, lo schema di cifratura assomiglierebbe a un cifrario a turni di Cesare molto insicuro .

Esempio di configurazione

Prima di codificare qualsiasi cosa utilizzando l'M-209, l'operatore deve impostare la macchina secondo una configurazione preimpostata. Questa configurazione include le impostazioni per ciascun perno su tutte e sei le ruote chiave e la posizione di ciascuna aletta sul tamburo rotante; questi erano tipicamente specificati da tabelle in una pubblicazione di sistema segreta data sia al mittente che al destinatario. L'allineamento rotazionale delle ruote dei tasti potrebbe essere scelto a caso dal mittente e fornito al destinatario tramite un canale di comunicazione sicuro.

Ogni lettera su ogni ruota chiave è associata a un perno che può essere impostato a sinistra oa destra. Una tabella che specifica l'impostazione di questi pin potrebbe essere simile alla seguente:

Ruota Impostazioni pin
1 AB-D---HI-K-MN----ST-VW---
2 A--DE-G--JKL--O--RS-UX--
3 AB----GH-J-LMN---RSTU-X
4 --C-EF-HI---MN-P--STU
5 -B-DEF-HI---MN-P--S
6 AB-D---H--K--NO-Q

Le lettere presenti nella tabella per una determinata ruota chiave dovrebbero avere il pin corrispondente impostato sulla posizione destra, o "effettiva". Le lettere assenti, rappresentate da un trattino, sono impostate a sinistra, o posizione "inefficace".

Il tamburo rotante ha 27 barre, ciascuna con due alette . Queste alette possono essere impostate su qualsiasi posizione da 1 a 6, nel qual caso sono allineate con la ruota chiave corrispondente, oppure possono essere impostate su una delle due posizioni "0", nel qual caso sono inefficaci. Una tabella che indica le impostazioni delle alette per il tamburo potrebbe assomigliare a questa:

Sbarra 1 2 3 4 5 6 7 8 9
anse 3-6 0-6 1-6 1-5 4-5 0-4 0-4 0-4 0-4
Sbarra 10 11 12 13 14 15 16 17 18
anse 2-0 2-0 2-0 2-0 2-0 2-0 2-0 2-0 2-0
Sbarra 19 20 21 22 23 24 25 26 27
anse 2-0 2-5 2-5 0-5 0-5 0-5 0-5 0-5 0-5

La barra 1 avrebbe le alette impostate nelle posizioni "3" e "6", le alette della barra 2 nelle posizioni "0" e "6" e così via. Qualsiasi aletta nella posizione "3", ad esempio, verrà spinta di lato da un braccio di guida quando il perno attualmente attivo sulla ruota chiave 3 è in una posizione "effettiva".

Infine, la chiave esterna viene impostata ruotando le ruote della chiave su una sequenza di lettere specifica o casuale. Nel testare le impostazioni dei tasti interni dell'M-209, è consuetudine che l'operatore regoli le ruote dei tasti su "AAAAAA" e proceda alla codifica di un messaggio composto esclusivamente dalla lettera "A". Il testo cifrato risultante viene quindi confrontato con una lunga stringa di controllo per verificare che tutte le impostazioni interne siano state eseguite correttamente. La stringa di controllo per questa particolare configurazione è:

T N J U W A U Q T K C Z K N U T O T B C W A R M I O

I perni ruota chiave entrano in gioco quando raggiungono la parte inferiore della ruota chiave durante la rotazione; è qui che possono entrare in contatto o rilasciare il braccio di guida che devia le alette a sinistra. Il pin attivo è spostato di un determinato importo dalla lettera attualmente visualizzata sulla parte anteriore della rotellina; quando "AAAAAA" è visualizzato sulle ruote dei tasti, i perni in gioco sono quelli associati alle lettere "PONMLK", da sinistra a destra.

Esempio di codifica

Dopo che l'M-209 è stato configurato in base alle impostazioni di cui sopra, la macchina è pronta per la codifica. Continuando con l'esempio di una stringa di controllo nota , la prima lettera da codificare è "A". L'operatore imposta il disco di indicazione sulla lettera "A" e gira la maniglia di alimentazione.

Poiché le ruote dei tasti sono impostate sulla stringa "AAAAAA", i pin attivi sono "PONMLK"; secondo le impostazioni di cui sopra, il pin "P" è inattivo sulla prima rotella, il pin "O" è attivo sulla seconda rotella, "N" è attivo sul terzo, "M" è attivo sul quarto, "L " è inefficace sulla quinta e "K" è efficace sulla sesta. I bracci di guida associati ai perni effettivi si inclineranno in avanti e entreranno in contatto con il tamburo rotante; in questo caso saranno attivi i bracci guida 2, 3, 4 e 6.

Qualsiasi barra sul tamburo con un capocorda in una di queste posizioni verrà fatta scorrere a sinistra e quella barra parteciperà all'ingranaggio a dentatura variabile che guida l'uscita della macchina. In base alle impostazioni fornite, le barre 1, 2, 3 e da 5 a 21 verranno fatte scorrere a sinistra, per un totale di 20 barre o 20 "denti" sull'ingranaggio a dentatura variabile. La codifica per questa lettera utilizzerà uno spostamento di 20.

L'M-209 utilizza un cifrario a sostituzione reciproca o uno schema Beaufort ; l'alfabeto utilizzato nel messaggio in chiaro è mappato sullo stesso alfabeto al contrario ( atbash ):

Alfabeto in chiaro: ABCDEFGHIJKLMNOPQRSTUVWXYZ
Alfabeto del testo cifrato: ZYXWVUTSRQPONMLKJIHGFEDCBA

Se lo spostamento non viene considerato, "A" diventa "Z", "B" diventa "Y", "C" diventa "X" e così via. Il cambio procede in senso inverso; per esempio, un testo in chiaro "P" mappa al testo cifrato "K"; lo spostamento di tre posizioni, a sinistra, dà il testo cifrato "N". Lo spostamento è circolare, quindi quando uno spostamento esce dal lato sinistro, continua di nuovo a destra. Questo approccio è auto-inverso, nel senso che la decifrazione utilizza la stessa tabella allo stesso modo: un testo cifrato "N" viene inserito come se fosse testo in chiaro; questo mappa a "M" nell'alfabeto del testo cifrato, o "P" dopo aver spostato tre posizioni, restituendo così il testo in chiaro originale.

Continuando l'esempio sopra, la lettera iniziale da codificare era "A", che corrisponde a "Z" nel testo cifrato. Lo spostamento dato dalla marcia a denti variabili era di 20; lo spostamento a sinistra di 20 posizioni fornisce la lettera finale del testo cifrato "T", che è uguale alla prima cifra nella stringa di controllo.

Al termine del ciclo di codifica, tutte e sei le ruote chiave vengono avanzate di una posizione. Le ruote chiave leggeranno quindi "BBBBBB" e i pin attivi saranno "QPONML". Un nuovo set di bracci guida interagirà con il tamburo, determinando uno spostamento diverso per la successiva operazione di codifica e così via.

Sicurezza

La sicurezza dell'M-209 era buona per l'epoca, ma non era affatto perfetta. Come con la macchina cifratrice per telescrivente Lorenz Electric (nome in codice Tunny dagli Alleati), se un decodificatore entrasse in possesso di due sequenze sovrapposte, avrebbe un dito nelle impostazioni dell'M-209 e il suo funzionamento aveva alcune stranezze distintive che potrebbero essere sfruttate. All'inizio del 1943, i crittoanalisti tedeschi erano in grado di leggere il 10-30% dei messaggi M-209. Tuttavia, era considerato adeguato per l'uso tattico ed era ancora utilizzato dall'esercito americano durante la guerra di Corea .

Il ricercatore statunitense Dennis Ritchie ha descritto una collaborazione degli anni '70 con James Reeds e Robert Morris su un attacco con solo testo cifrato all'M-209 che potrebbe risolvere messaggi di almeno 2000-2500 lettere. Ritchie riferisce che, dopo discussioni con la NSA , gli autori decisero di non pubblicarlo, poiché gli fu detto che il principio era applicabile alle macchine allora ancora in uso dai governi stranieri.

Nel 2004, il sito di notizie tedesco Heise Online ha pubblicato un servizio sugli sforzi tedeschi per rompere l'M-209.

Produzione e utilizzo

Gli M-209 statunitensi furono prodotti a una velocità di 400 unità al giorno dalla Smith Corona Typewriter Company di Groton, NY, a partire dal 1942. Furono prodotte oltre 140.000 macchine.

L' SG-41 tedesco avrebbe dovuto essere una macchina cifratrice tattica standard, ma i tedeschi avevano solo scorte limitate di metalli leggeri come magnesio e alluminio, ed era semplicemente troppo pesante per un uso tattico. Menzer lavorò anche su altre due macchine per cifrare basate sulla tecnologia Hagelin, tra cui un seguito dell'Enigma, la "SG-39", e una macchina cifratrice portatile semplice ma abbastanza potente, la " Schlüsselkasten " ("Scatola del codice"). Nessuna di queste macchine ha raggiunto la produzione. Se i dispositivi Menzer fossero stati messi in servizio, avrebbero sicuramente causato problemi ai crittoanalisti alleati, sebbene non fossero più infrangibili dell'M-209.

Dopo la guerra, Hagelin elaborò un modello migliorato dell'M-209, chiamato " C-52 ". Il C-52 ha caratterizzato un periodo fino a 2.756.205.443; ruote che possono essere rimosse e reinserite in un ordine diverso; e una ruota di stampa con un alfabeto misto. Tuttavia, il C-52 era una delle ultime generazioni delle classiche macchine per cifrare, poiché a quel tempo la nuova tecnologia digitale stava permettendo lo sviluppo di cifrari molto più sicuri.

Riferimenti

Ulteriori letture

link esterno