
Cifrari classici: Cesare, ROT13, Atbash e affine
Come funzionano i cifrari di Cesare, ROT13, Atbash, affine e a parola chiave, come decifrarli contando le lettere e perché oggi nessuno di loro è sicuro.
Da oltre duemila anni le persone nascondono messaggi in bella vista. I primi trucchi sostituivano ogni lettera con un'altra secondo una regola fissa. Sono divertenti da usare e un punto di partenza perfetto per la crittografia, ma tutti cedono davanti a un attaccante paziente con una matita. Questa guida mostra come funzionano cinque cifrari classici e perché oggi nessuno di loro può proteggerti.
Testo in chiaro, testo cifrato e chiavi
Il messaggio originale è il testo in chiaro. La versione rimescolata è il testo cifrato. Un cifrario è la regola che trasforma l’uno nell’altro, mentre la chiave è il dettaglio segreto che determina esattamente quale rimescolamento usare.
Una buona abitudine, che risale al 1800, è presumere che il nemico conosca il metodo del cifrario e che solo la chiave sia segreta. Tutto ciò che segue dovrebbe essere valutato secondo questo criterio: se qualcuno sa che cosa hai fatto, ma non conosce la tua chiave, può comunque leggere il tuo messaggio?
Cifrario di Cesare: fai scorrere l'alfabeto
Il cifrario di Cesare fa scorrere ogni lettera in avanti di una quantità fissa. Usa uno spostamento di 3: A diventa D, B diventa E, mentre Z torna indietro fino a C. Lo scrittore romano Svetonio racconta che Giulio Cesare lo usava nelle lettere militari.
Il numero di posizioni è la chiave. Chiunque lo conosca può tornare indietro. Il problema è che le chiavi possibili sono pochissime: esistono solo 25 spostamenti utili. Un attaccante può semplicemente provarli tutti, con una ricerca a forza bruta che richiede un minuto a mano e praticamente nessun tempo su un computer.
ROT13
ROT13 fissa lo spostamento del cifrario di Cesare a 13 posizioni. Poiché l'alfabeto è lungo 26 lettere, due spostamenti di 13 riportano al punto di partenza. Cifrare e decifrare sono la stessa operazione. I forum lo usavano per nascondere gli spoiler, perché blocca uno sguardo distratto, non perché protegga davvero qualcosa.
Atbash: l'alfabeto a specchio
Atbash scrive l'alfabeto al contrario sotto se stesso, così A corrisponde a Z, B a Y, C a X e così via. Deriva dall'alfabeto ebraico e compare in alcuni testi antichi.
Come ROT13, non ha alcuna chiave e si annulla da solo: rifletti lo specchio e torni al punto di partenza. Per questo è un rompicapo, non un blocco. Appena qualcuno riconosce lo schema, ogni messaggio scritto con questo cifrario è accessibile.
Cifrario affine: moltiplica, poi sposta
Assegna a ogni lettera un numero, da A = 0 fino a Z = 25. Il cifrario affine prende quel numero, lo moltiplica per a, aggiunge b e ricomincia da capo ogni 26:
E(x) = (a·x + b) mod 26
Imposta a = 1 e torni a un semplice spostamento di Cesare. La moltiplicazione allontana molto le lettere vicine, facendo apparire il messaggio più confuso.
C'è però un problema. Perché la decifrazione funzioni, ogni lettera del testo cifrato deve provenire da una sola lettera del testo in chiaro. Questo succede solo quando a non ha fattori comuni con 26. Quindi a = 3 e a = 5 funzionano, ma a = 2 o a = 13 no, perché manderebbero due lettere diverse nello stesso punto. Sono ammessi solo 12 valori di a e, con 26 valori di b, si ottengono 312 chiavi. Meglio di 25, ma ancora pochissime per un computer.
Sostituzione con parola chiave: qualunque mescolamento
Perché spostare ogni lettera seguendo una regola? Un cifrario a sostituzione permette che la chiave sia un alfabeto completamente mescolato. Per rendere il mescolamento facile da ricordare, scrivi prima una parola chiave, elimina le lettere ripetute e poi aggiungi le lettere mancanti in ordine. La parola chiave ZEBRAS dà l'alfabeto della chiave ZEBRASCDFGHIJKLMNOPQTUVWXY, quindi A diventa Z, B diventa E, C diventa B e così via.
Il numero di mescolamenti possibili è 26 fattoriale, circa 4 × 10²⁶. Provarli tutti è impossibile, quindi per secoli la sostituzione è sembrata impossibile da decifrare. Ma non lo era.
Perché oggi nessuno di questi è sicuro
I cifrari a sostituzione hanno un difetto fatale: una lettera diventa sempre la stessa lettera. Così la forma della lingua rimane visibile. In inglese, E è la lettera più frequente, seguita da T, A e O, mentre Q e Z sono rare. Gli studiosi del mondo islamico descrissero l'analisi di frequenza intorno al IX secolo: conta le lettere nel testo cifrato, associa la più comune a E e usa gli schemi delle parole (una parola di una sola lettera è probabilmente A o I) per completare il resto.
I messaggi più lunghi forniscono statistiche migliori, quindi nemmeno uno spazio delle chiavi enorme è d'aiuto. I cifrari moderni sono progettati in modo che il testo cifrato non mostri schemi di questo tipo e la loro sicurezza si basa su chiavi troppo grandi da indovinare. Per qualsiasi uso reale, utilizza strumenti moderni ben testati, mai un sistema inventato da te.
Come esplorarlo nel laboratorio
Il laboratorio Codici e cifrari ti offre una ruota cifrante che puoi girare, oltre a strumenti per contare le lettere e mettere alla prova le tue ipotesi. Ecco un percorso consigliato nel primo mondo gratuito:
- Inizia con Lo scorrimento di Cesare e prova a violarne uno.
- Scopri il comportamento autoinverso in ROT13, poi passa ad Atbash.
- Verifica quali moltiplicatori funzionano in Affine: prima moltiplica, poi scorri.
- Crea una chiave mescolata in Sostituzione con parola chiave.
Questo è un modello didattico semplificato dei cifrari storici. Serve a sviluppare l'intuizione sulle chiavi e sugli attacchi, non a proteggere messaggi reali.
- La chiave sceglie il rimescolamento; supponi che gli attaccanti conoscano il metodo.
- Cesare ha solo 25 chiavi utili, mentre ROT13 e Atbash non hanno una chiave segreta.
- Il moltiplicatore affine non deve avere fattori comuni con 26, quindi restano 12 valori validi.
- La sostituzione con parola chiave ha uno spazio delle chiavi enorme, ma può essere sconfitta dall'analisi della frequenza delle lettere.
Lo spostamento di Cesare
Ogni lettera si sposta della stessa distanza. Circa 6 minuti. Gratis, senza account, funziona nel browser.
Altre lezioni gratuite di questa guida
- 01ROT13: lo spostamento che si annulla da soloLaboratorio di codici e cifrari · 5 minGRATIS
- 02Atbash: l'alfabeto a specchioLaboratorio di codici e cifrari · 5 minGRATIS
- 03Affine: moltiplica, poi traslaLaboratorio di codici e cifrari · 7 minGRATIS
- 04Sostituzione con parola chiaveLaboratorio di codici e cifrari · 7 minGRATIS
Le simulazioni su Novareka sono modelli didattici, semplificati intenzionalmente. Mostrano come funziona un'idea; non sostituiscono la consulenza di professionisti in ambito medico o ingegneristico.
Laboratori in questa guida
Disponibile
DisponibileContinua a leggere
Tutte le guide →
Spiegazione
Spiegazione
Spiegazione