密码字段应该是唯一的吗?

时间:2010-12-14 19:54:06

标签: security

鉴于最近Gawker Media password leak,我意识到许多用户共享相同的密码。为了帮助鼓励使用更强的密码,如果密码在所有用户中都是唯一的会有帮助吗?

我能想到的一个直接缺点(除了帐户创建性能?)是能够知道某人正在使用给定的字符串作为密码。这些知识与用户列表相结合可能非常危险。

有没有办法减轻这种不利因素,同时保留不允许重复密码的所谓好处?

有点像XKCD kick bot,你不能重复短暂的非原创句子,如“yah”或“lol”。

编辑^ 2:我认为你可以独特 - 如果反对哈希,但正如有人指出的,用不同的盐,这将没有预期的效果。好眼!

5 个答案:

答案 0 :(得分:6)

绝对

至关重要的是,系统外的用户无法获得有关密码的信息。如果他们可以轻松猜出哪些密码正在使用中,通过发现密码不可用,那么他们就可以在已知用户名上使用这些密码,并获得良好的访问权限。

另一种方法是找到某种通用密码数据库,并阻止任何用户使用它们。

答案 1 :(得分:3)

<强> eeeuh

我可能会误解您的问题,但我希望您不存储实际密码?

您应该使用随机盐哈希密码。这样,就无法告诉一个或多个用户是否拥有相同的密码。

如果您的系统以任何方式允许您确定两个或更多用户是否拥有相同的密码,那么您将以错误的方式存储密码。

答案 2 :(得分:0)

我建议以下内容,因为您已经提到过使用“所有

的唯一@密码”的缺点
  1. 告知用户强密码。
  2. 要求用户定期更改密码。
  3. 在输入密码时保留“密码强度”表。

答案 3 :(得分:0)

真的不

只要你有盐,密码就不会以相同的方式存储。

如果您想确保密码安全:

  1. 选择一个好的哈希(sha256,河豚等)
  2. 使用盐
  3. 使用最低阈值
  4. 管理密码计
  5. 其中很多可以与单词列表捆绑在一起
  6. 查看我在reddit上发表的帖子: http://www.reddit.com/r/netsec/comments/ektb8/in_the_light_of_recent_gawker_breakout_lets_talk/

答案 4 :(得分:0)

如果密码管理正确完成,那么唯一应该知道密码的人就是首先创建密码的用户。在我的网站上,我从不以任何形式存储密码。我存储了使用某种独特的“salt”填充操作的密码的加密哈希(SHA-1或某些变体)。基本上如果两个人确实有唯一的密码,就没有办法说出来。

您提供的该链接上的大多数密码都是容易猜到的字典密码。非常弱,容易暴力。任何具有基本密码检查功能的系统都不允许使用它们。

相关问题