如您所知,黑客无处不在,他们想入侵一切。您被要求提出密码要求,这将阻止任何黑客。问题是,您的老板听说为LOC付费是邪恶的,他付给您$ 1800-$ 0.03 *每月插入的字符,使您写出可能可行的最简单的东西。因此,您必须使用少量字符(希望很小),否则就不用花钱了。同样,您的老板不在乎您将使用哪种语言。
良好密码的要求与上述文章类似,只是删除了基于字典的要求,以避免使解决方案依赖于外部文件,您不必检查是否重新排列了字母(很难理解其实际含义),最后一条规则被删除(3/4是什么?),它不检查旧密码。
从链接的文章中删除某些要求后的确切要求是:
- 至少有8个字符!
- 不能超过12个字符!
- 有大小写字符!
- 最多包含8个大写字母!
- 最多包含8个小写字母!
- 至少有2个字母!
- 有一封领导信!
- 至少有1位数字!
- 不是您的用户名!
- 不要将您的用户名倒退!
- 不包含您的用户名!
- 向后不包含您的用户名!
- 最多有1对重复字符!
- 没有3个出现次数相同字符的!
- 不含克拉(^)
- 没有空间
- 不包含=
- 不conatain&
- 不含 #
- 不含 ,
- 不conatain ;
- 不含 ”
- 不包含>
- 不包含<
- 不含 [
- 不包含
- 不含 )
此列表上的所有拼写错误均保留原样。
$ ./checkpass
Username: John
Password: L!]E2m69
OK.
$ ./checkpass
Username: John
Password: JohnnhoJ12
Nope.
$ ./checkpass
Username: JOE.smith
Password: JOE!smith123
OK.
最短的代码会赢钱(作为JPG文件发送)。它必须显示“用户名:”和“密码:”提示并提供准确的消息答复。
1
很好,在每日WTF文章+1 ;-)中看到了一场代码高尔夫挑战赛
—
ChristopheD
第一个示例应该失败(“具有大小写字符!”),不是吗?
—
霍华德
@Howard:这意味着密码中需要同时使用大写和小写字母。注意缺少单词“ not”。
—
Konrad Borowski
在某些字体中,第一个密码中的l是小写字母ell而不是数字不是很明显,因此我正在编辑用明确的小写字母替换它。
—
彼得·泰勒
@PeterTaylor啊,谢谢。实际上,我将其读为
—
霍华德
1
(数字1)而不是ell。