2010-07-03 29 views

回答

7

简短的回答是,它使暴力字典攻击需要更长的时间。

This blog post是用合理的英文写的,可能会让你更好地了解正在发生的事情。

+0

感谢您的回答。那篇文章对我来说有点难,我还是不明白,对不起。为什么你说它可以使攻击需要更长的时间?如果我将它重置为100,会发生什么? – Freewind 2010-07-03 07:01:11

+1

然后它需要10倍的工作来计算你的密码散列值。这一点就是生成密码哈希值很昂贵。当你只需要1(就像有人登录时),那么没什么大不了的。你不会注意到额外的时间。你正试图让某人在合理的时间内进行字典攻击更令人讨厌/不可能。他们需要产生大量的哈希,所以越慢越好(对于你而不是他们)。 – jdl 2010-07-03 08:02:38

+0

维基百科在这个话题上有一篇体面的文章。我不相信bcrypt正在做这个(我不明白bcrypt算法在任何程度上),但这个想法是一样的。 http://en.wikipedia.org/wiki/Key_stretching – jdl 2010-07-03 08:05:47