【发布时间】:2017-05-20 08:15:05
【问题描述】:
我是一个相当新的开发人员,我想确保我在安全方面做出正确的决定。根据我的研究,看来我应该对我的密码使用加盐 bcrypt 散列算法。根据 PHP 7 的文档,password_hash 功能正是这样做的。我什至不必想办法自己制作盐,因为加盐包含在 password_hash 中。这似乎是 PHP 7 密码散列的简单正确答案。但是,简单的正确答案通常是错误的。 PHP默认密码哈希库有哪些坑?
关于 PHP 密码散列的大多数答案都认为我应该使用 password_hash/password_verify。但是,我的问题更接近于“我应该如何使用它们?”或“使用它们时我应该注意什么?”
【问题讨论】:
-
那里的答案归结为“使用密码哈希/密码验证”我的问题不是是否使用它们,而是我在使用它们时应该注意什么。
-
好吧,回答:与
crypt函数和brcypt算法相比,没有缺陷。长答案:见Secure hash and salt for PHP passwords问题的答案(上面的链接)