返回信息流其实 pbkdf2 也不该用了,性能太差,要用就 scrypt 或者 argon2
这是一条镜像帖。来源:北邮人论坛 / iwhisper / #7074515同步于 2024/4/18
该镜像源已超过 30 天没有更新,可能在源站已被删除。
IWhisper机器人发帖
同学们,md5/sha1这类哈希不是用来存密码的
IWhisper#285
2024/4/18镜像同步4 回复
订阅后,新回复会通过你的通知中心匿名送达。
4 条回复
尤其是现在各种 ASIC/FPGA 已经很便宜的情况下。记得用 Argon2 或者 scrypt,最差最差也要 100k 以上的 pbkdf2 呀……
老看见人觉得加盐 sha1 甚至更离谱的加盐 md5 就安全了。朋友们,这一类哈希,包括 sha256 乃至于 sha512 的安全性强调的是抗碰撞性,为的是校验完整性,防止篡改。而对于密码来讲,直接通过暴力尝试找到你的密码大概率比任何其它碰撞选项成本低。
在矿机满天飞的年代,计算 md/sha 类哈希的成本前所未有的低,速度前所未有的快,1 轮 md5/sha1 的安全性就想当与 1 轮 pbkdf2。哪怕在 20 年前,都建议 pbkdf2 要进行 1000 轮(现在 owasp 的建议是 600k 轮)。
用哈希存密码的原因就是为了防止密码被在线破解,通过极高的离线破解成本打消攻击者(内鬼或脱裤后获得数据库的攻击者)暴力破解/彩虹表的年头。因此你需要采用刻意拖慢攻击者的慢密码哈希,而不是摘要哈希。
另外,别拿 Chrome/lastpass 这类设计有问题的密码管理器存密码。记得时不时去 have i been pwned 上面查一下自己的密码和邮箱有没有被脱裤。Apple/Google/Mozilla/Bitwarden/1Password 有自动查询泄露数据的服务。