Questo sito web utilizza cookie tecnici e, previo Suo consenso, cookie di profilazione, nostri e di terze parti. Chiudendo questo banner, scorrendo questa pagina o cliccando qualunque suo elemento acconsente all'uso dei cookie. Leggi la nostra Cookie Policy per esteso.OK

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

pittogramma Zerouno

Guida

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

La crittografia rappresenta uno strumento fondamentale nella lotta contro 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?

26 Set 2019

di Redazione Digital4

Che cos’è e cosa significa 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. Quale sistema di crittografia è utilizzato in informatica? In questo articolo si approfondirà questo argomento guardando alla situazione attuale e a ciò che possiamo aspettarci nel breve futuro.

Crittografia, il significato nella storia

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. Oggi, il significato della crittografia si colloca nell’ambito della sicurezza informatica.

Il significato di 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 cifratura informatica 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 un sistema crittografico 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.

2 tipi di crittografia

In base al genere di chiave utilizzato, è possibile suddividere in due tipologie questo sistema di crittografia informatica: cifratura simmetrica e asimmetrica; 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 4×4 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.

Crittografia dei dati, l’algoritmo di hash e la verifica dell’integrità di un messaggio

La funzione crittografica di hash (ossia una classe speciale delle funzioni di hash che dispone di alcune proprietà che lo rendono adatto per l’uso in un sistema di crittografia dei dati in informatica) 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 di crittografia dei dati viene utilizzato principalmente 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.

Crittografia basata sui reticoli e quantistica

La crittografia basata sui reticoli (lattice-based) usa costrutti algebrici bidimensionali noti, appunto, come “reticoli”, resistenti agli schemi di calcolo quantistici.

Le primitive lattice-based sono già state inserite correttamente nei protocolli crittografici quali TLS e Internet Key Exchange e potenzialmente tutti i protocolli più diffusi di sicurezza possono essere resi sicuri sostituendo algoritmi vulnerabili con quelli di questa natura.

La crittografia lattice-based è anche la base per un’altra tecnologia di crittografia denominata Fully Homomorphic Encryption o FHE, che può consentire di eseguire calcoli sui file senza doverli decifrare (con un vantaggio in termini di snellimento dei processi): svolgendo un’operazione su due dati cifrati si ottiene un risultato cifrato che, una volta decifrato, è uguale al risultato che si otterrebbe svolgendo la medesima operazione sui due dati non cifrati.

La crittografia quantistica si basa su un approccio che utilizza proprietà della meccanica quantistica nel momento in cui viene scambiata la chiave in modo che questa non possa essere intercettata senza che mittente e destinatario se ne accorgano. Si parla infatti di distribuzione quantistica di chiavi, ossia di una trasmissione che possa vantare una condizione di segretezza perfetta dal punto di vista matematico.

Una curiosità, la crittografia end to end WhatsApp è sicura?

La crittografia end to end rappresenta un sistema di comunicazione cifrata che impedisce a terze parti (oltre a eventuali inclusi anche agli Internet service provide e ai gestori delle reti) di leggere o alterare i messaggi scambiati tra due persone.

Ricordando un’episodio di cronaca recente, WhatsApp, la nota applicazione di messaggistica istantanea, non è sicura in quanto con grande facilità è stato inserito uno spyware nel telefono della vittima. Tale problema è stato risolto con la diffusione degli aggiornamenti necessari, ma in generale, guardando alla crittografia su WhatApp e quindi alla sicurezza dei messaggi scambiati su questa piattaforma, mentre inizialmente l’applicazione in effetti non cifrava i messaggi, bisogna tener presente che si è poi adottato il protocollo di crittografia di Signal (il servizio di messaggistica criptato per smartphone e computer desktop) per proteggere la privacy degli utenti.

WhatsApp promette così di garantire ai propri utenti (come si legge sul suo sito) che solo le due persone che stanno comunicando possano leggere i contenuti dei loro messaggi, in una logica, come si diceva di protezione end to end.

D

Redazione Digital4

Argomenti trattati

Approfondimenti

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

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

    LinkedIn

    Twitter

    Whatsapp

    Facebook

    Link

    Articolo 1 di 4