Si no lo hace la sal su contraseña, usted es sospechoso de los ataques de mesa arco iris (Diccionarios precompilados que tienen entradas válidas para un hash dado)
El otro desarrollador debe dejar de hablar de seguridad si estás almacenar contraseñas en texto plano y comienza a leer sobre seguridad.
Las colisiones son posibles, pero no son un gran problema para las aplicaciones de contraseñas (generalmente son un problema en áreas donde los hash se usan para verificar la integridad de los archivos).
Así que sal de sus contraseñas (agregando el Salt al lado derecho de la contraseña *) y use un buen algoritmo hash como SHA-1 o preferiblemente SHA-256 o SHA-512.
PD: Un poco más de detalles sobre Hashes here.
* no estoy seguro de si la sal debe o no al principio o al final de la cadena. El problema es que si tiene una colisión (dos entradas con el mismo hash), agregar Sal al lado "incorrecto" no cambiará el hash resultante. De ninguna manera, no tendrá grandes problemas con Rainbow Tables, solo con colisiones
buena captura allí - realmente es una respuesta emocional del compañero de trabajo del OP. Dirigirse a los Fuzzies cálidos probablemente sea más productivo que la lógica y las métricas difíciles. ¿Tal vez presionar la opción de algoritmo de hash en el colega para que tengan más información sobre la solución adecuada? –
Tiene un muy buen punto aquí. No mencioné en la pregunta, pero este era su código, él lo implicó de esta manera. Ahora es mi código, así que podría cambiarlo unilateralmente, pero preferiría permitirle que me guarde la cara/estoy de acuerdo en caso de que necesite más ayuda para entender el código ... –