mobile4innovation corrierecomunicazioni
accedi
facebook twitter youtube linkedin rss iscriviti newsletter
dots White Paper dots Eventi dots Video
Digital4Searchsecurity

La crittografia: quando nasce, come funziona e perché è alleata della sicurezza informatica

La crittografia rappresenta uno strumento fondamentale nella lotta conto il cybercrime. Quando nasce? Da cosa differiscono gli algoritmi di crittografia simmetrica e asimmetrica? In che modo vengono utilizzati? E quali sono i loro pro e contro?

di Francesca Carli

Crittografia

22 Febbraio 2017

Che cosè la crittografia? L'etimologia aiuta a capire: Kryptós (nascosto) e graphía (scrittura) sono le due parole greche che compongono il termine crittografia. Quest’ultima, infatti, altro non è che un sistema pensato per rendere illeggibile un messaggio a chi non possiede la soluzione per decodificarlo.

Un aneddoto: il primo caso di testi cifrati nella storia occidentale? sembra essere quello descritto da Plutarco nella Vita di Lisandro dove si fa cenno all’impiego da parte degli spartani della cosiddetta scitala lacedemonica (che, secondo gli studiosi, risalirebbe quindi almeno al V sec. a. C.). 

La scitala lacedemonica era composta da un bastone di lunghezza e larghezza nota (chiamati appunto scitale) e da un nastro (generalmente fatto di cuoio) sul quale era possibile scrivere. Il suo funzionamento era piuttosto semplice: si avvolgeva il nastro attorno al bastone e vi si scriveva sopra per colonne parallele all'asse del bastone lettera dopo lettera; una volta sciolto il nastro il testo scritto era trasposto e non era facilmente riconducibile all'originale senza un bastone di eguale misura a quello originale.

Anche Giulio Cesare usava la crittografia usando la tecnica della traslazione nelle lettere che inviava. Dall'antichità ad oggi, la crittografia continua ad avere il suo significato nell'ambito della sicurezza informatica.

Che cos’è la crittografia oggi

Oggi la comunicazione - di qualsiasi genere - ha acquisito un ruolo sempre più centrale nella vita di ognuno di noi; nell’era di internet miliardi informazioni (anche sensibili) sono in circolazione sulla rete. Per questi motivi si è reso ancor più necessario lo sviluppo di sofisticati sistemi capaci di garantire un elevato livello di confidenzialità di alcuni di questi dati. La crittografia come la conosciamo oggi, dunque, è una materia in costante evoluzione. E proprio per questo suo continuo evolversi, gli esperti consigliano di non affidarsi mai all’ultimo algoritmo crittografico uscito: paradossalmente, infatti, una maggiore sicurezza viene garantita da sistemi già conosciuti e quindi testati pubblicamente (caratteristica che non può ovviamente essere garantita nel caso degli algoritmi più nuovi). Non solo: gli esperti del settore raccomandano anche di attenersi e affidarsi solo alle notizie ufficiali, come quelle rilasciate dal National Institute of Standards and Technology.

A cosa serve la crittografia e come funziona

La crittografia, dunque, può essere definita un sistema che tramite l’utilizzo di un algoritmo matematico agisce su una sequenza di caratteri, trasformandola. Tale trasformazione si basa sul valore di una chiave segreta, ovvero il parametro dell’algoritmo di cifratura/decifratura. Proprio la segretezza di questa chiave rappresenta il sigillo di sicurezza di ogni sistema crittografico.

In base al genere di chiave utilizzato, è possibile suddividere in due tipologie questo sistema di cifratura: quando è presente una chiave singola si parla di crittografia a chiave simmetrica o a chiave segreta (la chiave del mittente e quella del destinatario sono la stessa), quando invece vi sono due chiavi di cifratura distinte si parla di crittografia a chiave asimmetrica o a chiave pubblica (la chiave di cifratura è pubblica, mentre la chiave di decifratura è privata).

Crittografia simmetrica: qualche esempio

La crittografia simmetrica prevede quindi l’uso di un'unica chiave sia per nascondere il messaggio che per sbloccarlo e risulta relativamente veloce e semplice da implementare rispetto ad altri tipi di cifratura (come quella asimmetrica).

