목차▾
비밀번호 생성기란?
비밀번호 생성기는 사람이 떠올릴 수 없는 예측 불가능한 무작위 비밀번호를 만들어주는 도구입니다. 이 도구는 브라우저에 내장된 암호학적 난수 생성기(crypto.getRandomValues)를 사용하며, 생성 과정 전체가 브라우저 안에서만 일어납니다. 어떤 값도 서버로 전송되거나 저장되지 않아 인터넷을 끊은 상태에서도 동일하게 작동합니다.
임의(완전 랜덤)·기억하기 쉬운(한글 영타)·PIN(숫자) 세 가지 모드를 지원하고, 결과마다 엔트로피(비트)와 예상 크랙 시간을 함께 보여줍니다.
안전한 비밀번호의 조건 — 길이가 전부다
비밀번호의 강도는 길이와 문자 종류 수로 결정되는데, 둘 중 압도적으로 중요한 건 길이입니다. 문자 종류를 하나 늘리면 강도가 몇 배 오르지만, 길이를 한 자 늘리면 강도가 문자 종류 수만큼 곱해지기 때문입니다.
| 구성 | 엔트로피 | 예상 크랙 시간 |
|---|---|---|
| 8자 · 소문자만 | 38비트 | 약 4개월 |
| 8자 · 대소문자+숫자+특수 | 50비트 | 약 1,500년 |
| 12자 · 대소문자+숫자+특수 | 75비트 | 약 500억 년 |
| 16자 · 대소문자+숫자+특수 | 100비트 | 사실상 무한 |
→ 크랙 시간은 유출된 해시를 오프라인에서 초당 1만 회(bcrypt급 느린 해시 기준) 대입하고 평균적으로 절반을 탐색했을 때 기준입니다. 빠른 해시(MD5 등)로 저장된 사이트가 유출되면 이보다 수백만 배 빨라질 수 있으므로, 중요한 계정일수록 16자 이상을 권장합니다.
세 가지 모드 사용법
- 임의 — 완전 랜덤 조합. 비밀번호 관리자에 저장할 용도라면 이 모드로 16자 이상을 만드는 게 정답입니다. 손으로 옮겨 적어야 한다면 "혼동 문자 제외"(l·1·I·0·O)를 켜세요.
- 기억하기 쉬운 — 랜덤 한글 단어들을 영어 자판으로 친 결과. 화면의 "기억법"(한글)만 외우면 됩니다. 자주 직접 입력해야 하는 계정에 적합합니다.
- PIN — 스마트폰 잠금·도어락·현관 비밀번호용 숫자 조합. 1234 같은 연속·반복 패턴을 자동으로 걸러줍니다.
한글 영타 비밀번호의 원리와 주의점
한국인이라면 한 번쯤 써본 방식이 있습니다. 한글 단어를 그대로 영어 자판으로 치는 것 — "비밀번호"를 치면 qlalfqjsgh가 되는 식입니다. 외국인에겐 무의미한 문자열이지만 나는 한글로 기억하면 되니 편리하죠.
문제는 내가 고른 단어는 남도 고른다는 점입니다. qlalfqjsgh, dkfkdrkskek 같은 유명 패턴은 이미 크래킹 사전에 등재되어 있어 몇 초 만에 뚫립니다. 흔한 단어·이름·생일을 영타로 바꾸는 건 안전장치가 아닙니다.
이 도구의 "기억하기 쉬운" 모드는 같은 아이디어를 안전하게 만든 것입니다. 606개 일상 단어 사전에서 암호학적 난수로 3~5개를 뽑아 조합하므로 사람의 선택 편향이 개입하지 않고, 단어 수가 늘수록 경우의 수가 기하급수로 커집니다. 4단어+숫자+특수문자 조합이면 약 46비트 — 로그인 시도가 제한되는 일반 사이트에서는 사실상 뚫기 어려운 수준입니다.
사이트별 비밀번호 규칙 대응법
한국 사이트 대부분은 "영문 대소문자·숫자·특수문자 중 2~3종 조합, 8~20자" 규칙을 요구합니다. 이 도구의 기본 설정(대소문자+숫자+특수문자 16자)이면 거의 모든 사이트를 통과합니다. 걸리는 경우는 보통 둘 중 하나입니다.
- 길이 상한 — "최대 12자"처럼 상한이 있으면 길이 슬라이더만 줄이면 됩니다.
- 특정 특수문자 불허 — 일부 사이트는 특수문자 중 일부(공백, 따옴표 등)만 허용합니다. 이 도구는 대부분의 사이트에서 통용되는
!@#$%^&*-_=+?만 사용해 충돌을 줄였습니다. 그래도 거부되면 "새로 생성"으로 다른 조합을 뽑으세요.
이런 비밀번호는 피하세요
- 개인정보 조합 — 이름+생일, 전화번호 뒷자리. 공격자가 가장 먼저 시도합니다.
- 키보드 패턴 — qwer1234, asdf1234, 1q2w3e4r. 크래킹 사전 최상단에 있습니다.
- 유명 단어 영타 — qlalfqjsgh(비밀번호), tkfkdgo(사랑해) 등.
- 끝자리만 바꾸는 재사용 — password1 → password2. 유출 시 다음 패턴까지 함께 시도됩니다.
- 여러 사이트에 같은 비밀번호 — 한 곳이 뚫리면 전부 뚫립니다(크리덴셜 스터핑).
자주 묻는 질문
Q. 이 사이트가 내 비밀번호를 저장하나요?
아니요. 생성은 100% 브라우저 안에서만 일어나며 서버로 전송되거나 저장되지 않습니다. 인터넷을 끊고 사용해도 동일하게 작동합니다.
Q. 몇 자리로 만들어야 안전한가요?
대소문자·숫자·특수문자를 섞는다면 최소 12자, 권장 16자입니다. 16자 임의 비밀번호는 현재 기술로 사실상 크랙이 불가능합니다.
Q. '기억하기 쉬운' 모드는 안전한가요?
일반 사이트 계정에는 충분한 수준입니다. 다만 임의 모드보다 엔트로피가 낮으므로 금융·이메일 등 핵심 계정에는 임의 16자 이상을 쓰고, 비밀번호 관리자에 보관하는 것을 권장합니다.
Q. 내가 아는 한글 단어를 영타로 치면 되지 않나요?
qlalfqjsgh(비밀번호), rkskek(가나다) 같은 유명 단어의 영타 변환은 이미 해커들의 크래킹 사전에 들어 있습니다. 이 도구는 예측할 수 없는 랜덤 단어 조합을 뽑기 때문에 사전 공격으로 맞히기 어렵습니다.
Q. 비밀번호를 주기적으로 바꿔야 하나요?
최신 NIST 가이드라인은 정기 변경 강제를 권장하지 않습니다. 주기적 변경보다 유출 정황이 있을 때 즉시 변경하는 것, 그리고 사이트마다 다른 비밀번호를 쓰는 것이 더 중요합니다.
Q. 사이트마다 비밀번호를 다르게 써야 하나요?
네, 재사용이 가장 큰 위험입니다. 한 사이트에서 유출된 비밀번호로 다른 사이트 로그인을 시도하는 크리덴셜 스터핑 공격이 흔하기 때문입니다. 비밀번호 관리자와 함께 사이트별로 다른 비밀번호를 쓰세요.
본 도구는 브라우저의 암호학적 난수(crypto.getRandomValues)로 비밀번호를 생성하며, 어떤 값도 서버로 전송하거나 저장하지 않습니다. 크랙 시간은 공격 환경에 따라 달라질 수 있는 추정치입니다.