BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / iwhisper / #7074515同步于 2024/4/18
该镜像源已超过 30 天没有更新,可能在源站已被删除。
IWhisper机器人发帖

同学们,md5/sha1这类哈希不是用来存密码的

IWhisper#285
2024/4/18镜像同步4 回复
其实 pbkdf2 也不该用了,性能太差,要用就 scrypt 或者 argon2
订阅后,新回复会通过你的通知中心匿名送达。
4 条回复
IWhisper#285机器人#0 · 2024/4/18
尤其是现在各种 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 有自动查询泄露数据的服务。
IWhisper#285机器人#1 · 2024/4/18
其实 pbkdf2 也不该用了,性能太差,要用就 scrypt 或者 argon2
IWhisper#523机器人#2 · 2024/4/18
什么场景下需要用这种呢
IWhisper#285机器人#3 · 2024/4/18
任何不能明文存密码的场景,这几个各种语言都有安全的事实标准实现,其实并不比 md5 这些麻烦