Crittografia e crittoanalisi: di cosa parliamo?

Da quando siamo stati in grado di comunicare abbiamo avuto la necessità di inviare dei messaggi riservati. Già duemila anni fa l’esercito spartano e l’imperatore Cesare impiegavano codici cifrati per proteggere la riservatezza di scritti e messaggi. A maggior ragione oggi, nella società dell’informazione, la crittografia assume un ruolo centrale nello sviluppo delle tecnologie e dà un contributo fondamentale alla definizione del mondo che conosciamo.

Senza la crittografia non sarebbe stato possibile realizzare i servizi eeb moderni che hanno definito le principali driver economiche degli ultimi vent’anni. Non potremmo disporre della posta elettronica, delle soluzioni di e-Government, dei sistemi di home banking o dei siti per il commercio elettronico. Senza la crittografia Internet sarebbe un sistema per lo scambio di documentazione fra centri di ricerca e, di conseguenza, non avremmo potuto sviluppare gli smartphone, la domotica, l’e-Helthcare o i sistemi di trasporto intelligente.

La crittografia è la disciplina che studia le tecniche per proteggere l’informazione e per garantirne:

  • la riservatezza: solo chi è autorizzato deve venire a conoscenza del contenuto di un insieme di risorse o della loro esistenza;
  • l’integrità: deve essere possibile verificare la completezza delle risorse e rilevare eventuali manomissioni, causate da attacchi intenzionali o da errori accidentali;
  • l’autenticità: deve essere possibile verificare l’origine di una risorsa, accertando che il mittente sia effettivamente chi dichiara di essere.

crittografiaLo sviluppo di sistemi sicuri richiede di analizzare e valutare con estrema attenzione le minacce che un potenziale attaccante può impiegare per violare il crittosistema o per manomettere i dati in gioco. Per definire queste valutazioni ci si avvale della crittoanalisi, la disciplina che misura la robustezza delle tecnologie crittografiche, esaminando come, in quanto tempo e con quali risorse sia possibile aggirare le difese. Crittografia e crittoanalisi sono due facce della stessa medaglia: è prassi comune per i team di crittografi definire algoritmi e protocolli che i crittoanalisti provano a violare, e sfruttare poi i successi dei crittoanalisti per elaborare nuove soluzioni più sicure. Lo stesso RSA, il cifrario che tutt’ora è alla base della grande maggioranza delle transazioni sicure su Internet, è nato dopo una serie di notti insonni in cui Adleman, agendo da crittoanalista, identificava le vulnerabilità dei crittosistemi elaborati durante il giorno da Rivest e Shamir.

In questo settore non esistono soluzioni “one-size-fits-all” adatte a tutti i possibili scenari: a seconda del contesto operativo, del valore dei dati e delle risorse disponibili si può definire un punto di equilibrio tra il livello di sicurezza che si ritiene necessario garantire ed il costo che si intende sostenere per le difese da attivare. Questo equilibrio tende a variare nel tempo e richiede di tenere conto degli sviluppi della tecnologia, dell’incremento delle performance dei sistemi e della possibilità di accedere in modo semplice a grandi potenze di calcolo a basso costo, ad esempio in cloud. Nel 1975 si considerava sicuro il cifrario DES sulla base del fatto che, all’epoca, una macchina sufficientemente potente per decifrare un messaggio cifrato con DES provando tutte le possibili chiavi in un giorno sarebbe costata circa 20 milioni di dollari. Poco più di vent’anni dopo DES Cracker, una macchina parallela costata meno di 250.000 dollari, impiegò meno di 3 giorni per decifrare lo stesso messaggio.

Questa rubrica intende affrontare il tema della crittografia in modo semplice, ma senza nascondere la complessità della materia. Discuteremo le applicazioni più innovative di questa disciplina, le nuove sfide, e le principali opportunità offerte dai più recenti sviluppi della tecnologia. Evidenzieremo come le due anime della crittografia moderna siano la matematica e l’informatica: la prima, ed in particolare la teoria dei numeri, fornisce la base teorica su cui operano gli algoritmi crittografici. L’informatica consente invece di implementare gli algoritmi e di eseguirli all’interno di sistemi di gestione dell’informazione che, a seconda dei diversi scenari operativi, vanno dal sistema embedded a micro-controllore, sino allo smartphone, al desktop, o al datacenter in cloud. I progressi di queste due discipline da un lato aprono nuove opportunità per la definizione di sistemi crittografici diversi e innovativi, dall’altro offrono ai crittoanalisti nuovi strumenti per attaccare i sistemi oggi considerati sicuri. Solo monitorando le loro continue evoluzioni è possibile intercettare tempestivamente la necessità di ripensare i sistemi attualmente in uso e cogliere le opportunità che il cambiamento porta con sé.

Facebook Comments

LEAVE A REPLY

Please enter your comment!
Please enter your name here