비밀번호 강도 체크
비밀번호 강도 체크로 길이, 문자 종류, 흔한 취약 패턴을 기준으로 안전성을 무료로 진단합니다. 입력값은 브라우저 안에서만 처리되며 외부로 전송되지 않습니다.
비밀번호 강도 체크란
비밀번호 강도 체크는 입력한 비밀번호의 글자 수, 사용된 문자 종류, 흔히 나타나는 취약 패턴(연속된 숫자·문자, 반복 문자, 키보드 배열 순서, 이미 알려진 유출 비밀번호)을 바탕으로 그 비밀번호가 얼마나 추측하기 어려운지 진단하는 무료 도구입니다. 진단 결과는 "매우 약함"부터 "매우 강함"까지 5단계와 추정 엔트로피(비트 수), 예상 공격 시나리오별로 뚫리기까지 걸리는 예상 시간으로 표시됩니다.
기존의 crypto.generator.password(랜덤 비밀번호 생성 도구)가 새로운 비밀번호를 "만들기" 위한 도구라면, 이 도구는 이미 정해 두었거나 실제로 사용 중인 비밀번호의 강도를 "진단하기" 위한 반대 방향의 도구입니다. 입력한 비밀번호는 외부로 전송되지 않으며, 진단 처리는 모두 사용 중인 브라우저 안에서만 이루어집니다.
비밀번호 강도 체크 사용 방법
- 진단할 비밀번호를 입력합니다 입력창에 문자열을 입력하면 진단 결과가 실시간으로 업데이트됩니다.
- 표시 버튼으로 입력 내용을 확인합니다 잘못 입력하지 않았는지 확인하고 싶다면 "표시" 버튼으로 문자를 눈으로 확인할 수 있습니다.
- 강도 게이지와 주의 사항을 확인합니다 5단계 게이지와 함께 발견된 취약 패턴 목록을 확인합니다.
- 뚫리기까지 걸리는 예상 시간을 확인합니다 온라인·오프라인 공격 시나리오별로 무차별 대입 공격에 뚫리기까지 걸리는 예상 시간을 확인합니다.
- 필요하다면 다른 비밀번호를 검토합니다 강도가 부족하다면 글자 수를 늘리거나 문자 종류를 추가하거나 알려진 패턴을 피하는 방향으로 다시 검토합니다.
더 잘 활용하기 위한 팁
- 실제로 사용 중인 비밀번호를 그대로 입력하지 않아도, 길이와 문자 종류, 패턴 구성이 비슷한 임시 문자열로 경향을 확인할 수 있습니다. 진단은 기기 안에서만 이루어지므로 그대로 입력해도 안전하지만, 불안하다면 이 방법이 유용합니다.
- "매우 강함" 판정을 받았더라도 다른 서비스와 동일한 비밀번호를 함께 사용하고 있다면, 한 곳에서 유출되었을 때 다른 계정까지 위험에 노출됩니다. 서비스마다 다른 비밀번호를 사용하시기 바랍니다.
- 기호를 하나 추가하는 것보다 길이를 한 글자 늘리는 쪽이 강도를 높이는 데 더 효과적인 경향이 있습니다. 고민된다면 문자 종류를 늘리기 전에 먼저 길이를 늘리는 것을 검토해 보세요.
- 진단 결과에 표시되는 "뚫리기까지 걸리는 예상 시간"은 어디까지나 이론상의 수치입니다. 실제 공격자는 사전 공격이나 개인정보를 활용한 추측도 함께 사용하므로 이 수치를 과신하지 않는 것이 좋습니다.
- crypto.generator.password(랜덤 비밀번호 생성 도구)로 만든 후보를 이 도구로 확인하면, 원하는 강도가 나오는지 바로 검증할 수 있습니다.
비밀번호 강도 체크 활용 사례
신규 가입 전 비밀번호 확인
새로운 서비스에 가입할 때 정한 비밀번호가 충분히 안전한지 미리 확인할 수 있습니다.
기존 비밀번호 점검
오래전부터 사용해 온 비밀번호가 지금 기준으로도 충분히 강한지 다시 점검하는 계기가 됩니다.
사내 비밀번호 정책 교육
복잡함보다 길이가 중요하다는 개념을 실제 진단 결과를 보여 주며 설명하는 교육 자료로 활용할 수 있습니다.
비밀번호 생성 도구 결과 검증
crypto.generator.password로 만든 후보를 붙여넣어 원하는 강도가 나오는지 바로 확인할 수 있습니다.
용어 사전
- 엔트로피
- 비밀번호를 추측하기 어려운 정도를 나타내는 비트 단위 지표입니다. 글자 수와 문자 종류가 늘어날수록 값이 커지며, 무차별 대입으로 시도해야 하는 조합의 수가 지수적으로 증가합니다.
- 무차별 대입 공격(브루트 포스)
- 가능한 모든 조합을 기계적으로 하나씩 시도해 비밀번호를 알아내는 공격 기법입니다.
- 사전 공격
- 실제로 자주 쓰이는 단어나 문구, 과거에 유출된 비밀번호 목록을 우선적으로 시도하는 공격 기법입니다. 단순한 단어나 이미 알려진 취약한 비밀번호는 무차별 대입 공격보다 훨씬 빠르게 발견됩니다.
- 크리덴셜 스터핑
- 한 서비스에서 유출된 이메일과 비밀번호 조합을 이용해 다른 서비스에 부정 로그인을 시도하는 공격입니다. 비밀번호를 여러 곳에서 함께 사용하는 습관이 피해를 키우는 원인이 됩니다.
- 솔트
- 비밀번호를 해시로 변환해 저장할 때 함께 추가하는 무작위 문자열입니다. 같은 비밀번호라도 저장되는 값이 달라지므로, 미리 계산해 둔 대응표(레인보 테이블)를 이용한 공격을 막을 수 있습니다.
- 비밀번호 관리자
- 서비스마다 다른 복잡한 비밀번호를 생성하고 기억하고 자동으로 입력해 주는 소프트웨어입니다. 비밀번호를 여러 곳에서 함께 쓰는 습관을 막으면서도 높은 강도의 비밀번호를 편리하게 사용할 수 있게 해 줍니다.
- 패스키
- 비밀번호 없이 기기의 생체 인증이나 화면 잠금과 연동해 본인 확인을 수행하는 인증 방식입니다. 피싱이나 비밀번호 유출에 강한 방식으로 평가받고 있습니다.
자주 묻는 질문
여담이지만 ― 비밀번호 "복잡함"에 대한 오해
한때 많은 서비스는 대문자, 소문자, 숫자, 기호를 모두 포함하도록 의무화했습니다. 그러나 이 규칙은 사람이 규칙성 없는 문자열을 기억하는 데 서툴다는 점을 간과한 결과를 낳았습니다. 결국 많은 사람이 "Password1!"처럼 단어 앞글자를 대문자로 바꾸고 끝에 숫자와 기호를 하나씩 붙이는, 예측하기 쉬운 변형 패턴에 안주하게 되었습니다. 공격자 역시 이런 경향을 잘 알고 있어서, 이런 변형은 무차별 대입 공격 초기 단계에서 가장 먼저 시도되는 조합에 속합니다.
2017년 미국 국립표준기술연구소(NIST)가 발표한 지침(SP 800-63B)은 이러한 상황을 반영해 방향을 크게 바꾸었습니다. 정기적인 변경을 강제하거나 복잡한 구성 요건을 요구하기보다, 단순히 충분한 길이를 확보하는 쪽이 실질적인 강도로 이어진다고 명시한 것입니다. 짧고 무작위한 문자열보다 관련 없는 단어 여러 개를 이어 붙인 긴 문장형 비밀번호가 사람에게는 오히려 기억하기 쉽고 컴퓨터에는 뚫기 어렵다는, 다소 역설적인 특성이 있기 때문입니다.
그렇다고 해서 길고 복잡한 비밀번호를 사람의 기억력만으로 관리하는 방식 자체에 한계가 없는 것은 아닙니다. 최근에는 비밀번호 관리자가 무작위 문자열을 생성하고 안전하게 보관해 주는 방식, 그리고 생체 인증과 결합해 비밀번호 자체를 외울 필요가 없는 패스키(Passkey) 같은 인증 방식으로의 전환이 활발히 진행되고 있습니다. 이 도구로 자신의 비밀번호가 가진 약점을 파악하는 일은, 이러한 다음 단계를 고민해 보는 계기가 될 수 있습니다.