例如,假设有人可以访问哈希值“PafgokWMoHSZE”。因为这是通过 crypt(Password1,Password1) 获得的,所以逆向工程会比任何其他盐更容易/更困难吗?
最佳答案
这不太安全,不要这样做。问题在于 salt 是散列的前缀 - 开头的 Pa 是来自 Password1 的前两个字符。您已将 9 个字符的密码减少为 7 个字符的密码。
PHP 的 crypt() 会自动为您生成随机盐。除非您需要特定的算法,否则最好保留它。
编辑:我刚刚想到,这也让用户可以控制哈希算法,这几乎肯定不是您想要的。无效的盐(即密码中的无效字符)也会导致 crypt() 失败。
关于php - 密码中的字符串和盐与 crypt() 相同是否安全?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19341043/