Il sistema di crittografia è attualmente suddiviso in due principali aree di ricerca: crittografia simmetrica e crittografia asimmetrica. La crittografia simmetrica è spesso sinonimo di crittografia simmetrica e la crittografia asimmetrica comprende due casi d'uso principali: crittografia asimmetrica e firme digitali.

Pertanto possiamo raggruppare questi concetti nel modo seguente:

  • Crittografia a chiave simmetrica

    • Crittografia simmetrica

  • Crittografia asimmetrica (o crittografia a chiave pubblica)

    • Crittografia asimmetrica (o crittografia a chiave pubblica)

    • Firma digitale (che può includere o meno la crittografia)

Questo articolo si concentrerà sugli algoritmi di crittografia simmetrici e asimmetrici.


Crittografia simmetrica e crittografia asimmetrica

Gli algoritmi di crittografia sono generalmente divisi in due categorie, chiamate crittografia simmetrica e asimmetrica. La differenza fondamentale tra questi due algoritmi di crittografia è che gli algoritmi di crittografia simmetrica utilizzano un'unica chiave, mentre la crittografia asimmetrica utilizza due chiavi diverse ma correlate. Questa descrizione della differenza, sebbene molto semplice, spiega chiaramente le differenze di funzionalità e utilizzo tra le due tecnologie di crittografia. .


Comprendere le chiavi di crittografia

Nella crittografia, un algoritmo di crittografia genera una chiave di carattere composta da diversi bit utilizzata per crittografare e decrittografare un'informazione. Il modo in cui vengono utilizzate queste chiavi illustra anche la differenza tra crittografia simmetrica e asimmetrica.

Mentre gli algoritmi di crittografia simmetrica utilizzano la stessa chiave per eseguire la crittografia e la decrittografia, al contrario, gli algoritmi di crittografia asimmetrica utilizzano una chiave per crittografare i dati e un'altra chiave per decrittografarli. In un sistema di crittografia asimmetrico, la chiave utilizzata per la crittografia è chiamata chiave pubblica e può essere condivisa con altri. D'altra parte, la chiave utilizzata per la decrittazione è una chiave privata e deve essere mantenuta segreta.

Ad esempio, se Alice invia a Bob un messaggio che è stato crittografato utilizzando un algoritmo simmetrico, deve condividere la chiave di crittografia utilizzata per la crittografia con Bob in modo che possa decrittografare il messaggio. Ciò significa che se un utente malintenzionato intercetta la chiave, può accedere facilmente alle informazioni crittografate.

Tuttavia, se Alice utilizza un algoritmo di crittografia asimmetrica, utilizza la chiave pubblica di Bob per crittografare il messaggio e Bob può utilizzare la sua chiave privata per decrittografare il messaggio. Pertanto, la crittografia asimmetrica fornisce un livello di sicurezza più elevato perché anche se qualcuno intercetta il messaggio e ottiene la chiave pubblica di Bob, non può decrittografare il messaggio.


Lunghezza chiave

Un'altra differenza funzionale tra la crittografia simmetrica e quella asimmetrica riguarda la lunghezza della chiave, che viene misurata in bit ed è direttamente correlata al livello di sicurezza fornito da ciascun algoritmo di crittografia.

Nella crittografia simmetrica, la chiave viene selezionata in modo casuale e la sua lunghezza è solitamente impostata su 128 o 256 bit, a seconda del livello di sicurezza desiderato. Tuttavia, nella crittografia asimmetrica, le chiavi pubblica e privata sono matematicamente correlate, il che significa che esiste una connessione aritmetica tra le due. Un utente malintenzionato potrebbe sfruttare questo modello per decifrare il testo cifrato, quindi le chiavi asimmetriche richiedono lunghezze di chiave maggiori per fornire lo stesso livello di sicurezza. La differenza nella lunghezza della chiave è così significativa che una chiave simmetrica a 128 bit e una chiave asimmetrica a 2.048 bit forniscono all'incirca lo stesso livello di sicurezza.

Confronto tra vantaggi e svantaggi

