정보 정규식 - 활용 - 패스워드
페이지 정보
본문
요즘 패스워드가 점점 어렵게 바뀌고 있습니다.
중요한 사이트는 2FA를 사용하는 것이 제일 좋습니다.
사이트의 안전을 위해서 패스워드를 어렵게 만들 때, 정규식으로 체크를 하는 방법입니다.
기본이
1. 8자 이상
2. 소문자 최소 한개
3. 대문자 최소 한개
4. 숫자
5. 연속된 글자 3개이상은 안됨
6. 스페이스 안됨.
일때 체크하는 정규식을 만들어 보겠습니다.
passwoRD2+
CDx'a$w4=P
?EuL4qfqQ*
E&n?fQF8nkPd+p_,
pAss Word2+
passswoRD2$
111password@
(?!.*[ ])(?=.*\w)(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])(?=.*[\W])(?!.*(.)\1{2,})^.{8,}$
이전에 배운 look ahead와 negative look ahead를 사용하면 됩니다.
(?!.*[ ]) : 스페이스가 없고
(?=.*\w) : 워드용 글자가 있고
(?=.*[A-Z]) : 대문자 있고
(?=.*[a-z]) : 소문자가 있고
(?=.*[0-9]) : 숫자가 있고
(?=.*[\W]) : Non 워드글자가 있고.. 이것을 특수기호중 원하는 것으로 변경가능함.
(?!.*(.)\1{2,}) : 이부분이 같은 글자 3개가 연속으로 있는 것을 찾는 부분입니다. \1이 앞에 매칭된 그룹의 반복인데. 이것이 {2,} 로해서 3개이상 (그룹, 그룹반복이 2개이상)
^.{8,} : 8글자 이상
추천4 비추천0