2010-06-12 100 views
7

可能重复:
What is the optimal length for user password salt?最优密码salt长度

我试图找到答案堆栈溢出这个问题没有任何成功。假设我使用SHA-1哈希存储密码(所以它是160位),并假设SHA-1对我的应用程序来说已经足够了。盐用于生成密码散列的时间应该多长?

我发现的唯一答案是,使它比哈希本身更长(在这种情况下为160位)没有意义,这听起来合乎逻辑,但是我应该让它变长吗?例如。 Ubuntu使用带有SHA-512的8字节盐(我猜),那么8字节是否足够用于SHA-1,或者它可能太多了?

+0

你为什么要使用像bcrypt/scrypt SHA-1,而不是一个真正的密码散列函数? – Venge 2014-01-06 06:27:19

回答

1

目前的标准提出一个16字符长度的盐 http://en.wikipedia.org/wiki/Crypt_%28Unix%29#SHA-based_scheme

而且这个问题has been asked before :)

+0

嘿,这是真的。不过不知你是如何找到它的。我尝试了http://stackoverflow.com/search?q=password+salt+length和http://stackoverflow.com/search?q=optimal+password+salt+length,它肯定不在第一页上。 无论如何,这个问题仍然没有答案。您提供的维基百科链接(也在另一个问题中提供)并没有提到任何关于16个长盐的内容。这里提到的最长的盐是24位“BSDi扩展的基于DES的方案” – 2010-06-12 13:55:26