È risaputo che SHA1 è raccomandato più di MD5 per l'hashing poiché MD5 è praticamente rotto in quanto sono state trovate molte collisioni. Con l'attacco di compleanno, è possibile ottenere una collisione in MD5 con 2 64 complessità e con 2 80 complessità in SHA1
È noto che esistono algoritmi in grado di decifrare entrambi in tempi molto minori rispetto a quelli necessari per un attacco di compleanno.
La mia domanda è: MD5 è considerato insicuro solo per questo motivo che è facile produrre collisioni? Perché guardare entrambi, produrre collisioni in SHA1 non è poi così difficile. Quindi cosa rende SHA1 migliore?
Aggiornamento 02/2017 - link