laravel密码盐存储在哪里?

时间:2015-08-16 01:12:18

标签: php laravel hash passwords salt

Laravel使用bcrypt来散列密码。

根据这篇文章,在这个过程的某个时刻,Hash::make函数创建并使用一个22长的随机字符串作为盐来生成密码。

对于单个不同的密码,Hash::make会返回唯一的哈希值,暗示它确实在流程中的某处使用了某种盐析。

但是这些盐并没有存储在用户表中,我希望它们存在于用户表中。 laravel如何知道用于验证密码的相应哈希?

Laravel Hash Explained

1 个答案:

答案 0 :(得分:14)

您链接的文章似乎包含答案。 https://mnshankar.wordpress.com/2014/03/29/laravel-hash-make-explained/

  

这的巧妙之处在于算法,盐和成本   嵌入到哈希中,因此可以很容易地解析出来   用于重建/验证的个别组件(请参阅   php crypt源代码的相关部分   https://github.com/php/php-src/blob/master/ext/standard/crypt.c#L258)。   因此,您无需单独存储盐/成本   数据库表。