Quanto velocemente può essere trovata una collisione MD5

5

Se ho un massimo di 16 byte e 16 byte di dati, quanto velocemente si possono trovare altri 16 byte di dati in modo che MD5 (sale + dati) == MD5 (sale + altri dati)?

Non mi aspetto una risposta precisa al nanosecondo, solo una stima del tipo "pochi secondi", "poche ore", "poche civiltà".

    
posta Serge Profafilecebook 08.05.2014 - 17:22
fonte

1 risposta

11

Quello che vuoi non è una collisione ma un secondo preimage .

Una collisione è: trova due messaggi distinti m e m ' che hash allo stesso valore.

Un secondo preimage è: dato un messaggio m , trova un messaggio distinto m ' tale che entrambi i messaggi abbiano lo stesso valore.

Le seconde pre-immagini sono più difficili perché l'attaccante non può scegliere entrambi i messaggi a piacimento. MD5 è molto rotto contro le collisioni (le collisioni possono essere generate in meno di un secondo) ma non contro le seconde pre-immagini. Per questo, l'attacco più noto è un attacco di preimage generico che è solo teorico, poiché è costato 2 123.4 , cioè molto più in alto di ciò che può essere fatto nella pratica.

Quindi la risposta non corretta alla tua domanda specifica è: non può essere fatto (con la tecnologia esistente e gli attacchi noti su MD5).

(Sono qui a parlare solo di trovare un secondo preimage su MD5, non sulla sicurezza dell'utilizzo di MD5 (salt + data) in un contesto specifico, se "sale" e "data" sono noti o meno. chiunque utilizzi MD5 (salt + data) richiede effettivamente una funzione di hashing della password o HMAC.)

    
risposta data 08.05.2014 - 17:36
fonte

Leggi altre domande sui tag