php - password_hash - ¿Almacenar sales de contraseña por separado de los hash de contraseñas?
password_hash php ejemplo (1)
De todo lo que he leído y hecho, no hay nada de malo en almacenar el hash de la contraseña y la contraseña en columnas separadas, y esa es la forma más común de hacerlo.
El método básico para la autenticación debería ser algo como esto:
- Recupere user_id y password_salt usando el nombre de usuario o correo electrónico proporcionado por el usuario
- Entrada de contraseña proporcionada por el usuario de Concat con sal recuperada
- Usar el algoritmo hash en una cadena combinada
- Verificar el hash creado contra el hash en la base de datos
Posible duplicado:
¿Cuál es la mejor manera posible de salar y almacenar sal?
Mejora el hash de contraseñas con sal aleatoria
Suponiendo que usando un algoritmo correcto para el hash de contraseñas y generando diferentes sales para cada contraseña ...
¿Es un riesgo de seguridad almacenar sales por separado de hashes de contraseñas? Por ej. en una tabla de base de datos, almacenar hashes de contraseña en una columna y sales de contraseña en una columna separada?
Vi estrategias donde la sal está incrustada en el hash de la contraseña en sí, mediante el uso de un algoritmo específico. Más adelante, la sal puede extraerse del hash de contraseña. ¿Esto es más seguro?