这基本上是一个保证,我在哈希/盐处理方面正确地完成了整个注册/登录过程。
我有一个用户表,其中包含密码、盐、令牌字段(显然还有其他字段,但这是最重要的)。在注册时,它会生成一个随机的盐和令牌,并将其放入密码字段中:
hash("sha256", $theirpostpassword.$randomgeneratedsalt);
那个随机生成的盐和令牌被存储在用户表中各自的字段中。因此,在登录时,我只从指定用户名的用户行中选择盐。然后,我进行一个查询来计算有多少行将其帖子密码与其特定盐串联起来,然后再登录他们。我相信我已经掌握了这部分内容。
现在,我想在每个页面上验证他们的登录,我会运行一个函数检查他们的cookie,以查看id-username-token格式是否与数据库中的行匹配。这意味着每次登录都会使用这些凭据设置他们的cookie。
现在,我唯一能想到的改进是在每次有效登录时更改令牌?谢谢大家的见解。