可能重复:
什么是用户密码盐的最佳长度?
我尝试在Stack Overflow上寻找这个问题的答案,但没有成功。
假设我使用SHA-1哈希函数(因此它是160位),并且假设SHA-1足够用于我的应用程序。生成密码哈希值时,盐应该有多长?
我找到的唯一答案是没有必要比哈希本身更长(在这种情况下为160位),听起来很合理,但我应该让它那么长吗?例如,Ubuntu使用8字节盐与SHA-512(我猜),那么对于SHA-1而言,8字节是否足够,或者是否过多?
可能重复:
什么是用户密码盐的最佳长度?
我尝试在Stack Overflow上寻找这个问题的答案,但没有成功。
假设我使用SHA-1哈希函数(因此它是160位),并且假设SHA-1足够用于我的应用程序。生成密码哈希值时,盐应该有多长?
我找到的唯一答案是没有必要比哈希本身更长(在这种情况下为160位),听起来很合理,但我应该让它那么长吗?例如,Ubuntu使用8字节盐与SHA-512(我猜),那么对于SHA-1而言,8字节是否足够,或者是否过多?
目前的标准建议使用16个字符长度的盐http://en.wikipedia.org/wiki/Crypt_%28Unix%29#SHA-based_scheme
此外,这个问题以前已经被问过 :)