PHP - 如何实现密码重置和令牌过期
2022-08-30 22:45:19
我希望设置一个php密码恢复脚本,使用24小时后过期的令牌。但我不知道该怎么做。我目前已加密用户密码。我想做的就是将令牌附加到URL,当用户请求密码重置时,该令牌将发送给用户。但是,我如何正确地执行此操作,我需要在数据库中存储什么?SHA1
我希望设置一个php密码恢复脚本,使用24小时后过期的令牌。但我不知道该怎么做。我目前已加密用户密码。我想做的就是将令牌附加到URL,当用户请求密码重置时,该令牌将发送给用户。但是,我如何正确地执行此操作,我需要在数据库中存储什么?SHA1
$_GET['token']
)我根本不会使用数据库。而是单向加密。
只需在邮件中提供的超链接中发送必要的信息,并由哈希签名即可。类似的东西
$token = sha1($user_id.$time.$user_pass.$salt).dechex(time()).dechex($user_id);
$link = "http://".$domain."/restorepass/?token=$token";
通过接收它,只需拆分并解码它,然后检查哈希和超时。