Как вы, наверное, знаете, хакеры есть везде, и они хотят взломать все. Вас попросили сделать требования паролю, которые остановят любого хакера . Проблема в том, что ваш начальник слышал, что платить за LOC - это зло, и он платит вам $ 1800 - $ 0,03 * символов, вставляемых в месяц, чтобы вы написали простейшую вещь, которая могла бы сработать. Таким образом, вы должны использовать небольшое количество символов (надеюсь, очень маленькие), или иначе забыть о деньгах. Кроме того, вашему боссу все равно, на каком языке вы будете пользоваться.
Требования к надежным паролям аналогичны требованиям в упомянутой статье, за исключением того, что требования на основе словаря были удалены, чтобы избежать зависимости решения от внешних файлов, вам не нужно проверять перестановку букв (трудно понять, что это на самом деле означает), последнее правило удалено (что такое 3/4?) и оно не проверяет старые пароли.
Точные требования после удаления определенных требований из связанной статьи:
- иметь не менее 8 символов!
- не длиннее 12 символов!
- иметь заглавные и строчные буквы!
- не более 8 заглавных букв!
- иметь не более 8 строчных букв!
- иметь как минимум 2 буквы!
- есть ведущее письмо!
- иметь как минимум 1 цифру (ы)!
- не быть вашим именем пользователя!
- не быть вашим именем пользователя задом наперед!
- не содержать ваше имя пользователя!
- не содержать ваше имя пользователя в обратном направлении!
- иметь не более 1 пары повторяющихся символов!
- не имеют 3 вхождений одного и того же персонажа!
- не содержит карат (^)
- не содержит места
- не содержит =
- не conatain &
- не содержит #
- не содержать,
- не согласен ;
- не содержат "
- не содержит>
- не содержит <
- не содержит [
- не содержат |
- не содержать)
Все орфографические ошибки в этом списке остались без изменений.
$ ./checkpass
Username: John
Password: L!]E2m69
OK.
$ ./checkpass
Username: John
Password: JohnnhoJ12
Nope.
$ ./checkpass
Username: JOE.smith
Password: JOE!smith123
OK.
Самый короткий код выигрывает деньги (отправляется в виде файла JPG). Он должен отображать приглашения «Имя пользователя» и «Пароль:» и отвечать точным сообщением.
1(цифра один) вместо ell.