La crittografia asimmetrica è un sistema di codifica utilizzato tanto nei moderni sistemi di autenticazione digitale quanto dagli hacker black hat (i pirati informatici). Essa consta di
- una chiave pubblica, che viene distribuita a tutti coloro che necessitano di scambiare dati con l’entità proprietaria delle informazioni
- e una chiave privata, utilizzata per la decriptazione del messaggio e tenuta segreta
Attraverso degli appositi algoritmi, infatti, fa sì che le informazioni siano accessibili soltanto a chi è in possesso del codice di decrittazione.
In sostanza, tramite i metodi di crittografia trasforma i dati in un testo cifrato in cui l’informazione viene resa illeggibile. Per decodificarlo sarà poi necessario l’inserimento della chiave privata che permetterà di riaccadere al messaggio originale.
Sommario degli argomenti
I primi algoritmi con chiavi asimmetriche sono stati sviluppati in segreto dall’Agenzia di Intelligence Britannica, nel 1973. Le attività di analisi non sono state rese pubbliche fino al 1997, quando il governo inglese ha declassificato i documenti ad esse inerenti.
La prima pubblicazione di un algoritmo asimmetrico disponibile in commercio risale al 1977. L’algoritmo in questione è il popolare RSA, il cui nome è la composizione delle iniziali dei suoi tre inventori:
- Ronald Rivest
- Adi Shamir
- e Leonard Adleman
Il suo utilizzo garantisce
- alti livelli di sicurezza
- privacy
- e anonimato
Per la generazione della coppia di chiavi si sfruttano algoritmi basati sulla fattorizzazione dei numeri, così da rendere quasi impossibile la loro decrittazione.
La chiave privata è ad uso esclusivo del creatore della coppia di chiavi e viene utilizzata per crittografare e de-crittografare i messaggi in modo completamente sicuro.
La seconda chiave è la cosiddetta chiave pubblica: è una chiave che il creatore può rendere disponibile a terzi.
La chiave pubblica viene creata a partite dalla chiave privata: grazie ad essa, sarà possibile inviare informazioni crittografate cui si potrà accedere soltanto utilizzando la chiave privata fornita dall’entità proprietaria.
La generazione della coppia di chiavi è effettuata servendosi di un key server o un’Autorità di certificazione.
Va però tenuto presente che, a partire dalla chiave pubblica, è pressoché impossibile risalire alla chiave privata.
Ciò mette in luce due principi cardine della crittografia asimmetrica:
- l’indipendenza delle chiavi
- l’unidirezionalità della funzione da cui vengono generate, che non può quasi mai essere ricostruita a ritroso
Per questo motivo, il canale di scambio dei dati è, in linea di principio, liberamente selezionabile: se anche il messaggio crittografato venisse intercettato, un utente che fosse sprovvisto delle chiavi non potrebbe accedere al suo contenuto.
Per questo motivo, la crittografia asimmetrica ha assunto anche la definizione di
- crittografia a coppia di chiavi
- o a chiave pubblica.
La crittografia a chiave pubblica, che, come abbiamo visto, è un’ulteriore denominazione con cui si può indicare la crittografia asimmetrica, è impiegata prevalentemente
- nel traffico di posta elettronica,
- nelle firme digitali,
- protocolli crittografici come SSL e HTTPS
- cui si aggiungono metodologie di attacchi informatici come i ransomware crypto
Vediamone brevemente l’impiego in ognuno di questi ambiti.
Firma digitale
Gli algoritmi di cifratura di questo tipo di crittografia vengono impiegati nella firma digitale. In questo ambito, le due chiavi servono a
- verificare l’autenticità del sottoscrivente,
- così come l’integrità del documento sottoscritto.
I sistemi di crittografia asimmetrici possono anche essere combinati con processi simmetrici.
In questo caso, le chiavi vengono prima scambiate mediante crittografia asimmetrica, ma la successiva comunicazione viene poi crittografata simmetricamente. Questo sistema di crittografia ibrido si utilizza quando gli utenti necessitano
- della velocità della crittografia simmetrica,
- della maggior sicurezza data dalla crittografia asimmetrica.
Protocollo SSL/TLS
Un esempio concreto di protocolli crittografici ibridi è la crittografia tramite SSL/TLS. Il protocollo di rete garantisce
- una comunicazione sicura tra il server web e il browser
- l’autenticità del server
A questo scopo, nel protocollo SSL/TLS, la chiave pubblica è firmata da un’Autorità di certificazione che rilascia un certificato crittografato. Questo può quindi essere aperto solo dalla chiave pubblica fornita dall’Autorità di certificazione.
Ad esempio, il server web invia la chiave pubblica certificata al browser che controlla il certificato. Se il certificato è valido, il browser genera una chiave simmetrica e la invia al server web. Entrambi ora utilizzano questa chiave comune per la crittografia simmetrica del traffico per il resto della sessione SSL/TLS.
PGP
Altro esempio d’uso è il Pretty Good Privacy (PGP), ovvero è un programma per l’invio di messaggi protetti attraverso l’uso combinato di algoritmi di crittografia simmetrica ed asimmetrica. Tipicamente coloro che intendono ricevere messaggi PGP rendono pubblica la loro chiave asimmetrica, di solito una chiave pubblica RSA.
In maniera analoga si utilizzano 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.
Tale formato aggiunge alle e-mail il supporto per la codifica di:
- caratteri diversi dall’ASCII
- messaggi non testuali
SSH
Il popolare protocollo di rete SSH utilizzato per le connessioni remote utilizza crittografia a chiave pubblica per l’accesso sicuro alle macchine, oppure i sistemi di cifratura del disco, come BitLocker di Microsoft.
I sistemi di cifratura dei dischi memorizzano in modo sicuro le chiavi di crittografia consentendone l’accesso solo a software autorizzati. Per la protezione dei dati si usano algoritmi simmetrici le cui chiavi sono crittografate utilizzando l’algoritmo asimmetrico RSA.
Ransomware crypo
Come accennato in apertura, la crittografia asimmetrica non è impiegata soltanto in ambiti leciti: una esempio è fornito dai ransomware crypto, conosciuti anche come cryptoware.
Questi sono una tipologia di ransomware che agisce infiltrandosi nel device della vittima e criptandone i file. Così facendo, l’utente non avrà più modo di accedere ai propri documenti, se n0n dietro pagamento di riscatto.
Soltanto in questo caso, infatti, l’hacker potrebbe decidere di tener fede alle proprie parole e concedere la chiave privata grazie alla quale si potranno nuovamente decriptare le cartelle.
Tra i principali vantaggi derivanti dall’impiego della crittografia asimmetrica troviamo:
- sicurezza: questo sistema offre un alto livello di sicurezza, poiché lo schema di crittografia è molto complesso. La crittoanalisi di questi sistemi, ovvero il tentativo violare un protocollo crittografico, è quantomai complicata. Pertanto, attacchi di forza bruta di questo tipo si rivelano spesso inefficienti e poco pratici;
- comunicazione: permette di garantire canali di comunicazione aperti e pubblici grazie allo schema della chiave pubblica e privata. Essa consente, infatti, al mittente e al destinatario di condividere le informazioni in modo sicuro;
- autenticazione: il sistema consente l’autenticazione di informazioni crittografate grazie a un processo di firma digitale;
- riservatezza: offre un alto livello di riservatezza e integrità delle informazioni.
Svantaggi
Anche questa tecnologia non è esente da risvolti svantaggiosi, tra cui
- costi: rispetto alla cifratura simmetrica, l’impiego della crittografia asimmetrica è più costoso;
- suscettibilità ad elementi esterni: il sistema di crittografia è suscettibile a elementi esterni alla programmazione del sistema di crittografia; ad esempio, un generatore di numeri casuali difettoso potrebbe completamente compromettere l’algoritmo;
- complessità: la complessità degli algoritmi si traduce nella difficile analisi del funzionamento e del livello di sicurezza, rendendo il rilevamento di errori o di bug più complesso e difficile;
- centralità: i servizi cloud che gestiscono questi protocolli crittografici sono spesso centralizzati. Questo è un punto debole rilevante che può comportare la manipolazione del certificato nel caso in cui la struttura sia compromessa.
- lentezza: lo svantaggio principale della crittografia a chiave pubblica è la sua lentezza poiché richiede una potenza di calcolo notevolmente maggiore.
In realtà, il problema della sicurezza riguardante la segretezza della comunicazione non è del tutto risolto con questo tipo di crittografia, in quanto c’è la possibilità di attacchi di tipo man in the middle.
Non si può essere certi, infatti, che la chiave appartenga davvero alla persona nominata nell‘intestazione della chiave stessa.
In tal caso è alta la probabilità che si verifichino attacchi di tipo spoofing, in cui un hacker impersona un altro utente o si impossessa di un dispositivo dotato di autorizzazioni .
Una soluzione resta sempre il contatto fisico tra i due interlocutori, i quali, scambiandosi le chiavi pubbliche hanno una reciproca autenticazione.
Dopo essersi scambiati le chiavi per e-mail o altro mezzo, il consiglio è quello di telefonarsi e di leggersi un codice (detto codice di hash) associabile in modo sicuro alla chiave stessa, ma da cui non si può ricavare la chiave. In questo modo, riconoscendo le rispettive voci, si certifica anche la validità della chiave ottenuta.
Un altro problema da non escludere è quello dell‘effettiva protezione della chiave privata. Questa, infatti, risiede nel disco rigido del proprietario ed è generalmente cifrata con una password (quindi con crittografia simmetrica).
Data la relativa semplicità di accesso alla chiave (basta inserire una password per “sbloccarla”), con specifici trojan/keylogger è quindi possibile ricavare dal PC della vittima sia il file contenente la chiave privata sia la password per utilizzarla, violando a tutti gli effetti l’efficienza della crittografia asimmetrica.
Ora sai come funzionano la firma digitale e gli altri sistemi che, grazie alla crittografia asimmetrica, preservano la sicurezza dei i tuoi documenti quando li invii.
Allo stesso modo è chiaro come la crittografia da sola non sia in grado di proteggerti completamente dai cybercriminali.
Per questo ti consigliamo un intervento a 360° per la protezione informatica della tua azienda attraverso una consulenza tecnica.
Cyberment è un’azienda specializzata in consulenza di sicurezza informatica.
Il nostro team di specialisti cybersecurity vanta un’esperienza decennale nel settore e si occupa di identificare le vulnerabilità informatiche nei sistemi e nelle applicazioni web.
Se desideri conoscere in modo approfondito i nostri servizi di prevenzione dalle minacce informatiche, contattaci!
- Autore articolo
- Gli ultimi articoli
Nata a Taranto nel 1996 e diplomata in “Amministrazione finanza e marketing articolazione relazioni internazionali”. Ho seguito svariati corsi di formazione e ho avuto diverse esperienze lavorative nel mondo del marketing online e della comunicazione. Ad oggi sono scrittrice e mi occupo, oltre che dei social media, anche di seo, web/graphic design e fotografia.