1

我正在使用 Lumen 开发我的 API 网站,我遇到了这部分,我在其中散列密码并检查散列,但它总是返回false下面是我的尝试。

$hashed = $request->input('hash'); // e.g. $2y$10$EBQKLl5cdbOLzP0luWUlp.hQYJLYGnDeOymodXSAbWj.Posf.yv1m
$res = Hash::check(trim($request->input('password')), trim($hashed));

return response()->json([ 'hash' => $hashed, 'password' => $request->input('password')), 'hash_result' => $res ]);

我使用修剪来确保没有空格,并且我可以验证变量(哈希、密码)是否存在,所以看起来有什么问题?

使用邮递员

在此处输入图像描述

非常感谢任何帮助和想法。谢谢你。

4

1 回答 1

0

hash::check() 用于检查纯文本(如密码)与您网站内已生成的哈希女巫。.env 中有一个名为“APP_KEY”的键,女巫用于创建散列并检查散列。

所以你做错的是在同一个请求中向你的 API 发送密码和散列密码(女巫不是由你的网站生成的)。

只需发送密码并对照数据库中的散列版本检查它。

于 2019-04-16T07:15:53.233 回答