Uso l'hash MD5 per identifying files with unknown origin. Nessun attaccante qui, quindi non mi interessa che MD5 sia stato rotto e si possa generare una collisione.Posso utilizzare una parte dell'hash MD5 per l'identificazione dei dati?
Il mio problema è che ho bisogno di fornire la registrazione in modo che i diversi problemi siano diagnosticati più facilmente. Se registro ogni hash come una stringa esadecimale troppo lunga, scomoda e sembra brutta, quindi mi piacerebbe accorciare la stringa hash.
Ora so che basta prendere una piccola parte di un GUID is a very bad idea - I GUID sono progettati per essere unici, ma parte di essi non lo sono.
Lo stesso vale per MD5 - posso dire prima i 4 byte di MD5 e assumere che ho solo una probabilità di collisione più alta a causa del numero ridotto di byte rispetto all'hash originale?
possibile duplicato di http://stackoverflow.com/questions/860405/are-the-first-32-bits-of-an-md5-hash-just-as-random-as-any-other-substring –
Mi chiedo se ottenere i primi 4 byte sia meglio che utilizzare il CRC32 dell'hash md5. –
Sì, perché i primi 32 bit in MD5 dovrebbero essere distribuiti in modo casuale, quindi non è possibile migliorare la distribuzione. –