Los ataques de colisión no son un problema cuando se trata de hashes de contraseña. El problema con SHA256 y MD5, desde una perspectiva de hash de contraseña, es que ambos son demasiado rápidos. MD5 es bastante más rápido que SHA256, de hecho.
Para aclarar qué es un ataque de colisión, y por qué no importa cuando se trata de hash de contraseña, es cuando una función de hash permite que un atacante encuentre dos entradas que resulten en el mismo valor de hash. El hecho de que el atacante pueda controlar y manipular las entradas ambas para encontrar un valor de colisión es crítico. Sin embargo, cuando tiene un sistema de hash de contraseñas, el atacante no tiene la capacidad de no para controlar la primera entrada. El creador de contraseñas controla la primera entrada. El atacante solo tiene el valor hash resultante de la primera entrada, y la capacidad de intentar crear un hash coincidente desde una segunda entrada que sí controlan. Si pueden encontrar una segunda entrada que cree un hash idéntico, esto no es un ataque de colisión, sino un segundo ataque previo a la imagen, y ni siquiera el MD5 es susceptible a estos.
Entonces, en última instancia, la velocidad es el único problema, ya que las personas eligen las contraseñas de manera deficiente, y la velocidad con un hash MD5 puede calcularse es lo suficientemente rápida como para que un atacante intente muchos, muchos candidatos potenciales de entrada para encontrar El uno de los resultados en el hash de contraseña.