Crittografia asimmetrica spiegata in 5 minuti o meno

I dati sono preziosi e, nelle mani sbagliate, possono causare danni a un individuo, a terzi o a un’organizzazione.

Ecco perché abbiamo la crittografia, un modo per proteggere i dati per l’archiviazione o durante i trasferimenti di dati su Internet.

E in questo articolo daremo un’occhiata alla crittografia asimmetrica.

Iniziamo.

Cos’è la crittografia?

La crittografia è il processo computazionale di conversione dei dati in un formato difficile da decodificare (noto anche come testo cifrato). Si basa su un robusto algoritmo di crittografia del calcolo.

Quindi, chiedi ai computer di codificare i dati per l’archiviazione o il trasferimento sicuri. Significa anche che solo le parti autorizzate possono accedere ai dati.

Al centro della crittografia, hai le chiavi crittografiche. Hanno chiavi generate matematicamente, calcolate in base ad altri parametri di crittografia e in base all’accordo tra mittente e destinatario.

Facciamo un esempio di crittografia semplice.

Quindi, tu (chiamiamolo Bob) vuoi inviare un messaggio a John, il tuo amico di Internet, a cui piacciono i testi cifrati.

Bob scrive il messaggio e quindi esegue i dati attraverso la “crittografia”. L’algoritmo di crittografia che stanno usando è semplice. Innanzitutto, Bob sposta il valore ASCII di 4 punti e crea il testo cifrato.

Quindi, i valori ASCII “A” diventano da 65 a 69, che restituisce una questione di “E”. In ASCII, E ha un valore di 69. Seguendo questo semplice metodo, Bob crea un messaggio e lo invia a John.

Poiché John e Bob hanno già concordato come codificare e decodificare, possono scambiarsi messaggi.

Quindi, se Bob scrive “Ciao, John”, il suo testo cifrato restituirà “LIPPS0$NRLR”.

Il processo di decodifica del messaggio inviato da Bob è noto come decrittografia.

Per capirci, controlla la tabella ASCII.

Leggi anche: I migliori convertitori di testo in ASCII che dovresti provare

Cos’è la crittografia asimmetrica?

La crittografia asimmetrica (nota anche come crittografia asimmetrica) è la crittografia a chiave pubblica. Qui, l’algoritmo esegue la crittografia e la decrittografia con l’aiuto di due coppie di chiavi:

  • Chiave pubblica: la chiave pubblica aiuta nella crittografia dei messaggi.
  • Chiave privata: la chiave privata aiuta nella decrittazione dei messaggi. La chiave privata è anche nota come chiave segreta in quanto non è condivisibile e mantenuta riservata dal proprietario.

Quindi, come funziona la crittografia asimmetrica?

Riportiamo Bob e John dal nostro esempio precedente.

Bob sapeva che il suo metodo per inviare messaggi crittografati a John non era sicuro. Dopotutto, chiunque può facilmente forzare la crittografia.

Ed è per questo che ha scelto la crittografia asimmetrica per inviare i suoi messaggi a John.

In tal caso, Bob chiede prima la chiave pubblica di John. Quindi, poiché conosce già John, può chiederglielo personalmente.

Altrimenti, ci sono Public Key Directory (PKD) da cui le entità possono registrarsi e condividere la loro chiave pubblica. In questo modo, chiunque voglia inviare un messaggio sicuro deve entrare in possesso della chiave pubblica di quella persona.

Ora Bob può utilizzare la crittografia asimmetrica per crittografare il messaggio con la chiave pubblica del mittente, in questo caso la chiave pubblica di John.

John riceve il messaggio e può decifrarlo utilizzando la sua chiave privata.

D’altra parte, è possibile anche il contrario. Ciò significa che i dati possono essere crittografati e decrittografati utilizzando una chiave privata.

Quindi, se Bob crittografa il messaggio con la sua chiave privata, John può decrittografarlo utilizzando la chiave pubblica di Bob!

La crittografia asimmetrica funziona perché è necessario l’accesso a due chiavi affinché funzioni. Questo è diverso dalla crittografia simmetrica, in cui sia la crittografia che la decrittografia vengono eseguite da una chiave.

Come funziona la crittografia asimmetrica?

Per avere una chiara comprensione di come funziona la crittografia asimmetrica, dobbiamo vedere come funziona.

