我的基本知识假设是肯定的,除非网站以某种方式将用户名与密码一起包含在哈希函数中,但我不确定这是否是常见做法。
如果同一网站上的多个用户都使用相同的密码,他们的密码哈希是否相同?
信息安全
哈希
2021-08-10 14:14:26
2个回答
这取决于他们是否添加单独的盐,或者他们是否使用普通盐(或根本不使用盐)。
如果他们使用单独的盐,那么它们会有所不同;否则,它们[可能]会是一样的。
与往常一样,值得一读的是Thomas Pornin 对 How to secure hash passwords 的规范回答,它提供了关于每个用户唯一加密随机盐的建议和解释,其中 PBKDF2、BCrypt 和 SCrypt 是首选算法,并且说盐是强制性的。
对于您的特定问题,只需阅读带有“密码”标签的 security.stackexchange.com 和 stackoverflow.com 问题,您很快就会发现没有标准的方法可以使用密码进行任何操作。
SCrypt 几乎是未知的。
BCrypt 主要保留给 PHP 5.5 及更高版本(以及带有 password_compat 的 5.3.7;有很多 PHP 人使用它,也有很多 PHP 人使用其他东西。
PBKDF2 几乎是其他所有人的好选择。
而且你仍然有其他迭代哈希方法的组合(通常有加盐错误)、哈希的单次迭代(通常有加盐错误)、未加盐的哈希,以及一遍又一遍的不要做戴夫的问题,一遍又一遍一遍又一遍。
所以不行; 在实际处理密码时,您应该假设 Dave 正在为您的网站编写代码。
其它你可能感兴趣的问题