繁体   English   中英

PHP Password_Hash函数

[英]PHP Password_Hash Function

我一直在阅读PHP Password_Hash函数的用法,该函数指出它会自动生成盐,不建议手动生成盐。

考虑到这一点,这是否意味着我可以执行以下代码:

    $password = password_hash('mypassword', PASSWORD_DEFAULT);

创建一个哈希密码和加盐密码,除了存储到MySQL表列中之外,无需执行其他任何操作?

password_hash生成盐和哈希。 然后将它们组合为一个字符串 ,因此您不必像通常那样将它们分开存储。

这就是为什么password_verify仅采用两个参数的原因:密码以及salt和hash的组合。

不建议自己生成盐,因为这样做可能会出错。 例如,您可能通过生成可预测的字符串或使其太短而错误地创建了一个。 另外, 由于password_hash函数已经做到了,为什么要麻烦呢? 如果用户更改密码,则通常通常会同时生成哈希值和盐值。

是。 然后,您可以检索它并使用password_verify()来检查用户提供的密码是否与存储的哈希匹配。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM