Sei sulla pagina 1di 5

TPS: La crittografia usata nel periodo della

II Guerra Mondiale, L’algoritmo di


cifratura RSA
__________________________________________________________________________________________________________________________________

LA CRITTOGRAFIA
__________________________________________________________________________________________________________________________________

La crittografia è la scienza che studia i metodi per rendere un messaggio non


comprensibile alle persone che non sono autorizzate a leggerlo. Si differenzia
della steganografia, il cui scopo non è quello di rendere incompressibile il
messaggio, ma di renderlo totalmente invisibile agli occhi di chi non è
autorizzato a vederlo. Gli algoritmi di cifratura moderni sono alla base della
sicurezza delle comunicazioni sui nostri computer e sulle nostre reti, rendendo
virtualmente impossibili da decifrare quelli che possono essere messaggi o file
che sono stati criptati dai diversi protocolli applicati alla rete.
La cifratura di questi messaggi si basa su quelli che vengono chiamati algoritmi
di cifratura, che possono essere divisi in due parti, l’algoritmo in sé e la (o le)
chiave/i. Dove l’algoritmo è l’insieme di passaggi da compiere per modificare il
messaggio secondo le specifiche regole e la specifica chiave dell’algoritmo
stesso, mentre la chiave è una sequenza di cifre o caratteri che viene usata per
cifrare il messaggio.
Ad esempio in un algoritmo di cifratura per sostituzione come il ROT13,
l’algoritmo in sé ci spiega cosa fare per cifrare il messaggio, ovvero sostituire le
lettere con altre di n posti successivi, ma è la chiave che ci dice il valore di n e
quindi come creare l’alfabeto cifrato e codificare il messaggio.
Ovviamente nel caso del ROT13 è un processo molto semplice, ma i principali
algoritmi di cifratura utilizzati per cifrare messaggi sulla rete sono infinitamente
più complicati e necessitano appunto di essere svolti da un computer.
Ci sono due tipi di algoritmi di cifratura, a chiave simmetrica e a chiave
asimmetrica, e si differenziano come il nome suggerisce nel numero di chiavi
utilizzate per cifrare e decifrare i messaggi.
Quelli a chiave simmetrica utilizzano una sola chiave sia per criptare che per
decriptare il messaggio, hanno il vantaggio di essere più semplici da capire e da
utilizzare, ma ovviamente sono considerati inferiori a livello di sicurezza.
Quelli a chiave asimmetrica invece utilizzano appunto una chiave pubblica e
una chiave privata. La chiave pubblica è visibile a tutti ed è usata per la cifratura
di tutti i messaggi. La differenza dagli algoritmi a chiave simmetrica sta nel fatto
che la decifratura avviene secondo una chiave privata appartenente al mittente, la
quale è unica e segreta. Questi algoritmi sono considerati più sicuri e sono quelli
attualmente utilizzati nelle reti.
__________________________________________________________________________________________________________________________________

ALGORITMO DI CIFRATURA RSA


__________________________________________________________________________________________________________________________________

L’algoritmo di cifratura RSA è un algoritmo di cifratura a chiave asimmetrica,


esso utilizza i principi matematici dei numeri primi e della fattorizzazione che
sono concetti che seppur all’apparenza facili se estremizzati e usati per cifrare un
messaggio, sono impossibili da decifrare senza la chiave del destinatario,
rendendolo così un metodo ottimo per la cifratura dei messaggi su internet.
Come funziona:
1. A vuole spedire un messaggio a B
2. B sceglie due numeri primi molto grandi (p e q) e li moltiplica tra loro
generando parte della chiave detta n
3. B invia in chiaro ad A il numero ottenuto
4. A utilizza questo numero per cifrare il messaggio
5. A invia il messaggio a B, tutti possono vedere il messaggio ma solo B può
decifrarlo
6. B riceve il messaggio e lo decifra con la sua chiave privata
L’RSA si può quindi scomporre in due fasi:
 Generazione delle chiavi
 Algoritmo crittografico vero e proprio
La vera parte di cifratura e decifratura infatti avviene nei passaggi 4 e 6 e si
sviluppa così:
1. Abbiamo i numeri p e q e il loro prodotto n
2. Calcoliamo b = (p-1) * (q-1)
3. Troviamo il numero e che deve essere il più piccolo numero coprimo del
numero b. Una volta trovato abbiamo la chiave pubblica per cifrare il
messaggio che formata da (n, e). Con essa possiamo cifrare il messaggio
utilizzando l’espressione c = m^e mod n dove c è il posto nell’alfabeto
della lettera codificata, ed m è il posto nell’alfabeto della lettera in chiaro.
4. Il destinatario dovrà poi calcolare la sua chiave privata con cui decifrare il
messaggio. La chiave privata è composta da (n, d) dove d è il risultato del
calcolo d = ((k*b) + 1) /e, per trovare d dobbiamo assegnare valori a k
partendo da 0 fino a quando l’espressione non ci dà un numero naturale.
5. Una volta trovato d abbiamo la nostra chiave privata (n, d) e decifreremo il
messaggio con l’espressione m = c^d mod n

__________________________________________________________________________________________________________________________________

UTILIZZO DELLA CRITTOGRAFIA NELLE GUERRE


__________________________________________________________________________________________________________________________________

La crittografia che come abbiamo appena detto viene usata principalmente nelle
reti e nelle comunicazioni via internet ha in realtà una storia millenaria, infatti
uno degli algoritmi di cifratura più antichi che conosciamo è il Cifrario di Cesare,
un algoritmo di cifratura per sostituzione con chiave 3, dove appunto tutte le
lettere del messaggio venivano sostituite con la lettera 3 posti più avanti
nell’alfabeto.
Un altro esempio di utilizzo della crittografia possiamo trovarlo nella prima metà
del novecento, durante la II Guerra Mondiale. Furono infatti le gli scienziati della
Germania nazista a perfezionare Enigma, che era un dispositivo usato dai
generali per cifrare e decifrare i messaggi importanti da inviare alle truppe in
guerra. Essa aveva un principio basato su due celebri algoritmi di cifratura, la
tavola di Vigenère e il disco di Leon Battista Alberti.
Il processo per cifrare un messaggio si divideva in 6 passaggi:
1. Consultare la "chiave Enigma", ossia la chiave contenuta nel cifrario;
2. Prendere i tre rotori da usare per quel dato giorno;
3. Impostare la programmazione di ogni singolo rotore indicata nella tripletta
di lettere indicate nella chiave Enigma di quel giorno;
4. Inserirli nella macchina nell'ordine indicato;
5. Regolare la posizione iniziale degli anelli dei rotori sulla tripletta di lettere
indicate nella chiave Enigma di quel giorno;
6. Configurare le spine di scambio lettere come stabilito dalla chiave Enigma
di quel giorno.
Fatto questo bastava scrivere con la tastiera il messaggio da cifrare o decifrare e
sulla macchina si sarebbe accesa la lettera corrispondente.

Potrebbero piacerti anche