사용법
- 원하는 길이와 포함할 문자 종류를 선택하세요.
- "새로 생성" 버튼을 눌러 비밀번호를 만드세요.
- 복사 버튼으로 바로 사용할 수 있습니다.
🎯 이럴 때 씁니다
- 새 계정 가입 — 서비스마다 다른 강력한 비밀번호를 빠르게 생성
- Wi-Fi·공유기 비밀번호 — 예측하기 어려운 무작위 문자열 필요할 때
- 임시 비밀번호 발급 — 팀원·고객에게 전달할 일회성 비밀번호 생성
입력 · 출력 예시
입력
길이: 16자 포함: 대문자 · 소문자 · 숫자 · 특수문자
출력
8MX=3&TqUuG87X!* 강함 (99 bit)
위 네 가지 문자 종류를 모두 켜면 혼동하기 쉬운 문자(I·O·l·1·0 등)를 뺀 74종에서 16자를 뽑아 약 99비트 엔트로피의 비밀번호가 나옵니다. 무작위 생성이므로 실제 출력은 매번 달라집니다. 이 도구는 Math.random() 대신 브라우저 내장 암호화 API crypto.getRandomValues를 사용합니다 — 일반 난수 함수는 시드값이 추측 가능해 보안 용도에 부적합하지만, 이 API는 OS 수준 난수 발생기를 사용해 예측이 불가능합니다.
비밀번호 길이별 무작위 대입(브루트포스) 소요 시간 추정
| 길이 | 문자 구성 | 엔트로피 | 초당 10억 회 시도 시 예상 소요 |
|---|---|---|---|
| 8자 | 영소문자만 | 약 38 bit | 수 분 ~ 수 시간 |
| 8자 | 대소문자+숫자+특수문자 | 약 52 bit | 수십 일 |
| 12자 | 대소문자+숫자 | 약 71 bit | 수천 년 |
| 16자 | 대소문자+숫자+특수문자 | 약 99 bit | 사실상 무한(우주 나이보다 김) |
위 수치는 오프라인 브루트포스(해시를 탈취해 로컬에서 초당 10억 회씩 대입) 기준 추정치입니다. 실제 공격 난이도는 서비스의 로그인 시도 제한, 해시 알고리즘(bcrypt 등은 훨씬 느림) 등에 따라 달라집니다. 참고로 짧은 비밀번호는 무작위 대입보다 유출된 비밀번호 목록 대입(credential stuffing)으로 뚫리는 경우가 더 흔합니다 — 그래서 서비스마다 다른 비밀번호를 쓰는 것이 길이만큼이나 중요합니다.
자주 묻는 질문
- 생성된 비밀번호가 서버에 저장되나요?
- 저장되지 않습니다.
crypto.getRandomValues로 브라우저 안에서만 생성되고, 네트워크로 전송되지 않습니다. - 얼마나 길게 설정해야 안전한가요?
- 일반적으로 12자 이상, 가능하면 16자 이상에 문자 종류를 다양하게 섞는 것을 권장합니다. 위 표를 참고하면 16자부터는 브루트포스로 뚫는 게 사실상 불가능한 수준이 됩니다.
- 특수문자를 포함하면 왜 더 안전한가요?
- 비밀번호를 구성하는 문자 종류(문자셋)가 늘어날수록 같은 길이라도 무작위 대입 공격에 필요한 경우의 수가 기하급수적으로 늘어나기 때문입니다. 문자셋이 26종(소문자만)에서 94종(전체 특수문자 포함)으로 늘면, 같은 8자리라도 경우의 수가 약 2만 배 커집니다.
- 혼동하기 쉬운 문자(I, l, 1, 0, O)는 왜 빠지나요?
- 손으로 옮겨 적거나 다른 사람에게 전달할 때 잘못 입력할 위험을 줄이기 위해 기본적으로 제외했습니다. 문자셋이 약간 줄어드는 대신 실사용 오류를 줄이는 쪽을 택했습니다.
🔑 더 알아보기: 안전한 비밀번호 만드는 기준과 생성 방법
길이·문자 조합·엔트로피로 보는 비밀번호 강도
다른 보안 도구
#️⃣
해시값 생성
MD5·SHA1·SHA256 해시 생성
📱
QR 코드 생성
텍스트·URL을 QR 코드로 생성
🗝️
htpasswd 생성
APR1-MD5 해시 비밀번호 생성
🔍
SSL 인증서 내용 확인
인증서 발급자·유효기간·SAN 확인
📜
CSR 내용 확인
CSR 주체·공개키 정보 확인
♻️
SSL 인증서 변환
PEM ↔ DER(HEX) 형식 변환
🤝
SSL 인증서·개인키 쌍 검사기
인증서·개인키 짝 확인
🩺
SSL 체커
HTTPS 접속·인증서 신뢰 여부 확인
🪄
SSL 인증서 생성
자체서명 SSL 인증서·키 생성
🔐
Base64 인코딩·디코딩
텍스트 ↔ Base64 변환
🔑
HTTP Authentication 헤더 생성
Basic·Bearer Authorization 헤더 생성
🪪
JWT 디코더
JWT 헤더·페이로드 확인, HS256 서명 검증
🎫
랜덤 토큰/시크릿 생성기
Hex·Base64·UUID 토큰 생성
🔒
Jasypt 암호화·복호화
Spring Boot ENC(...) 값 암복호화