Close

Crittografia asimmetrica: come, quando e perché

Chi ha inventato la crittografia a chiave pubblica/privata e perché bisogna usarla per la nostra sicurezza
Lucchetto stilizzato su una nuvola digitale per indicare la crittografia asimmetrica.
Tempo di lettura: 3 minuti

Indice dei contenuti

di Pierluigi Paganini*

In questo articolo vediamo cos’è la crittografia asimmetrica, detta anche cifratura asimmetrica o crittografia a chiave pubblica/privata.

In un precedente articolo, invece, abbiamo visto le principali differenze tra crittografia asimmetrica e simmetrica, con particolare attenzione al processo di firma digitale.

Cos’è la cifratura asimmetrica

La cifratura asimmetrica (o crittografia a chiave pubblica/privata) è un tipo di crittografia in cui a ogni entità è associata una coppia di chiavi:

  • una chiave pubblica, accessibile a tutti quelli che devono scambiare informazioni con l’entità proprietaria;
  • una chiave privata, custodita e tenuta segreta dal legittimo proprietario.

Le due chiavi vengono generate in modo da creare una corrispondenza univoca tra di loro. Ogni volta che un messaggio viene cifrato con una delle due chiavi, è possibile decifrarlo solo usando la corrispondente chiave che fa parte della coppia generata. Un altro aspetto da considerare è che la conoscenza di una delle due chiavi non consente di risalire all’altra. Questo per la natura stessa degli algoritmi asimmetrici.

Casi d’uso della crittografia asimmetrica

I principali scopi dell’utilizzo della crittografia asimmetrica sono:

1. Invio di un messaggio cifrato a un destinatario.

2. Verifica dell’autenticità di un messaggio.

Vediamo in dettaglio i vari scenari possibili.

Segretezza e integrità di un messaggio cifrato inviato a un destinatario

Immaginiamo che Marco voglia inviare a Roberto un messaggio cifrato. In questo caso è necessario che Marco usi la chiave pubblica di Roberto per cifrare il documento. A questo punto, solo colui che è in possesso della chiave privata associata alla chiave usata per la cifratura, quindi Roberto, potrà leggere il contenuto del messaggio dopo averlo decifrato. Il processo descritto garantisce la segretezza e l’integrità dell’informazione trasferita tra i due attori.

Autenticità e non ripudiabilità di un messaggio cifrato

Immaginiamo che Marco voglia inviare un messaggio cifrato a Roberto, lasciando che il suo interlocutore possa verificarne l’autenticità e l’origine con certezza. Marco usa la sua chiave privata per cifrare il documento da inviare a Roberto. A questo punto tutti coloro che sono in possesso della chiave pubblica di Marco potranno decodificare il messaggio ed essere certi che sia stato Marco a inviarlo e che il messaggio è autentico. Il processo descritto garantisce quindi l’autenticità e la non ripudiabilità dell’informazione trasferita tra i due attori.

La crittografia asimmetrica, quindi, rappresenta una possibile soluzione ogni qual volta si intenda proteggere segretezza, integrità e non ripudiabilità di un documento.

Quando è nata la crittografia asimmetrica

I primi algoritmi con chiavi asimmetriche sono stati sviluppati in segreto nel 1973, dall’agenzia di intelligence britannica GCHQ. Le attività di analisi non sono state rese pubbliche fino al 1997, quando il governo britannico ha declassificato i relativi documenti.

Qual è l’algoritmo asimmetrico più popolare

La prima pubblicazione di un algoritmo asimmetrico disponibile in commercio risale al 1977. Si tratta del popolare RSA, il cui nome è la composizione delle iniziali dei suoi tre inventori Ron Rivest, Adi Shamir e Leonard Adleman.

Quando si usa la crittografia asimmetrica

Gli algoritmi asimmetrici, sebbene estremamente robusti, sono computazionalmente più costosi di quelli simmetrici. Per questo motivo, algoritmi come l’RSA non sono usati per la cifratura di grosse moli di dati, bensì per informazioni di dimensioni ridotte, come possono essere le chiavi simmetriche.

La crittografia a chiave asimmetrica è usata per molte applicazioni, dalla firma digitale allo scambio sicuro delle chiavi simmetriche su connessioni web sicure. Molto spesso non ci rendiamo neppure conto degli algoritmi che stiamo usando nelle nostre operazioni quotidiane.

Pretty Good Privacy

Un altro esempio d’uso è il “Pretty Good Privacy” (PGP) un programma per l’invio di messaggi protetti attraverso l’uso combinato di algoritmi di crittografia simmetrica e asimmetrica. Tipicamente coloro che intendono ricevere messaggi PGP rendono pubblica la loro chiave asimmetrica, di solito una chiave pubblica RSA.

Lo standard S/MME

In maniera analoga si usano algoritmi di crittografia asimmetrici per lo standard S/MIME, acronimo di Secure/Multipurpose Internet Mail Extensions. Lo standard definisce le specifiche per l’invio di messaggi di posta elettronica in formato MIME

Il protocollo di rete SSH

Anche il popolare protocollo di rete SSH usato per le connessioni remote ai sistemi operativi Unix-like usa crittografia a chiave pubblica per l’accesso sicuro alle macchine, così come i sistemi di cifratura del disco, come BitLocker di Microsoft. I sistemi di cifratura dei dischi memorizzano in modo sicuro le chiavi di crittografia, autorizzandone l’accesso solo a software autorizzati. Per la protezione dei dati si usano algoritmi simmetrici, essendo grandi volumi, le cui chiavi sono crittografate usando l’algoritmo asimmetrico RSA.


*Pierluigi Paganini

Membro Gruppo di Lavoro Cyber G7 2017 presso Ministero degli Esteri
Membro Gruppo Threat Landscape Stakeholder Group ENISA
Collaboratore SIPAF presso il Mef

TAG