He leído muchas y muchas de este tipo de preguntas en la comunidad de la pila de seguridad antes de hacer esta pregunta, pero una cosa que me hizo enojar por las sales y guardarlas en la base de datos es esto ... Me pondré en el Posición del atacante.
Si hackeo una base de datos y encuentro una tabla llamada por ejemplo (usuarios) y veo un campo llamado (sal) y otro (contraseña o hash) puedo, fácilmente, sin esfuerzo, saber que se usa la sal Para producir este hash o esta contraseña. Así que, por ejemplo, tomaré la sal del primer registro y haré un diccionario de todos los hashes de todas las palabras en inglés (tabla del arco iris) y luego usaré la sal que obtuve del primer registro y trataré de hacer hash con cada hash. entré en la mesa del arco iris y obtendré el hachís salado fácilmente al final ... así que, por favor, ¿por qué todo el mundo dice SO o Internet dice que poner la sal en la base de datos es una buena práctica o es seguro? .. No lo veo como seguro y, por favor, corríjame si me equivoco ... gracias de antemano.
He pospuesto mi proyecto debido a este problema.