小编Bal*_*nas的帖子

我应该从自定义随机生成的方法中将盐添加到我的哈希密码吗?PHP

我正在创建一个带数据库的登录系统,并想询问散列密码.我目前在PHP中使用函数password_hash(),另外我添加了一个20个字符的自定义随机字符串.看起来像这样:

 $salt = generateRandomString();
 $hashedPwd = password_hash($pwd + $salt, PASSWORD_DEFAULT);
Run Code Online (Sandbox Code Playgroud)

功能:

function generateRandomString($length = 20) {
   $characters='0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!@#$%^&*()_+{}|[]/?~`';
   $charactersLength = strlen($characters);
   $randomString = '';
   for ($i = 0; $i < $length; $i++) {
       $randomString .= $characters[rand(0, $charactersLength - 1)];
   }
   return $randomString;
Run Code Online (Sandbox Code Playgroud)

我稍后也会将随机字符串发送到数据库,并在登录时将其与密码一起验证.

我的问题是我是否需要额外的字符串?请记住,我希望它尽可能安全.

php hash password-protection

2
推荐指数
1
解决办法
371
查看次数

标签 统计

hash ×1

password-protection ×1

php ×1