Un MD5-Hash consta de 128 bits. Un solo bit invertido en la fuente voltea (en promedio) 64 bits en el hash.
La probabilidad de que dos hashes colisionen accidentalmente es 1/2 ^ 128, que es 1 en 340 undecillion 282 decillion 366 nonillion 920 octillion 938 septillion 463 sextillion 463 quintillion 374 quadrillion 607 trillion 431 billones 768 millones 211 mil 456.
Sin embargo, si mantiene todos los hash, entonces, gracias a la paradoja de cumpleaños, la probabilidad es un poco mayor. Para tener un 50% de posibilidades de que un hash choque, necesitas 2 ^ 64 hashes. Esto significa que para obtener una colisión, en promedio, necesitará hash 6 mil millones de archivos por segundo durante 100 años.
Fuente: porneL, /programming/201705/how-many-random-elements-before-md5-produces-collisions