Así que esto es básicamente una garantía de que estoy haciendo todo el proceso de registro/inicio de sesión en lo que respecta a hashing/salazón.Hashing & Salting - Validar el inicio de sesión con cookies
Tengo una tabla de usuarios con los campos password, salt, token (obviamente hay otros, pero este es el más importante). Tras el registro se genera una sal al azar, y una muestra aleatoria, y se pone en el campo de la contraseña esto:
hash("sha256", $theirpostpassword.$randomgeneratedsalt);
que la sal generada al azar y el token se almacenan en sus respectivos ámbitos en los que los usuarios fila de la tabla.
De modo que al iniciar sesión selecciono SOLAMENTE la sal de la fila de usuarios con el nombre de usuario que especificó. Luego hago una consulta de recuento de cuántas filas tienen su contraseña de entrada concatenada con su sal específica, y luego las inicio de sesión. Estoy bastante seguro de que tengo esa parte desactivada.
Ahora estaba pensando en validar su inicio de sesión en cada página que tendría una función ejecutó cada página que comprueba su cookie para ver si el formato de id-username-token coincide con la fila en la base de datos. Lo que significa que cada inicio de sesión establece su cookie con esas credenciales.
Ahora, lo único que se me ocurre para hacerlo mejor es cambiar el token de cada inicio de sesión válido?
Gracias por la perspicacia chicos.
Me gustaría que el token dependa de la IP del usuario remoto, pero al comprobar que la cookie -con esa información- en cada solicitud parece funcionar bien. – ncuesta
Gracias por la respuesta rápida, estaba un poco en contra de la comprobación de IP por completo ya que sé que hay algunas direcciones IP dinámicas que cambian con bastante frecuencia. –
No debe crear el sistema de autenticación usted mismo porque muchas cosas pueden salir mal. ¡Utilice facebook connect/twitter sign in/openid etc. en su lugar! – Alfred