【发布时间】:2012-09-13 05:20:33
【问题描述】:
可能重复:
How to best store user information and user login and password
How do you use bcrypt for hashing passwords in PHP?
我习惯使用我知道现在已经过时的 md5(),而且我听说 sha1() 也不安全。那么,考虑到安全性,如今在数据库中存储和检索密码的最佳方式是什么?如果你能提供一个小例子,我会很高兴。
谢谢!
【问题讨论】:
-
你看过sha2()吗
-
@JvdBerg - 对于 1.9E9 组合,您需要大约 0.25 seconds 和 2012 年的 GPU。无需将它们存储在硬盘上,只需尝试(蛮力)直到找到匹配项。
-
@JvdBErg - 这是一个误解,salt 不能计入密码长度,它不是秘密,将与密码哈希一起存储。通过 SQL 注入攻击,您将获得这种盐。
-
@JvdBerg - 其实这是重点!它可以保护用户的密码,以防攻击者使用密码哈希访问数据库。此密码通常也用于其他网站。