비밀번호 생성기
길이와 문자 종류를 고르면 바로 만들어집니다. 눌러서 복사하세요. 만든 비밀번호는 브라우저 밖으로 나가지 않습니다.
비밀번호 강도
매우 강함 · 103비트
추정 대입 시간 사실상 불가능 · 문자 85종
중요한 계정은 16자 이상을 권합니다
포함할 문자
옵션
사용법
- 길이를 정하고 포함할 문자 종류를 고르면 목록이 바로 갱신됩니다.
- 마음에 드는 것 옆의 복사를 누르면 클립보드에 담깁니다.
- 사이트가 기호를 허용하지 않으면 기호를 끄고 길이를 4자 정도 늘리세요. 강도가 비슷해집니다.
- 종이에 적어 전달할 것이라면 헷갈리는 문자 제외를 켜세요.
강도는 무엇으로 정해지나
비밀번호의 강도는 엔트로피로 잽니다. 쓸 수 있는 문자가 N종이고 길이가 L자면 경우의 수는 N의 L제곱이고, 엔트로피는 L × log₂N 비트입니다. 대소문자·숫자·기호를 모두 쓰면 문자가 85종이라 16자는 약 103비트입니다.
길이가 문자 종류보다 효과가 큽니다. 소문자만 쓰더라도 20자면 약 94비트로, 네 종류를 다 쓴 12자(약 77비트)보다 강합니다. 외우기 어려운 기호를 억지로 넣기보다 길게 만드는 편이 낫습니다.
표시되는 추정 대입 시간은 초당 1,000억 회를 시도하는 오프라인 공격을 가정한 값입니다. 실제 서비스는 로그인 시도 횟수를 제한하므로 훨씬 오래 걸립니다. 이 숫자는 절대적인 안전 기준이 아니라 옵션을 바꿀 때 강도가 어떻게 달라지는지 비교하는 눈금으로 보세요.
가장 흔한 사고는 강도가 아니라 재사용에서 납니다. 한 사이트가 유출되면 같은 비밀번호를 쓴 다른 계정이 곧바로 시도 대상이 됩니다. 사이트마다 다르게 만들고 관리가 어렵다면 비밀번호 관리자를 쓰는 편이 안전합니다.
자주 묻는 질문
- 이 비밀번호가 어딘가에 저장되나요?
- 저장되지 않습니다. 브라우저 안에서 만들어 화면에 보여줄 뿐이고 서버로 전송하지 않습니다. 페이지를 새로 고치면 사라집니다. 다만 화면을 다른 사람이 볼 수 있는 곳에서는 사용을 피하세요.
- 난수는 어떻게 만드나요?
- 브라우저가 제공하는 암호학적 난수 생성기(crypto.getRandomValues)를 씁니다. 일반적인 Math.random은 계산식으로 만들어져 예측이 가능하므로 비밀번호에는 쓰지 않습니다. 문자를 고를 때도 나머지 연산을 그대로 쓰면 앞쪽 문자가 더 자주 뽑히는 편향이 생겨, 범위를 벗어난 값은 버리고 다시 뽑는 방식으로 균등하게 만듭니다.
- 몇 자리로 만들어야 하나요?
- 중요한 계정은 16자 이상을 권합니다. 대소문자·숫자·기호를 모두 쓴 16자는 엔트로피가 약 103비트로, 현재 기술로는 사실상 깰 수 없습니다. 반대로 소문자만 쓴 8자는 38비트라 오프라인 공격에서 순식간에 뚫립니다. 길이를 늘리는 것이 문자 종류를 늘리는 것보다 효과가 큽니다.
- 헷갈리는 문자 제외는 언제 쓰나요?
- 숫자 0과 대문자 O, 숫자 1과 소문자 l·대문자 I처럼 눈으로 구분하기 어려운 글자를 뺍니다. 비밀번호를 종이에 적어 전달하거나 화면을 보고 다른 기기에 옮겨 칠 때 유용합니다. 문자 종류가 줄어 강도는 조금 낮아지므로, 그만큼 길이를 늘리면 됩니다.
- 추정 시간은 얼마나 믿을 수 있나요?
- 초당 1,000억 회 대입이라는 오프라인 공격 가정에서 나온 대략치입니다. 실제로는 서비스가 로그인 시도를 제한하거나 해시 방식이 달라 훨씬 오래 걸립니다. 반대로 같은 비밀번호를 여러 곳에 재사용하면 한 곳이 유출되는 순간 강도와 무관하게 뚫리니, 사이트마다 다른 비밀번호를 쓰는 것이 길이보다 중요합니다.
이 도구는 브라우저 안에서만 계산하며 입력값을 서버로 보내지 않습니다. 분류: 랜덤 · 마지막 수정 2026-09-08