PHP中的哈希密码技术

时间:2016-07-07 23:53:00

标签: php

我找到了这些有趣的哈希密码

一个是

$user_passcode = SHA1(MD5($_POST['user_passcode']));

和其他是

$user_passcode = SHA1(SHA1(MD5($_POST['user_passcode'])));

从安全角度来看,这种方法是否可以接受?

1 个答案:

答案 0 :(得分:0)

无!您不应该尝试使用网站的安全性。 请勿使用未经专业人员测试的加密方法。

双重哈希只是浪费时间。这就像试图通过默默无闻来构建安全性

这不是最好的,但我会发布,因为它是一个内置函数,绝对比md5()更安全。

  • 最初使用寄存器进行哈希:password_hash($pass, PASSWORD_DEFAULT, ['cost' => 12]);

注意:费用取决于您的服务器在登录时需要与密码匹配的程度。您设置的越高,它就越难以消耗资源。服务器来匹配它。

  • 以后在登录时使用:password_verify($pass, $db_pass);

澄清:这是我所知道的最好,最安全的方法。如果有人比password_hash()更有争议和安全,请分享。

<强>代码

// When you store it
password_hash($pass, PASSWORD_DEFAULT, ['cost' => 12]);

// When you check if they match
password_verify($pass, $db_pass);

参考:@erickson写了一个很棒的答案here