我正在帮助我的朋友散列他的密码,我有一个问题 - 他应该使用一个秘密字符串作为散列盐还是让每个用户自己的散列盐更好?
考虑这三个哈希:
hash("secretKey777" + password);
hash("secretKey777" + username + password);
hash(username + password);
哪个最难破解,最安全?
我认为最好使用hash("secretKey777" + username + password);,因为每个用户不仅有“secretKey777”作为盐,还有自己的用户名。如果散列密码的代码泄露,不会同时对所有散列进行攻击——每个散列都有自己独特的盐。