Un cifrario post-quantistico è stato rotto da un processore del 2013 in un'ora
di Riccardo Robecchi pubblicata il 04 Agosto 2022, alle 13:21 nel canale InnovazioneFine dei giochi, almeno per ora, per SIKE, uno dei cifrari in grado di resistere agli attacchi dei computer quantistici proposti per la standardizzazione. Uno Xeon del 2013 l'ha rotto in un'ora
Solo poche settimane fa il NIST, l'ente statunitense preposto alla definizione degli standard, annunciava i primi quattro algoritmi per la crittografia post-quantistica. Tali algoritmi promettono di risolvere uno dei problemi più grandi creati dall'avvento dei computer quantistici: la loro capacità di rompere la crittografia a chiave pubblica usata oggi, tra le altre cose, per le comunicazioni su Internet. Quattro ulteriori algoritmi sono in una fase di considerazione per la standardizzazione per avere una maggiore varietà e, dunque, un migliore livello di sicurezza complessivo. Uno di questi, SIKE, è stato però inaspettatamente rotto e non potrà quindi diventare uno standard. Non senza una certa ironia, il cifrario è stato rotto da un computer tradizionale di potenza limitata.
Un aspetto importante da tenere a mente è che questo attacco non influisce in alcun modo sui cifrari già standardizzati: essi sono, infatti, basati su tecniche matematiche completamente differenti e senza alcuna relazione con quella usata per SIKE. I cifrari già approvati, dunque, restano sicuri, almeno fino a prova contraria.
SIKE viene rotto da un computer normale in appena un'ora
La crittografia a chiave pubblica prevede l'uso di complesse tecniche matematiche che consentono di usare due chiavi, una pubblica e una privata, per cifrare un dato: usando la chiave pubblica, solo chi è in possesso di quella privata potrà leggere i dati; dall'altro lato, chiunque può verificare che il dato è stato cifrato dal possessore della chiave privata tramite la chiave pubblica, garantendo così l'autenticità del dato stesso. L'aspetto importante è che, usando la crittografia a chiave pubblica, non è necessario che due parti abbiano già condiviso in anticipo una chiave crittografica "tradizionale": è proprio grazie a questa caratteristica che la crittografia a chiave pubblica è diventata essenziale per le comunicazioni su Internet.
I calcoli necessari per l'uso della crittografia a chiave pubblica sono, però, spesso impegnativi e per questo vengono sovente usati protocolli per lo scambio di chiavi simmetriche. Per fare un esempio pratico, collegandosi al sito della banca, il primo scambio avviene usando le chiavi pubbliche, ma viene poi concordato l'uso di un'altra chiave per cifrare le successive comunicazioni usando un algoritmo a chiave simmetrica come AES. In tal modo si ottiene un elevato livello di sicurezza, accoppiato a prestazioni superiori. Questo processo si chiama "incapsulamento".
SIKE, sigla che sta per Supersingular Isogeny Key Encapsulation (incapsulamento di chiavi tramite isogenie supersingolari), è un algoritmo proposto per la standardizzazione pensato proprio per sostituire quelli attuali, vulnerabili agli attacchi da parte dei computer quantistici. Parte di SIKE è il protocollo SIDH, ovvero Supersingular Isogeny Diffie-Hellman (Diffie-Hellman tramite isogenie supersingolari): di fatto, il protocollo di scambio della chiave simmetrica spiegato più sopra usando un algoritmo di cifratura a prova di attacco da parte dei computer quantistici.
O così si credeva. Durante il fine settimana, infatti, alcuni ricercatori dell'Universita di Leuven, nei Paesi Bassi, hanno pubblicato uno studio preliminare in cui affermano di essere riusciti a rompere il nuovo algoritmo con un computer tradizionale in meno di un'ora. Per essere specifici, i ricercatori hanno usato un singolo core di un processore Intel Xeon E5-2630v2, lanciato nel 2013. I ricercatori riceveranno ora 50.000 dollari, messi in palio dal NIST.
SIKE usa le isogenie: semplificando molto, delle trasformazioni matematiche (morfismi di gruppi algebrici, in gergo tecnico) per effettuare trasformazioni da una curva A a una curva B. L'attacco trovato dai ricercatori si basa sul fatto che tali trasformazioni non vengono compiute direttamente, ma tramite passaggi intermedi: determinando le curve intermedie è possibile risalire alla chiave usata per la cifratura e, di fatto, rompere l'algoritmo.
L'attacco è valido per l'algoritmo pubblicato, che prevede l'uso di un passo per generare la chiave. In teoria, è possibile che l'uso di un algoritmo con due passi non sia suscettibile allo stesso attacco e risulti dunque sicuro. Tuttavia, per il momento SIKE è da considerare fuori dai giochi, quantomeno nell'incarnazione attuale.
Problemi difficili (anche da analizzare in cerca di problemi)
Non è il primo caso in cui algoritmi considerati per la standardizzazione nel concorso indetto dal NIST vengono rotti. A febbraio era stato il turno di Rainbow, che era considerato fra i favoriti ed era già stato adottato, molto prematuramente, anche per alcune blockchain.
Perché però questi attacchi sono venuti alla luce solo ora, dopo anni di scrutinio intenso e continuo? La risposta è che gli algoritmi usati per la crittografia si basano su problemi difficili: tale termine viene impiegato per parlare dell'estrema difficoltà nel risolverli da parte dei computer, con tempi di risoluzione che arrivano ai miliardi di anni, ma in questo caso possiamo dire che siano difficili anche nell'approccio da parte delle persone.
Parlando ad Ars Technica, David Jao, uno degli inventori di SIKE, ha spiegato che "è vero che l'attacco usa concetti matematici che sono stati pubblicati negli anni Novanta e Duemila. In un certo senso, l'attacco non richiede nuova matematica; avrebbe potuto essere notato in qualunque momento. Un aspetto inaspettato dell'attacco è che usa curve di genere 2 per attaccare le curve ellittiche (che sono curve di genere 1). Una connessione tra i due tipi di curve è piuttosto inattesa. Per dare un esempio di ciò che intendo, per decenni si è cercato di attaccare la crittografia basata sulle curve ellittiche, e alcuni hanno cercato di usare approcci basati su curve di genere 2. Nessuno di questi tentativi ha avuto successo, quindi è uno sviluppo inatteso che questo tentativo abbia avuto successo nel campo delle isogenie. In generale c'è molta matematica che è stata pubblicata in letteratura ma che non è ben compresa dai crittografi. Mi metto in questa categoria dei molti ricercatori che lavorano nel campo della crittografia ma non capiscono la matematica come dovrebbero. Talvolta, dunque, tutto ciò che serve è che qualcuno riconosca la possibilità di applicare la matematica teoretica esistente a questi nuovi crittosistemi. È ciò che è avvenuto in questo caso."
È importante notare come questo risultato possa apparire negativo, ma sia in realtà esattamente il motivo per cui gli algoritmi crittografici vengono sottoposti a fasi di critica pubblica. Se non si procedesse in questo modo, il rischio sarebbe che algoritmi deboli venissero standardizzati, magari implementati anche in hardware, solo per scoprire successivamente che esisteva un attacco in grado di romperli. È dunque d'uopo, ancora una volta, rimarcare come la collaborazione attiva e aperta porti ai risultati migliori. Grazie a processi aperti e pubblici è possibile coinvolgere persone con esperienze e conoscenze diverse, così da arrivare ai migliori risultati possibili.
30 Commenti
Gli autori dei commenti, e non la redazione, sono responsabili dei contenuti da loro inseriti - infoDai Riccardo, un minimo di sforzo per una traduzione che non usi le estremità inferiori.
Dai Riccardo, un minimo di sforzo per una traduzione che non usi le estremità inferiori.
Mi rendo conto che il tema non rientri tra le conoscenze del grande pubblico e che quindi ci possa essere qualche incertezza riguardo i termini. "Rompere un cifrario" è terminologia specifica nell'ambito della crittografia, non una traduzione malfatta. Ti basta cercare su Google "rompere cifrario" per trovare molti esempi in letteratura. Ad esempio, puoi trovare l'espressione in queste diapositive prodotte dalla docente di crittografia dell'Università di Pisa. Se non bastasse, puoi trovarla anche sulla Treccani.
Credo che il motivo per cui viene utilizzato "rompere" sia che un cifrario è un po' come un lucchetto, per cui la difesa che offre viene completamente meno una volta che riesci a "romperlo". E non puoi tornare indietro, che è proprio il punto saliente della faccenda: una volta trovato un modo per rompere un cifrario, questo diventa inutile, esattamente come un lucchetto rotto.
Spero di aver chiarito il tuo dubbio.
Non va ancora l'implementazione di algoritmi mirati all'uso quantistico,
perché è sbagliato l'approccio.
I fenomeni quantistici sono di difficile comprensione perché non rispecchiano
ciò che per noi, nella realtà in cui ci muoviamo, viviamo normalmente, la "logicità"
dello scorrere degli eventi.
Anche la matematica che costituisce un punto fermo su ciò che è logico, in
situazioni quantistiche perde di validità ed ha bisogno di rettifiche.
Quando studiavo fisica della materia, qualche decennio fa, già un mio professore,
impegnato in questo tipo di tematiche, mi diceva che la fisica
quantistica "era incomprensibile" per molti fisici e matematici, e che ancora vi
era tutta una branca di studi da portare avanti, ma le difficoltà erano tante.
Sicuro è che ci sono tante cose da scoprire, digerire e rettificare.
Forse è proprio vero che Dio non gioca ai dadi... o forse no!
Fine dei giochi, almeno per ora, per SIKE, uno dei cifrari in grado di resistere agli attacchi dei computer quantistici proposti per la standardizzazione. Uno Xeon del 2013 l'ha rotto in un'ora
Click sul link per visualizzare la notizia.
LOL
(scherzo eh, mi pare di aver letto che i computer quantistici sono strettamente più potenti dei tradizionali perché sono più veloci, anche se solo di un fattore polinomiale (per quanto noto ad oggi) nella ricerca non strutturata (algoritmo di Grover))
Probabilmente è una terminologia specifica che nasce da una traduzione mal fatta ma che è stata ormai acquisita i quell'ambiente (ambiente in cui, ad alto livello, suppongo si sia soliti comunicare in inglese).
Anche l'articolo della Treccani che hai linkato sopra non a caso mette "rompere" tra virgolette, prima di utilizzarlo.
Secondo me un termine più appropriato sarebbe "violato", che suona molto meglio nella nostra lingua ed è corretto. Questo non toglie che anche rompere sia corretto in quanto ormai acquisito, ma rimane abbastanza cacofonico.
..e fa ridere perché dallo studio "[...]in about one hour on a single core[...]" sembra dire quasi intendere: 'na ciofeca d'algoritmo
Devi effettuare il login per poter commentare
Se non sei ancora registrato, puoi farlo attraverso questo form.
Se sei già registrato e loggato nel sito, puoi inserire il tuo commento.
Si tenga presente quanto letto nel regolamento, nel rispetto del "quieto vivere".