因此,Laravel 5.2 Bcrypt已损坏Auth已损坏

时间:2016-01-29 16:17:53

标签: php laravel bcrypt

所以我不知道发生了什么,但是对你来说很有趣。如果我这样做

return bcrypt('hello');
exit();

并运行3次这是我回来的:

1st:$2y$10$T11IfKkHIAIXi0SRhjMXKeSQQtze8zBVZnWdlRXfsSdcCXKIq/n7W

第二名:$2y$10$DpKVtgbF4OVa3jm.wdG5..jb9AvXsuo2EfqnjuzmsEVCmcOVr5nKq

第3名:$2y$10$0.ziFneJu0wrS2b3rHA6kucnGBkS2MRtgfp0gtEb/7ZOCV8dG3Mmq

我很难过。在laravel 5.1工作 - 不知道这是不是我的错。对不起。还有谁有相同的问题吗?它有解决方法吗?

如果得到答案并不重要,5.2 < shite 不是很好,我会回到laravel 5.1,因为A)它更稳定而且B)它是在Taylor Otwell让Gibbons参与该项目之前开发的。虽然我问过,有人遇到过这个问题并将其修复为其他偷看。

1 个答案:

答案 0 :(得分:6)

您想使用Hash::check功能

Hash::check('hello', '$2y$10$T11IfKkHIAIXi0SRhjMXKeSQQtze8zBVZnWdlRXfsSdcCXKIq/n7W');

=> true

Hash::check('not-hello', '$2y$10$T11IfKkHIAIXi0SRhjMXKeSQQtze8zBVZnWdlRXfsSdcCXKIq/n7W');

=> false

Hash::check('hello', '$2y$10$DpKVtgbF4OVa3jm.wdG5..jb9AvXsuo2EfqnjuzmsEVCmcOVr5nKq');

=> true

Hash::check('hello', '$2y$10$0.ziFneJu0wrS2b3rHA6kucnGBkS2MRtgfp0gtEb/7ZOCV8dG3Mmq');

=> true

Hash::check('hello', '$2y$10$0.ziFneJu0wrS2b3rHA6kucnGFkS2MRtgfp0gtEb/7ZOCV8dG3Mmq');

=> false

要解释其工作原理,您可能需要查看维基百科page

  

例如,影子密码记录   $ 2a $ 10 $ N9qo8uLOickgx2ZMRZoMyeIjZAgcfl7p92ldGxad68LJZdL17lhWy指定   成本参数为10,表示2 10 关键的扩展轮次。盐   是N9qo8uLOickgx2ZMRZoMye,结果是哈希   IjZAgcfl7p92ldGxad68LJZdL17lhWy。按照标准做法,用户可以使用   密码本身不存储。

还有更多阅读Do any security experts recommend bcrypt for password storage?

更多阅读Storing User Passwords Securely: hashing, salting, and Bcrypt