Freestart collision di SHA-1

SHA-1 è un algoritmo di hash, ovvero un algoritmo che trasforma una serie di dati di lunghezza arbitraria in una serie di dati di lunghezza fissa.

In crittografia una buona funzione di hash non deve permettere di dedurre i dati sorgente conoscendo solamente il risultato e non deve permettere facili collisioni, ovvero dato un risultato, trovare una sequenza di dati che fornisca quel preciso valore di hash.

Le funzioni di hash utilizzate in crittografia cambiano con l’evolversi della potenza computazionale a disposizione. MD5 è stato reso obsoleto da tempo, ora è il turno di SHA-1 perché la sua vulnerabilità è una cosa nota da qualche tempo.

Con un hardware attuale normalmente acquistabile si può calcolare una collisione SHA-1 in una settimana circa.

Marc Stevens (Centrum Wiskunde & Informatica, Olanda), Pierre Karpman (Inria, Francia) e Thomas Peyrin (Nanyang Technological University, Singapore) hanno descritto come ottenere una collisione SHA-1 applicando il metodo battezzato Freestart Collision.

Bisogna dire subito che per ottenere una collisione in una decina di giorni non è sufficiente un laptop o un PC, anche potenti, ma un hardware assemblato ad hoc partendo da pezzi normalmente acquistabili popolato da una serie di GPU (processori delle schede grafiche). Per quanto non sia una cosa disponibile nelle case di tutti, è pur sempre un hardware che si può acquistare senza problemi ed assemblare con un minimo di conoscenza.

Le prime pubblicazioni di circa una decina di anni fa sui possibili attacchi a SHA-1 erano fuori dalla portata di organizzazioni non governative e richiedevano un ordine di grandezza di 269 chiamate all’algoritmo di hash per trovare una collisione. L’algoritmo Freescale permette di abbassare le chiamate a 250.

Nel 2012 Bruce Schneier prevedeva che nel 2015 il costo del calcolo di una collisione SHA-1 sarebbe stato di 700.000 dollari, costo che si sarebbe abbassato a 173.000 dollari nel 2018.

Purtroppo la previsione era fin troppo pessimista perché una collisione SHA-1 con Freescale ha un costo che va dai 75.000 ai 120.000 dollari, un prezzo che potrebbe far diventare vantaggiosi alcuni crimini e renderli alla portata di molte organizzazioni malavitose.

Algoritmi hash - Trustworthy Internet MovementSecondo Trustworthy Internet Movement nel momento della redazione di questo articolo i certificati firmati con SHA-1 sono il 28,2%. Se è vero che i siti più importanti non utilizzano più quell’algoritmo, resta il fatto che un sito https su quattro utilizza un algoritmo che dovrebbe passare quanto prima nei libri di storia.

Per sapere se un sito utilizza ancora SHA-1 e per avere ulteriori informazioni si può visitare Shaaaaaaaaaaaaa, che utilizza un algoritmo open per valutare il tipo di connessione TLS.

Autore: Luigi Rosa

Consulente IT, sviluppatore, SysAdmin, cazzaro, e, ovviamente, geek.

2 pensieri riguardo “Freestart collision di SHA-1”

Spazio per un commento