L'algoritmo oggi più diffuso utilizzato in crittografia a chiave simmetrica è chiamato Advanced Encryption Standard (AES). Fu sviluppato alla fine degli anni ‘90 dai due crittografi belgi, Joan Daemen e Vincent Rijmen, su richiesta del National Institute of Standards and Technology e divenne uno standard pubblico alla fine del 2001.

L'AES si basa su diverse operazioni eseguite su blocchi di dati da 16 byte, ripetute più volte, chiamate round e si compone di tre algoritmi di cifrature a blocchi di 128 bit (divisi appunto in 4x4 sotto-blocchi da 8 bit). Nel caso di chiave a 128 bit l’AES ha 10 round, che diventano 12 con chiave a 192 bit e 14 con chiave a 256 bit.

Nel 2003 la National Security Agency statunitense ha approvato l’AES a 128 bit per proteggere tutte quelle informazioni governative classificate come secret e l’AES a 192  e 256 bit per i documenti cosiddetti top secret. Lo svantaggio principale della crittografia a chiave simmetrica è che tutte le parti coinvolte devono scambiarsi la chiave utilizzata per crittografare i dati prima di poterli decifrare. Questa esigenza di distribuire e gestire un elevato numero di chiavi in modo sicuro, per la maggior parte dei servizi crittografici implica la necessità di fare uso anche di altri tipi di algoritmi di cifratura.

Algoritmi a crittografia asimmetrica

Gli algoritmi asimmetrici utilizzano due chiavi interdipendenti, una per crittografare i dati, e l'altro per decodificarli. Una privata e una pubblica. Se una chiave è utilizzata per l’operazione di cifratura, l’altra deve essere impiegata per la decifratura e viceversa. Come si intuisce dai nomi stessi, la chiave privata è conosciuta solo dal proprietario, va tenuta segreta e non deve essere condivisa con nessun altro, mentre quella pubblica è condivisa da tutti i corrispondenti.

Il fatto di essere a conoscenza della chiave pubblica non permette di risalire in alcun modo alla chiave privata. Uno degli esempi più utilizzati è l’algoritmo Rivest, Shamir, Adleman (RSA) creato nel 1977 dai tre ricercatori del MIT di cui porta il nome: spesso usato nei protocolli del commercio elettronico come SSL, RSA  è ritenuto sicuro per via delle chiavi sufficientemente lunghe e dell’uso di implementazioni aggiornate. Poiché RSA è molto più lento rispetto alla crittografia simmetrica, in genere i dati sono cifrati con un algoritmo simmetrico e poi la chiave simmetrica, relativamente breve, è crittografata mediante RSA. Questo permette di inviare in modo sicuro ad altre parti la chiave necessaria per decodificare i dati, insieme ai dati simmetricamente crittografati.

L’algoritmo di hash e la verifica dell’integrità di un messaggio

La funzione crittografica di hash trasforma una certa quantità di dati (come un file o un messaggio di lunghezza variabile) in una breve stringa fissa (detta hash value o message digest). Questo sistema viene principalmente utilizzato per verificare l’integrità di un messaggio, ovvero controllare che i dati in questione non abbiano subito cambiamenti.

Qualsiasi modifica accidentale o intenzionale ai dati, infatti, cambierà il valore dell’hash. Un buon hash è unidirezionale e deve risultare quindi estremamente difficile da invertire (non permettendo così di risalire al valore originario). MD5 e SHA-1 sono stati a lungo gli algoritmi di hash più utilizzati, ma sono ormai considerati deboli e vengono sostituiti dagli SHA-2 (di cui fanno parte SHA-224, SHA-256, SHA-384 o SHA-512).

Anche se sulle varianti SHA-2  non è stato riportato ancora nessun attacco, queste sono algoritmicamente simili alla SHA-1 e così, secondo gli esperti, nei prossimi anni sarà selezionato un nuovo standard hash, SHA-3.

 


TAG: algoritmo, crittografia, Data Encryption, hash, sicurezza, Crittografia simmetrica, crittografia asimmetrica


iscriviti alla newsletter
iscriviti newsletter