L’algoritmo RSA (l’acronimo prende il nome dai suoi inventori Rivest, Shamir, Adleman) è una delle soluzioni per la crittografia asimmetrica (o a chiave pubblica) più apprezzate e utilizzate a livello mondiale. È basato sulla difficoltà di fattorizzazione dei numeri interi più grandi in fattori primi. La chiave pubblica è usata per crittografare i dati o per verificare la firma digitale, la chiave privata permette di decodificare i dati e generare firme digitali.
Come abbiamo visto nell’articolo incentrato sulla sicurezza dell’algoritmo RSA, le sue chiavi sono generate in modo tale che sia computazionalmente molto difficile (di fatto praticamente impossibile) derivare la chiave privata dalla chiave pubblica. Il crescente avanzamento della potenza computazionale, tuttavia, e l’avvento di nuove tecniche e algoritmi tende a rende più praticabile e meno costosa la decodifica di messaggi cifrati usando versioni di RSA che prevedono l’uso di chiavi di dimensioni inferiori.
RSA 1024-bit: Windows inizia a considerarlo un algoritmo non sicuro
Microsoft ha annunciato che le chiavi RSA più corte di 2048 bit non saranno più supportate a livello di protocollo di sicurezza TLS (Transport Layer Security) in Windows.
In generale, la resistenza di una chiave RSA dipende da vari fattori, tra cui la lunghezza della chiave stessa, ma anche dalla complessità degli algoritmi di fattorizzazione utilizzati per rompere la chiave. Quindi, mentre una chiave RSA di 1024 bit può avere approssimativamente una resistenza di circa 80 bit, una chiave RSA-2048 è contraddistinta, approssimativamente, da una resistenza di 112 bit.
I due dati indicano che, in termini di complessità computazionale, rompere la chiave richiederebbe una quantità di lavoro equivalente, rispettivamente, a circa 280 e 2112 operazioni. Si tratta comunque soltanto di una mera approssimazione della resistenza e non di una correlazione diretta tra la lunghezza della chiave e il numero di bit di resistenza.
Le chiavi RSA sono utilizzate in Windows per diversi scopi, tra cui l’autenticazione del server, la crittografia dei dati e la garanzia dell’integrità delle comunicazioni. La decisione di Microsoft di rendere più severo il requisito minimo per le chiavi RSA avrà un impatto diretto sul funzionamento dei certificati digitali usati per autenticare i server TLS. Gli scambi di dati che prevedono l’uso dell’algoritmo RSA 1024-bit non funzioneranno più.
Non è una novità: l’uso di RSA-1024 è sconsigliato già da anni
Le Autorità regolatorie e le organizzazioni che si occupano di standard per la rete Internet hanno vietato l’uso delle chiavi a 1024 bit già nel 2013, raccomandando – nel caso di RSA – una lunghezza pari ad almeno 2048 bit.
Non è quindi propriamente da ieri che si sconsiglia l’uso dell’algoritmo RSA con chiavi di dimensioni ridotte. Anche se Microsoft non ha specificato esattamente quando inizierà l’abbandono di RSA 1024-bit in Windows, sarà previsto un periodo di interregno, come già fatto nel caso dell’accantonamento delle chiavi di dimensioni a 1024 bit nel 2012.
La decisione di Microsoft potrebbe comunque avere un impatto rilevante su tutte quelle imprese che utilizzano ancora oggi software e dispositivi di rete legacy, come le stampanti, che utilizzano chiavi RSA a 1024 bit: in questi casi, programmi e device saranno impossibilitati ad autenticarsi sui server Windows.
Gli amministratori di sistemi Windows possono utilizzare i log di sistema per determinare quali dispositivi stanno cercando di connettersi utilizzando chiavi più vecchie e identificare quelli non più funzionanti dopo la migrazione a RSA 2048-bit e versioni successive.
Venti anni fa, gli esperti di sicurezza ipotizzavano che RSA 2048-bit sarebbe rimasto sicuro almeno fino al 2030. Adesso, con l’esplosione del cloud computing e con la disponibilità di GPU sempre più potenti, il panorama potrebbe essere destinato a cambiare piuttosto velocemente. Con i computer quantistici ormai sullo sfondo.
Credit immagine in apertura: iStock.com – BlackJack3D