Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Introduzione alla crittografia

Introduzione agli utilizzi della crittografia e delle sue applicazioni
Introduzione agli utilizzi della crittografia e delle sue applicazioni
Link copiato negli appunti

I messaggi di posta elettronica sono come delle cartoline, che possono essere lette da tutti, e non solo nei molti paesi in cui vige un controllo repressivo delle informazioni. È di poco tempo fa il caso ECHELON, il sistema che intercettava e controllava accuratamente il contenuto delle e-mail di mezzo mondo alla ricerca di parole chiave che potessero interessare al governo. Phil Zimmermann, autore del celebre software di crittografia PGP e che si è dato molto da fare per consentire a tutti di comunicare in modo sicuro, nel manuale d'uso del suo programma spiega a modo suo perché è importante usare la crittografia:

«Che accadrebbe se tutti pensassero che i cittadini onesti usano solo cartoline per la loro posta? Se qualche persona per bene volesse usare una busta chiusa per proteggere la sua privacy, desterebbe dei grossi sospetti. Forse le autorità aprirebbero la sua posta per controllare cosa nasconde. Fortunatamente non viviamo in un mondo fatto così, perché tutti proteggono la maggior parte della loro posta chiudendola in una busta. Sarebbe bello se tutti usassero abitualmente la crittografia per la loro posta elettronica, indipendentemente dal contenuto più o meno riservato, e in tal modo nessuno desterebbe sospetti»

La crittografia dunque è l'arte di progettare algoritmi (o cifrari) per crittografare un messaggio rendendolo incomprensibile a tutti tranne al suo destinatario che con un algoritmo simile deve essere in grado di codificarlo, attraverso un parametro segreto detto chiave, usato in precedenza anche dal mittente per la cifratura. La sicurezza di un sistema di crittografia risiede solo ed esclusivamente nella segretezza della chiave e non dell'algoritmo che è opportuno far conoscere alla pubblica analisi, in modo che se ne possano scoprire eventuali punti deboli in tempo.

Un algoritmo di crittografia riceve un testo da codificare (detto testo in chiaro) e lo trasforma, attraverso la chiave, in un testo cifrato apparentemente incomprensibile. I passaggi di cifratura e decifratura del testo vengono solitamente indicati in questo modo:

cifratura: M = Ck(Mc)
decifratura: Dk(Ck(M)) = M

dove M è il messaggio da cifrare, C è l'algoritmo di codifica, D quello di decodifica e k il parametro per i due algoritmi (chiave). I metodi di crittografia di questo tipo che utilizzano la stessa chiave per la codifica e la decodifica sono detti metodi a chiave segreta. Altri metodi che utilizzano due chiavi diverse per la codifica e la decodifica vengono detti a chiave pubblica e verranno trattati più avanti.

La lunghezza della chiave utilizzata è uno dei fattori più importanti per la segretezza del testo, evita infatti che possa essere decifrato per tentativi, dato che provare tutte le possibili combinazioni di caratteri che potrebbero formare una chiave è un problema che gli analisti definiscono a complessità computazionale esponenziale (basta infatti aggiungere una sola lettera alla chiave per aumentare in modo vertiginoso il numero di possibili combinazioni che possono essere ottenute).

Tradizionalmente si usavano algoritmi semplici e chiavi lunghe. Gli algoritmi moderni si basano invece su un'alta complessità in modo da rendere difficile il lavoro del crittoanalista anche se questo possiede una grossa quantità di testo cifrato. Il crittoanalista è colui che, come avrete già capito, ha il compito di violare i cifrari, o almeno di scoprire i punti deboli degli algoritmi. La potenza dei computer moderni può aiutare moltissimo il crittoanalista, ma molti sistemi che possono sembrare estremamente sicuri possono essere infranti semplicemente con carta e penna.

Ti consigliamo anche