Quiero almacenar algunos datos para que el único que pueda acceder a ellos sea el propio usuario. Aquí está mi idea: cuando el usuario se registre, su contraseña se incluirá en SHA256
(para que encaje como una clave AES), y cifre los datos usándolos como una clave AES 256
.
Si es así, puedo renunciar a la sección de contraseñas en la base de datos, no necesitaré cifrar la contraseña, crear sal, etc. Solo puedo intentar descifrar los datos. Si es así, la contraseña es correcto.
Entonces, ¿qué se considera más seguro? Hash unidireccional usando password_hash
de PHP con una sal fuerte, o simplemente hash la contraseña usando SHA256
y úsala como una clave AES ( que no estará encriptando la contraseña en sí)?
Después de todo, he leído que AES 256 es lo suficientemente seguro como para cifrar la información de TOP SECRET, así que estoy bastante seguro de que es difícil averiguar cuál es la clave. E incluso si de alguna manera se apoderan de la llave, tendrán que forzar a la SHA256 a acceder a la contraseña.
¡Gracias!