可能重复:
在PHP 中编码密码的最佳方式
我读了很多关于密码和电子邮件哈希的文章,我不确定什么是最好的方法。很明显,md5和SHA已经过时,而且非常无用,但当涉及到所有的crypt时,mcrypt_encrypt、hash()等:
- 哪一种是当今保护密码和电子邮件的有效方法?;(也许是最好的方式?)
- 我可以对两者使用相同的方法吗
如果有人能给我一些建议,我真的很感激。
看看这个博客。它是好关于密码哈希的信息。
http://blog.ircmaxell.com/search/label/Password-Hashing
作者还有一个密码哈希库,它只使用经过审查的高质量算法。
除此之外,您应该使用bcrypt或PBKDF2进行密码哈希。
至于电子邮件加密,PGP/GPG是交叉兼容/支持的电子邮件加密的最佳选择。
你应该阅读这个问题为PHP密码提供安全的哈希和salt,以及这个问题你如何在PHP中使用bcrypt来哈希密码?。
这两个问题都有170多张赞成票。