我正在创建一个用户注册服务提供商,我正在使用 password_hash 函数来散列提供的用户密码。以下是用于创建散列字符串的代码部分:
public function generateHash($string)
{
return password_hash($string, PASSWORD_BCRYPT);
}
正如我从 PHP 手册中了解到的那样,我们不应该生成我们的盐,而是让 password_hash 函数来处理它以提高安全性。但是,当我尝试创建新用户时,我收到以下警告:
Warning: password_hash(): Unable to generate salt
应用程序创建了用户,但由于上述问题,不会生成哈希,并且数据库中的密码将始终为空
我在我的开发环境中使用 PHP 版本 7.0.4/Zend Server
如果有人能指出正确的方向,我将不胜感激
最佳答案
事实证明我当前的 php7 安装有问题。我切换到 PHP5.6,一切正常。
关于PHP 问题 : password_hash function is not able to generate a salt,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37798912/