盐分和哈希用户密码时,任何盐分都显然会有所帮助。是否有关于盐应保留多长时间的最佳实践?我将盐存储在用户表中,因此我希望在存储大小和安全性之间取得最佳平衡。随机添加10个字符的盐就足够了吗?还是我需要更长的时间?
3 回答
明月笑刀无情
TA贡献1828条经验 获得超4个赞
我下面的答案按要求回答问题,但“真正的”答案是:只需使用bcrypt,scrypt或Argon2即可。如果您要问这样的问题,那么几乎可以肯定您使用的工具水平太低。
老实说,没有合理的理由不让盐与哈希密码具有相同的长度。如果您使用的是SHA-256,则有256位的哈希值。没有理由不使用256位盐。
从数学上讲,超过256位不会使您的安全性得到任何改善。但是,使用较短的盐可能总是会遇到彩虹桌赶上您的盐长度的情况,尤其是较短的盐时。
aluckdog
TA贡献1847条经验 获得超7个赞
在Linux,BSD Unix和Solaris中使用的SHA2-crypt和bcrypt方法具有128位的盐。这些较大的盐值使得在可预见的将来,针对这些系统的几乎所有长度的密码都无法进行预计算攻击。
128位(16字节)盐就足够了。您可以将其表示为128 / 4 = 32十六进制数字序列。
添加回答
举报
0/150
提交
取消