如何实施这些强密码要求?

时间:2013-01-16 10:46:30

标签: passwords

  • 没有键盘模式。即在键盘上垂直或水平相邻的键。例如,应拒绝'ZXCVBN123'。
  • 没有常用的单词,没有任何单词写回或伪装成特殊字符。例如,应拒绝“Universe1”和“Un1ver $ e”。

2 个答案:

答案 0 :(得分:1)

嗯,首先你需要准确定义你想要的东西。什么是键盘模式? 'jk'是键盘模式,还是只是'jkl'?有什么最短的模式? 'gy'是一种模式吗?首先,您需要真正定义模式。

然后你应该列出所有可用的模式(没有那么多。你有36个起点和4个方向从每个起点开始)。获取密码后,尝试找到其中的每个模式。请注意,如果您确定最短的图案长度为3个字母,则无需搜索4个字母的图案,所有4个字母的图案都已包含3个字母的图案。

至于单词,这更容易,但首先你需要列出所有不允许的转换($ - > S,1-> i等等)。一旦你得到一个单词,应用所有的变换,并获得一个“标准化”的单词。将规范化密码与所有合法字词的字典进行两次比较 - 第二次反转密码。

您可能需要做一些比这更复杂的事情,因为您需要忽略单词末尾的数字 - 有时。 1ncredible可以替代'令人难以置信',虽然ncredible不是一个词。

答案 1 :(得分:1)

如果您检查http://howsecureismypassword.net的代码,您可以看到密码与大量常用密码进行比较。

在页面上,是一个对http://xato.net/passwords/more-top-worst-passwords/页面的引用,该页面列出了最常见的10,000个密码。

一种方法是下载该列表并检查用户的密码或至少一些前100名。