Con l’arrivo della crittografia asimmetrica i sistemi per proteggere le comunicazioni sono diventati sempre più sicuri e a prova di privacy. La svolta si deve all’algoritmo RSA, nato nel 1977 dalla collaborazione tra tre ricercatori del Massachussetts Institute of Technology (MIT): Ron Rivest, Adi Shamir e Leonard Adleman.
I tre riuscirono nell’impresa di risolvere il problema di come crittografare i dati in modo che potessero essere decifrati e letti solo dal destinatario prefissato.
La loro soluzione portò all’introduzione delle chiavi pubbliche e private. Non semplici concetti, ma le basi per costruire gli attuali sistemi di criptazione dei messaggi che permettono di preservare la privacy e la sicurezza degli utenti che ogni giorno si scambiano informazioni via app di messaggistica, email e altri mezzi elettronici. Ecco cos’è e come funziona l’algoritmo di criptazione RSA.
Algoritmo di criptazione RSA: cos’è e come funziona
Inviare un messaggio cifrato implica scrivere un messaggio, utilizzare una chiave per crittografarlo e fare in modo che durante il suo viaggio fino al destinatario non possa essere letto. Una volta arrivato, il destinatario dovrà possedere la chiave di cifratura, così da poterlo decifrare e leggere lontano da occhi indiscreti. Nella crittografia asimmetrica, la chiave di decriptazione non è solo una: si fa distinzione tra chiave pubblica e chiave privata. La chiave pubblica è chiamata così perché può essere resa nota a tutti, non mettendo a rischio la sicurezza del messaggio cifrato. La chiave privata, invece, andrà conservata in modo sicuro, dato che solo dalla combinazione di entrambe il destinatario potrà svelare il messaggio criptato e leggerlo.
In questo modo funziona l’algoritmo di criptazione RSA risolto dai tre ricercatori del MIT, e che gli danno il nome. Con questo algoritmo, il destinatario non deve necessariamente essere un umano: qualsiasi sistema, servizio o dispositivo che renda nota la chiave pubblica in modo certificato, potrà utilizzare la crittografia RSA. Ciò implica che questa permette lo scambio di comunicazioni cifrate tra sistemi differenti.
Per comprendere meglio il sistema, si supponga di voler realizzare una conversazione tra un mittente e un destinatario usando l’algoritmo di criptazione.
Il mittente che invia il messaggio cercherà su un elenco la chiave pubblica del destinatario e la utilizzerà per cifrarne il contenuto. Una volta che questo sarà cifrato, il mittente non avrà più modo di decifrarlo: solo il destinatario che fornisce la chiave pubblica, ma che soprattutto possiede la chiave privata, potrà decriptare il messaggio. Questo sistema di crittografia permette di garantire la provenienza del messaggio, se ad esempio il mittente usa la sua chiave privata per cifrare il messaggio e poi quella pubblica del destinatario per ri-crittografarlo, si otterrà un messaggio cifrato che può essere sciolto da chi lo riceve solo se in possesso della propria chiave privata e pubblica. In questo modo, si ottiene uno scambio di informazioni che può sia garantire la provenienza, sia assicurare che solo il destinatario prefissato leggerà i contenuti.
Algoritmo di criptazione RSA: dove trovarlo oggi
Ci sono due esempi molto comuni di certificati a chiave pubblica. In primis, i protocolli crittograficiSecure Socket Layer e Transport Layer Certificates (SSL/TLS), che vengono usati nel campo delle telecomunicazioni e dell’informatica per permettere la comunicazione sicura tra il mittente e il destinatario su reti TCP/IP. La crittografia RSA è prevista anche dai protocolli Secure Shell (SSH), OpenPGP, S/MIME e tutti i browser che la utilizzano. Inoltre, viene usata anche da alcune criptovalute. Per questo motivo, praticamente tutto il mondo dell’e-commerce dipende da questo algoritmo crittografico.