아시다시피 해커는 어디에나 있으며 모든 것을 해킹하려고합니다. 해커를 막을 수있는 암호를 요구했습니다 . 문제는 상사가 LOC 비용을 지불하는 것이 악하다고 들었고 월간 삽입 한 문자 $ 1800-$ 0.03 *를 지불하면 가장 간단한 것을 쓸 수있게됩니다. 따라서 적은 수의 문자를 사용하거나 (아주 매우 작은) 현금을 잊어야합니다. 또한 상사는 어떤 언어를 사용할지 신경 쓰지 않습니다.
올바른 암호에 대한 요구 사항은 외부 파일에 따라 솔루션이 종속되지 않도록 사전 기반 요구 사항이 제거되었다는 점을 제외하고는 언급 된 기사의 요구 사항과 유사합니다. 문자가 재정렬되는 것을 확인할 필요가 없습니다 (실제 의미를 이해하기 어렵다). 마지막 규칙이 제거되고 (3/4 란?) 이전 비밀번호는 확인하지 않습니다.
링크 된 기사에서 특정 요구 사항을 제거한 후의 정확한 요구 사항은 다음과 같습니다.
- 8 자 이상이어야합니다!
- 12 자 이하 여야합니다!
- 대문자와 소문자가 있습니다!
- 대문자 8자를 넘지 않아야합니다!
- 소문자는 8 자 이하 여야합니다!
- 최소한 2 글자가 있습니다!
- 선행 편지가 있습니다!
- 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 파일로 전송). "Username :"및 "Password :"프롬프트를 표시하고 정확한 메시지로 회신해야합니다.
1ell 대신 (숫자 1) 로 읽습니다 .