Quando si tratta di crittografia, si dovrebbe sempre utilizzare l’algoritmo che è giusto per il lavoro ed è stato ampiamente e pubblicamente testato-qualcosa che la comunità crittografica non avrà avuto la possibilità di fare con algoritmi nuovi di zecca.
Diamo un’occhiata ad alcuni degli algoritmi simmetrici e asimmetrici più utilizzati e come valutare il miglior metodo di crittografia per la tua azienda.
Tipi di algoritmi di crittografia simmetrica e casi d’uso
Per la maggior parte delle persone, la crittografia significa convertire il testo in chiaro in testo cifrato utilizzando la stessa chiave, o chiave segreta, per crittografarlo e decrittografarlo. Questo è chiamato crittografia simmetrica, che è relativamente veloce rispetto ad altri tipi di crittografia, come la crittografia asimmetrica. Esistono diversi tipi di algoritmi di crittografia simmetrica.
- Advanced Encryption Standard (AES). Questo è l’algoritmo più utilizzato nella crittografia a chiave simmetrica. AES è il successore del Data Encryption Standard (DES), che, con lunghezze di chiave a 56 bit non sicure, è stato sostituito con AES dal NIST nel 2001. AES comprende tre cifrari a blocchi-AES-128, AES-192 e AES-256-ognuno dei quali è ritenuto sufficiente per proteggere le informazioni classificate dal governo fino al livello segreto, con informazioni Top secret che richiedono lunghezze di chiave a 192 o 256 bit.
- Blowfish.
- Due pesci.
- Tripla DES (3DES).
- Rivest Cipher 4 (RC4). Gli attacchi negli anni 2000 e 2010 hanno rivelato debolezze nell’algoritmo RC4 e il suo uso nella sicurezza dei livelli di trasportoè stato vietato dalla Internet Engineering Task Force nel febbraio 2015.
Mentre alcuni algoritmi di crittografia simmetrica, come AES, usano cifrari a blocchi, altri usano cifrari a flusso, come RC4. I tipi di crittografia simmetrica, come 3DES e AES, sono spesso utilizzati dai prodotti VPN. Altri usi della crittografia simmetrica includono applicazioni di pagamento, convalide e generazione di numeri casuali o hashing.
Questo articolo fa parte di
Guida alla sicurezza dei dati: Tutto quello che devi sapere
- Che comprende anche:
- Proteggere contro l’evoluzione dei dati di minacce per la sicurezza
- Best practice per aiutare CISOs preparare per CCPA
- Combattere l’aspetto umano del rischio di insider threat management
Tipi di algoritmi di crittografia asimmetrica e casi d’uso
a Differenza di algoritmi di crittografia simmetrica, asimmetrica algoritmi di utilizzare due interdipendenti chiavi, una per cifrare i dati e uno per la decodifica. Questa interdipendenza offre una serie di caratteristiche diverse, la più importante è probabilmente la firma digitale. Tra le altre cose, le firme digitali vengono utilizzate per garantire che un messaggio sia stato creato da una particolare entità o autenticare sistemi o utenti remoti. Alcuni degli algoritmi di crittografia asimmetrica più comuni includono quanto segue:
- Uno dei più comuni è lo scambio di chiavi Diffie-Hellman (DH), che consente a due parti di scambiare chiavi crittografiche in modo sicuro, indipendentemente dal fatto che il canale di comunicazione sia pubblico o privato.
- RSA(Rivest-Shamir-Adleman) è un altro algoritmo di crittografia asimmetrica ampiamente utilizzato. Basato su DH, è spesso utilizzato nei protocolli di e-commerce e si ritiene che sia sicuro dato chiavi sufficientemente lunghe e l’uso di implementazioni aggiornate.
- La crittografia a curva ellittica (ECC) è un altro tipo di crittografia asimmetrica che sta crescendo in popolarità. Basato sulla teoria della curva ellittica, ECC utilizza funzioni algebriche per generare sicurezza tra coppie di chiavi.
L’uso della crittografia asimmetrica è comune anche nelle criptovalute, come bitcoin.
Hashing crittografico
Una funzione hash crittografica ha un ruolo leggermente diverso rispetto ad altri algoritmi crittografici. Viene utilizzato per restituire un valore basato su un pezzo di dati, un file o un messaggio, ad esempio. Qualsiasi modifica accidentale o intenzionale ai dati cambierà questo valore hash.
Un buon algoritmo di hash dovrebbe rendere impossibile creare un input iniziale che produca un valore hash specifico o che l’input originale venga calcolato dal valore hash. MD5 (Message-Digest 5) e Secure Hash Algorithm 1 (SHA-1) erano algoritmi di hash ampiamente utilizzati che ora sono considerati deboli. Sono stati ammortizzati nel 2014 e sono stati sostituiti da SHA-224, SHA-256, SHA-384 e SHA-512, collettivamente denominati SHA-2. SHA-3 — composto da SHA-3-224, SHA-3-256, SHA-3-384 e SHA-3-512, oltre a due funzioni di uscita estensibili, SHAKE128 e SHAKE256 — è stato rilasciato nel 2015. SHA-3 è stato etichettato come uno standard di backup, piuttosto che un sostituto per SHA-2.
Simmetrico vs asimmetrico: quale è meglio?
Quando si sceglie un algoritmo di crittografia, è importante considerare il tipo di dati crittografati. Ad esempio, i dati ad alto rischio, come le informazioni riservate dei clienti, necessitano di una crittografia più forte rispetto ai piani di marketing.
Le prestazioni sono un altro fattore chiave. In generale, la crittografia asimmetrica è più lenta della crittografia simmetrica a causa della creazione di due chiavi anziché una. Lo svantaggio principale della crittografia a chiave simmetrica, tuttavia, è che tutte le parti coinvolte devono scambiare la chiave utilizzata per crittografare i dati prima di poterli decifrare e l’esposizione della chiave è una preoccupazione.
Nella crittografia asimmetrica, le chiavi non vengono mai distribuite e, quindi, sono più sicure. È anche impossibile derivare una chiave privata da una chiave pubblica. Se, in uno schema asimmetrico, un individuo perde la sua chiave, tuttavia, non può decifrare i messaggi. L’autenticazione può anche essere un problema nella crittografia asimmetrica perché gli utenti e i sistemi devono garantire che la chiave pubblica sia autentica e appartenga alla persona o all’entità che afferma di farlo. È qui che entra in gioco un’infrastruttura a chiave pubblica o un programma di crittografia che fornisce l’autenticazione.
Gli algoritmi di crittografia simmetrica e asimmetrica presentano vulnerabilità diverse. La crittografia simmetrica è vulnerabile agli attacchi che includono la forza bruta, il testo in chiaro scelto e il testo in chiaro noto, nonché la crittanalisi differenziale e lineare. La crittografia asimmetrica è soggetta ad attacchi di forza bruta e man-in-the-middle. Inoltre, se gli hacker conoscono la chiave di un utente, possono utilizzarla per decifrare e leggere i dati.
In molti scenari, come SSL, vengono utilizzati algoritmi simmetrici e asimmetrici per aumentare la sicurezza. Poiché la crittografia asimmetrica è molto più lenta della crittografia simmetrica, i dati in genere vengono crittografati con un algoritmo simmetrico e quindi la chiave simmetrica relativamente breve viene crittografata utilizzando la crittografia asimmetrica. Ciò consente alla chiave necessaria per decifrare i dati da inviare in modo sicuro ad altre parti insieme ai dati crittografati simmetricamente. In un altro esempio, Secure/Multipurpose Internet Mail Extensions utilizza un algoritmo asimmetrico-public/private key algorithm-per non ripudio e un algoritmo simmetrico per un’efficiente privacy e protezione dei dati.
Il panorama della crittografia è in continua evoluzione. Per rimanere al passo con gli ultimi sviluppi, seguire le notizie e le raccomandazioni degli organismi di normalizzazione, come il NIST.