iam*_*rus 11 php mysql encryption passwords
我现在一直在阅读Stack Overflow问题大约15分钟,而且每一个问题似乎都与我之前阅读过的问题相矛盾.Bcrypt,SHA1,MD5等.我目前MD5我的密码,但我想让我的数据库更安全,以防万一.
我知道这已被问了一百万次,但我似乎无法在其他任何地方找到合适的答案.
谢谢.
Geo*_*ins 11
你看到矛盾的答案是因为没有正确的答案.您应该使用应用程序可以支持的最安全的方法.更安全=更多开销.
MD5已被打破并破裂.
根据这篇文章,SHA1被打破了.但它还没有被破解.
bcrypt没有(据我所知)被发现被打破.
给定足够的CPU周期,最终可以规避任何散列或加密算法.您的决定应该平衡数据的安全性和应用程序的性能.
鉴于这些警告,bcrypt是目前的事实标准.它专为强度而非速度而设计,并且不会被打破.有关bcrypt的信息索引,请参阅Wikipedia上的bcrypt文章.
我和bcrypt一起去.它大大降低了生成彩虹表的能力.
http://codahale.com/how-to-safely-store-a-password/
重要的是要注意盐对于防止字典攻击或暴力攻击是无用的.您可以使用大盐或许多盐或手工采摘,遮荫种植,有机喜马拉雅粉红盐.考虑到数据库中的哈希值和盐,它不会影响攻击者尝试候选密码的速度.