Ricercatori falsificano firme RSA all'interno di un modulo di sicurezza hardware senza estrarre la chiave
Punti chiave
- •Ricercatori dell'UC San Diego e dell'INRIA hanno falsificato firme RSA per una chiave a 1.024 bit mentre rimaneva all'interno di un modulo di sicurezza hardware, descrivendo l'attacco in un articolo inviato all'IACR Cryptology ePrint Archive il 20 settembre.
- •La dimostrazione ha comportato la disattivazione della modalità FIPS del modulo, l'uso di una chiave di test, circa 2^32 (circa 4 mili) di richieste di firma scelte e una computazione stimata in 1.380 CPU core-anni.
- •L'attacco non riguarda Bitcoin o Ethereum perché queste reti utilizzano firme su curve ellittiche come ECDSA e Schnorr anziché RSA.
- •Gli schemi di padding RSA standard come PKCS#1 v1.5 e PSS prevengono l'oracolo sfruttabile, quindi gli autori affermano che l'attacco probabilmente non rappresenta una minaccia operativa immediata per la maggior parte delle distribuzioni RSA moderne.
- •Gli autori descrivono il risultato come evidenza classica a favore dell'abbandono di RSA durante la transizione post-quantistica, un passaggio che Google mira a completare per i propri sistemi entro il 2029.

Ricercatori dell'Università della California San Diego e dell'INRIA francese hanno falsificato firme RSA su una chiave a 1.024 bit conservata all'interno di un modulo di sicurezza hardware, il dispositivo a prova di manomissione su cui contano i custodi istituzionali per proteggere le chiavi crittografiche, senza mai estrarre la chiave stessa.
I ricercatori hanno di fatto impersonato un modulo di sicurezza hardware, un dispositivo che conserva chiavi private e firma su richiesta, inducendolo a produrre firme valide mentre la chiave rimaneva al suo interno. Hanno descritto l'attacco in un articolo inviato all'IACR Cryptology ePrint Archive il 20 settembre.
Per i possessori di criptovalute, il risultato non è un violazione di Bitcoin o Ethereum. Bitcoin firma le transazioni con l'algoritmo di firma a curva ellittica, o ECDSA, e la sua curva supporta anche le firme Schnorr. Anche Ethereum e la maggior parte delle altre grandi blockchain utilizzano firme su curve ellittiche. Questo articolo riguarda la crittografia Rivest-Shamir-Adleman, ovvero RSA, uno schema di firma diverso.
Il risultato resta comunque uno stress test di come le chiavi vengono protette. I fornitori di custodia istituzionale, secondo BitGo, utilizzano moduli di sicurezza hardware, scatole a prova di manomissione progettate affinché le chiavi non esistano mai al di fuori dell'hardware e gli estranei possano solo richiedere firme. In questo caso la chiave non ha mai lasciato il dispositivo, e i ricercatori hanno comunque falsificato le firme.
Hanno però disattivato la modalità FIPS del modulo, un'impostazione di sicurezza certificata, affinché firmasse numeri non formattati, e hanno utilizzato una chiave di test propria. Hanno quindi chiesto al dispositivo di firmare circa 4 miliardi di numeri di loro scelta, circa 2^32 richieste di firma, prima di elaborare i risultati. Il calcolo ha richiesto in totale una stima di 1.380 CPU core-anni. Si pensi a una cassaforte che non si apre mai ma timbra qualsiasi foglio bianco le si faccia scivolare sotto la porta: chiedendo abbastanza volte, si può imparare a creare il timbro dai.
Che cos'è una firma?
Ogni volta che un utente conferma una transazione, il proprio wallet la firma con una chiave privata. Quella firma digitale prova che il detentore della chiave ha approvato la transazione e che nessuno ha alterato il messaggio durante il tragitto, rendendo le firme fondamentali per ogni trasferimento di valore su una blockchain.
RSA è uno dei modi per costruire quella prova. Fu creato nel 1977 da Ron Rivest, Leonard Adleman e Adi Shamir, la "S" nel nome. L'idea chiave è che moltiplicare due numeri primi enormi è facile, ma separare nuovamente il risultato, un processo chiamato fattorizzazione, è estremamente difficile. Gli autori scrivono che la sicurezza di RSA è generalmente ritenuta basata su quella difficoltà, sebbene non sia mai stato dimostrato che violare RSA equivalga alla fattorizzazione. Questo team non ha mai fattorizzato nulla.
Chi è interessato
La firma RSA standard applica il padding, un passaggio di offuscamento e formattazione, come PKCS#1 v1.5 o PSS, che precede i calcoli sottostanti, e le firme con padding non creano l'oracolo sfruttabile. In pratica, l'attacco funziona solo contro un dispositivo configurato per firmare numeri grezzi non formattati. L'esposizione segnalata dipende quindi dall'interfaccia di firma e dalla sua configurazione, non semplicemente dal fatto che una chiave sia conservata in un HSM. Gli autori affermano che probabilmente non rappresenta una minaccia operativa immediata per la maggior parte delle distribuzioni RSA moderne. L'articolo è un preprint.
Alcuni sistemi forniscono l'oracolo di proposito: le firme cieche basate su RSA permettono a un server di firmare qualcosa senza vederlo, ed è così funziona una variante di Privacy Pass. Cloudflare dichiara che Apple utilizza una versione di Privacy Pass che consente agli utenti di dimostrare di aver superato un controllo, come un CAPTCHA, senza rivelare la propria identità.
Le firme cieche hanno radici nel mondo crittografico. Il crittografo David Chaum utilizzò la tecnica quando fondò DigiCash nel 1989.
La minaccia maggiore resta quantistica
I titoli che annunciano "RSA è violato" hanno un passato. Nel gennaio 2023, ricercatori cinesi hanno rivendicato un metodo quantistico che minacciava RSA, ma avevano fattorizzato solo un numero a 48 bit, e gli esperti hanno respinto l'affermazione. Questa volta la dimostrazione riguarda una vera chiave a 1.024 bit, con un asterisco grande quanto l'oracolo.
Gli autori descrivono il loro risultato come evidenza classica a favore dell'abbandono di RSA durante la transizione post-quantistica, il passaggio a crittografia costruita per sopravvivere ai computer quantistici.
Per Bitcoin, la questione quantistica riguarda le firme su curve ellittiche. Ricercatori del Caltech hanno stimato a fine marzo che da 10.000 a 20.000 qubit, la versione quantistica dei bit, potrebbero essere sufficienti per eseguire l'algoritmo di Shor, il metodo che minaccia queste firme.
Google ha fissato il 2029 come scadenza per completare la migrazione dei propri sistemi alla crittografia post-quantistica.