Voglio dire che con una lunghezza standard di 32 sei destinato ad avere una collisione hash, faccio questa domanda solo per curiosità. Non ho ancora installato un supercomputer o un timemachine.
Nessuno, presumendo che tu non stavi cercando di fare una collisione. MD5 ha una lunghezza di 128 bit, offrendo una resistenza a 64 bit agli attacchi di collisione a forza bruta (ad esempio, è necessario eseguire l'hash 2 ^ 64 elementi casuali per prevedere una collisione). Ci sono stati solo circa 2 ^ 40 microsecondi dal 1/1/1970, quindi non avresti avuto alcuna collisione se avessi scelto input casualmente. Dovresti provare a ottenere una collisione (che è abbastanza facile da fare, ma il picking casuale non aiuta)
La cosa complicata è non avere due collisioni dal nulla (anche se ciò non deve accadere con hash crittografici sicuri, altrimenti non è più considerato sicuro).
La cosa difficile è trovare una collisione contro un hash noto. Ad esempio, essere in grado di produrre un certificato diverso producendo lo stesso hash in modo che la firma rimanga valida, essere in grado di produrre un'immagine ISO diversa, pacchetto di aggiornamento o binario che produrrebbe lo stesso hash in modo che tutte le firme rimarrebbero OK. p>
Finalmente, per quanto riguarda la tua domanda attuale, tutto dipende dalla tua potenza di calcolo. Oggigiorno, usando un attacco appropriato , le ricerche affermano che è possibile trovare una collisione MD5 in un tempo che varia da 15 minuti a 1 ora.
Leggi altre domande sui tag hash