Il processo sottostante dipende fortemente da un algoritmo che utilizza una funzione matematica ben preparata. La funzione gestisce la generazione della coppia di chiavi.

Tuttavia, la generazione della chiave varia a seconda dell’accordo tra mittente e destinatario.

Inoltre, la maggior parte degli strumenti e dei linguaggi di programmazione dispone già di librerie predefinite per gestire la crittografia. Quindi, se scegli di codificare la crittografia asimmetrica, dovrai utilizzare quelle librerie e non perdere tempo a reinventare la ruota.

Il processo comune che avviene quando una persona decide di inviare un messaggio crittografato a un’altra persona è il seguente:

➡️ Il mittente e il destinatario generano chiavi pubbliche e private in base ad alcuni parametri.

➡️ Successivamente, il mittente cerca la chiave pubblica del destinatario nella directory delle chiavi pubbliche.

➡️ Con la chiave pubblica annotata, il mittente la utilizza per cifrare il messaggio.

➡️ Lo invia poi al destinatario, che lo decifra con la sua chiave privata.

➡️ Il destinatario può decidere di rispondere al messaggio, e lo stesso processo si ripete (solo al contrario).

Vantaggi della crittografia asimmetrica

La crittografia asimmetrica offre molti vantaggi. Questi includono:

  • Autenticazione dei messaggi: la crittografia asimmetrica offre un’eccellente autenticazione dei messaggi, che consente di verificare un messaggio e il suo mittente. Ecco perché le firme digitali sono uno dei migliori casi d’uso della crittografia asimmetrica.
  • Conveniente: l’implementazione della crittografia asimmetrica è conveniente in quanto la distribuzione delle chiavi è facile e accessibile. Le chiavi pubbliche sono facilmente accessibili, quindi i mittenti possono facilmente crittografare un messaggio con la chiave pubblica del destinatario. D’altra parte, il destinatario può decifrare il messaggio con la sua chiave privata.
  • Rileva la manomissione: la crittografia asimmetrica rileva anche qualsiasi forma di manomissione durante il transito.
  • Consente il non ripudio: funziona in modo simile ai documenti firmati fisicamente e quindi non può essere negato dal mittente.

Successivamente, discuteremo i contro della crittografia asimmetrica.

Crittografia asimmetrica Contro

Gli svantaggi dell’utilizzo della crittografia asimmetrica includono:

  • Lento: la crittografia asimmetrica è lenta, quindi non ideale per il trasferimento di dati di grandi dimensioni.
  • Chiavi pubbliche non autenticate: offre un modello aperto in cui le chiavi pubbliche sono accessibili liberamente. Tuttavia, non c’è modo di verificare l’autenticità della chiave generale e la sua associazione con un individuo. Ciò conferisce all’utente l’onere di verificarne l’autenticità.
  • Chiave privata non recuperabile: non esiste alcun meccanismo per recuperare la chiave privata. Se viene perso, i messaggi non potranno mai essere decifrati.
  • Se la chiave privata perde, può compromettere la sicurezza: se la chiave privata viene compromessa, può portare a perdite di dati o messaggi.

Ora esploreremo alcuni dei casi d’uso della crittografia asimmetrica.

Casi d’uso della crittografia asimmetrica

#1. Firme digitali

Le firme digitali sono comuni al giorno d’oggi. Usano l’algoritmo Rivest-Shamir-Adleman (RSA). Genera due chiavi matematicamente connesse: pubblica e privata. In questo modo, la firma digitale viene creata utilizzando una chiave privata e può essere facilmente verificata o decrittografata utilizzando la chiave pubblica del firmatario.

#2. E-mail crittografata

Le e-mail possono essere inviate in modo sicuro tramite Internet. Il contenuto dell’e-mail viene crittografato con la chiave pubblica e decrittografato con la chiave privata.

#3. SSL/TLS

SSL/TLS è un protocollo sicuro per la comunicazione attraverso la rete. Utilizza la crittografia simmetrica e asimmetrica per creare una connessione sicura tra mittente e destinatario.

Nella maggior parte dei casi, utilizza la crittografia simmetrica. Tuttavia, potrebbe essere necessario utilizzare la crittografia asimmetrica quando entrambe le parti generano le proprie chiavi di sessione, richiedendo la crittografia asimmetrica per verificare l’identità del server di origine.

