可能重复:
PHP 2-way encryption: I need to store passwords that can be retrieved
最近我在阅读有关在数据库中存储密码的几个教程时有点困惑。大多数网站都说最好的是使用哈希和盐来存储密码,或者将密码存储在两个部分中,或者为所有密码添加通用密钥。
我在crypt,sha,sha256,md5和blowfish中看到了几种方法。
我的问题是,使用带有河豚的crypt功能是安全的还是有更好/更安全和更有效的方法来存储密码?
答案 0 :(得分:2)
嗯,除了明显的,没有存储,散列等...... 如果可以的话,我会说不要使用普通的{MD5,SHA1,SHA256,SHA512,SHA-3等},即使你可以加盐。可以在以下网址找到原因:
http://codahale.com/how-to-safely-store-a-password
简单地说:使用bcrypt
您可能希望在
上阅读此主题 Password hashing, salt and storage of hashed values
http://dustwell.com/how-to-handle-passwords-bcrypt.html
https://www.owasp.org/index.php/Password_Storage_Cheat_Sheet