我的工作是密码重置功能。
到目前为止,电子邮件字段必须填写。但我想从重置表单中删除电子邮件字段(我将使用数据库中的令牌,并将其保存在重置形式的隐藏字段中)。
正如我所看到的,password_resets表有那些密码重置请求记录以及email、token和created_at字段。
我正在尝试解码从URL中获得的令牌,以便与保存在数据库中的令牌进行比较。
我试过了
//Hash::make
//$this->hasher->make
//Crypt::decrypt
//sha1
//md5我会从url那里得到的。
但是,我仍然无法获得与数据库表password_resets中存在的令牌进行比较的精确匹配令牌。
我经历过这个链接。它说,密码重置令牌现在存储为sha256的bcrypt。但我不知道该怎么破译那个记号。
有人面临这个问题吗?有什么想法吗?有什么建议吗?
发布于 2017-11-20 13:28:54
由于散列不是加密的,所以不能解密散列。散列用于对一段数据进行独特的“指纹”处理。散列不包含完整的数据,因此您无法逆转它。
但是,如果已发出令牌,则password_resets表应包含该令牌。简单的查询,如
SELECT * FROM password_resets WHERE token = ?应该返回电子邮件附件。
首先,确保该表中有数据。
https://stackoverflow.com/questions/47389187
复制相似问题