Esistono diversi vantaggi e svantaggi tra questi due diversi tipi di algoritmi di crittografia. Gli algoritmi di crittografia simmetrica funzionano rapidamente e richiedono meno risorse di elaborazione, ma il loro principale svantaggio è la distribuzione delle chiavi. Poiché viene utilizzata la stessa chiave durante la crittografia e la decrittografia delle informazioni, tale chiave deve essere distribuita a coloro che devono accedere ai dati, il che crea un rischio per la sicurezza (come menzionato in precedenza).

Al contrario, la crittografia asimmetrica utilizza la chiave pubblica per la crittografia e la chiave privata per la decrittografia per risolvere il problema della distribuzione delle chiavi. Il compromesso, tuttavia, è che i sistemi di crittografia asimmetrica funzionano molto lentamente rispetto alla crittografia simmetrica e richiedono più risorse di elaborazione a causa della lunghezza delle chiavi molto lunga.


Applicazioni

Crittografia simmetrica

La crittografia simmetrica è ampiamente utilizzata nei moderni sistemi informatici per proteggere le informazioni grazie alla sua maggiore velocità di elaborazione. Ad esempio, il governo degli Stati Uniti utilizza l’Advanced Encryption Standard (AES) per crittografare e classificare le informazioni di sicurezza. AES sostituisce il precedente Data Encryption Standard (DES), sviluppato negli anni '70 ed è stato lo standard per la crittografia simmetrica.


crittografia asimmetrica

La crittografia asimmetrica viene spesso utilizzata nei sistemi in cui un gran numero di utenti deve crittografare e decrittografare messaggi o dati contemporaneamente, soprattutto se la velocità e le risorse di calcolo sono sufficienti. Un caso d'uso comune per questo sistema è la posta elettronica crittografata, in cui la chiave pubblica può essere utilizzata per crittografare il messaggio e la chiave privata può essere utilizzata per decrittografarlo.


Sistema di crittografia ibrido

In molte applicazioni, la crittografia simmetrica e asimmetrica viene utilizzata insieme. Esempi tipici di tali sistemi ibridi sono i protocolli di crittografia Secure Sockets Layer (SSL) e Transport Layer Security (TLS), utilizzati per fornire comunicazioni sicure all'interno di Internet. Il protocollo SSL è ora considerato non sicuro e dovrebbe essere interrotto. Al contrario, il protocollo TLS è attualmente considerato sicuro ed è ampiamente utilizzato dai principali browser web.


Le criptovalute utilizzano la crittografia?

La tecnologia di crittografia utilizzata in molte criptovalute fornisce un livello di sicurezza più elevato agli utenti finali. Ad esempio, quando un utente imposta una password per il proprio portafoglio crittografico, viene utilizzato un algoritmo di crittografia per crittografare crittograficamente i file utilizzati per accedere al software.

Tuttavia, poiché Bitcoin e altre criptovalute utilizzano chiavi pubbliche e private, esiste un malinteso comune secondo cui i sistemi blockchain utilizzano algoritmi di crittografia asimmetrica. Come accennato in precedenza, la crittografia asimmetrica e le firme digitali sono i due principali casi d’uso della crittografia asimmetrica (crittografia a chiave pubblica).

Pertanto non tutti i sistemi di firma digitale utilizzano la crittografia, anche se utilizzano chiavi pubbliche e private. Infatti, è possibile firmare semplicemente digitalmente un messaggio senza crittografarlo. RSA è un esempio di algoritmo per firmare messaggi crittografati, ma l'algoritmo di firma digitale utilizzato da Bitcoin (chiamato ECDSA) non utilizza affatto la crittografia.


Pensieri riassuntivi

Nell'era digitale di oggi, la crittografia simmetrica e asimmetrica gioca un ruolo importante nella protezione delle informazioni sensibili e delle comunicazioni di rete. Sebbene entrambi siano utili, ciascuno ha i propri pro e contro, che li rendono adatti a diversi casi d'uso. Con il continuo sviluppo della crittografia, la crittografia può essere utilizzata per resistere meglio a varie minacce nuove e complesse. Anche la crittografia simmetrica e asimmetrica è strettamente correlata alla sicurezza informatica.