#4. Criptovalute

Uno dei casi d’uso più comuni della crittografia asimmetrica è la criptovaluta. Qui, le chiavi pubbliche e private vengono utilizzate per eseguire la crittografia.

La crittografia a chiave pubblica funziona bene con la crittografia poiché la chiave pubblica è resa disponibile per il trasferimento, mentre le chiavi private funzionano per sbloccare transazioni e ricevere criptovalute. La crittografia popolare che utilizza la crittografia asimmetrica include Bitcoin.

#5. Navigazione crittografata

I browser possono anche utilizzare la crittografia asimmetrica per proteggere i dati durante il trasferimento. Ad esempio, dopo aver aperto il browser e aver visitato un sito, noterai il protocollo HTTPS prima dell’URL. La ‘s’ qui significa protetto. Per ottenere una connessione protetta, l’handshake del browser al server, dove entrambe le parti decidono come crittografare i dati.

I browser possono utilizzare la crittografia sia simmetrica che asimmetrica per eseguire l’handshake. Tuttavia, la crittografia asimmetrica semplifica la creazione di una connettività sicura.

Negli scenari del mondo reale, i browser sono abbastanza intelligenti da utilizzare entrambi i tipi di crittografia per ottenere una connettività sicura.

#6. Condivisione delle chiavi per la crittografia a chiave simmetrica

La crittografia a chiave asimmetrica funge anche da modo per condividere chiavi simmetriche attraverso una connessione.

Simmetrico vs. Crittografia asimmetrica

Le differenze tra simmetrico e asimmetrico sono le seguenti.

Crittografia asimmetricaCrittografia simmetricaChiaviRichiede due chiavi per funzionare. La chiave pubblica crittografa il messaggio, mentre la chiave privata decrittografa il messaggio. È possibile anche il viceversa. La crittografia simmetrica richiede solo una singola chiave. La chiave crittografa e decrittografa il messaggio. Dimensione del testo cifrato Il testo cifrato generato dalla crittografia asimmetrica è di lunghezza simile al messaggio o più grande. Esistono molti algoritmi di crittografia asimmetrica popolari, inclusi RSA, ECC, EL, Gamal, Diffie-Hellman, ecc. Caso d’uso ideale Gli algoritmi popolari di crittografia simmetrica includono RC4, DES, 3DES e AES. Il testo cifrato generato dalla crittografia simmetrica è simile o di lunghezza inferiore al messaggio. Velocità ed efficienza. Il processo di crittografia è relativamente più lento rispetto alla crittografia simmetrica. Ciò rende meno efficiente l’invio di grandi quantità di dati. Il processo di crittografia è più rapido di quello della crittografia asimmetrica. Ciò rende efficiente l’invio di grandi quantità di dati. Algoritmi Gli algoritmi popolari di crittografia simmetrica includono RC4, DES, 3DES e AES. Gli algoritmi popolari di crittografia simmetrica includono RC4, DES, 3DES e AES. sono lunghi 128 o 256 bit. Scopo La crittografia asimmetrica può essere utilizzata per la crittografia dei dati, l’autenticazione e la creazione di un canale di connessione sicuro. La crittografia simmetrica viene utilizzata principalmente per eseguire il trasferimento di dati in blocco.

Quando utilizzare la crittografia asimmetrica?

Dovresti usare la crittografia asimmetrica quando:

  • Stai cercando un’opzione più sicura per la crittografia e l’invio dei messaggi.
  • Stai inviando piccole quantità di dati poiché la crittografia asimmetrica è lenta e non adatta a trasferimenti di dati di grandi dimensioni.
  • Stai cercando di confermare le firme digitali.
  • Stai lavorando con criptovalute e desideri autorizzare le transazioni confermando l’identità.

Parole finali

La crittografia asimmetrica è al centro di diverse tecnologie. Troverai molti usi, che si tratti di TLS/SSL per verificare le firme digitali.

Inoltre, grazie alle librerie di crittografia già disponibili, puoi implementare rapidamente la crittografia asimmetrica nel tuo strumento e linguaggio di programmazione preferito. Non devi reinventare la ruota e scrivere tu stesso la crittografia asimmetrica.

Successivamente, consulta un articolo dettagliato sulla crittografia simmetrica.