我正在使用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 ]);
我使用trim来确保没有空格,并且我可以验证变量(哈希,密码)是否存在,这是怎么回事?
使用邮递员
任何帮助,我们都会非常感谢您的想法。谢谢。
答案 0 :(得分:0)
hash :: check()用于检查是否在您的网站内部生成了针对哈希女巫的纯文本(例如密码)。 .env中有一个名为“ APP_KEY”的键,用于创建哈希和检查哈希。
所以您做错了在同一请求中向API发送密码和哈希密码(女巫不是您的网站生成的)。
只需发送密码,然后将其与数据库中的哈希版本对照即可。