모두계산

비밀번호 생성기

브라우저 기반 암호학적 난수로 안전한 비밀번호를 생성하고 강도를 분석합니다.

16
8128

문자 종류

비밀번호 생성 버튼을 눌러 안전한 비밀번호를 만드세요

비밀번호 생성기 안내

  • 암호학적 난수(crypto.getRandomValues)로 예측 불가능한 비밀번호 생성
  • 비밀번호 강도(엔트로피)와 크랙 예상 시간을 함께 확인
  • 한 번에 최대 10개까지 생성, 클릭 한 번으로 복사
  • 모든 처리는 브라우저에서만 이루어지며 서버 전송 없음

암호학적 난수(crypto.getRandomValues)를 사용하여 비밀번호를 생성합니다. 모든 처리는 브라우저에서 이루어지며, 생성된 비밀번호는 서버로 전송되지 않습니다.

공유하기:

비밀번호 생성기

비밀번호 생성기란?

비밀번호 생성기는 암호학적으로 안전한 난수를 사용하여 예측 불가능한 무작위 비밀번호를 만들어주는 도구입니다. 사람이 직접 만든 비밀번호는 생년월일, 전화번호, 키보드 패턴(qwerty, 1234 등) 등 추측 가능한 요소를 포함하기 쉽습니다. 이 생성기는 브라우저의 crypto.getRandomValues() API(W3C Web Crypto API)를 사용하여 통계적으로 균등하고 편향 없는 난수로 비밀번호를 생성합니다. 모든 처리는 브라우저에서만 이루어지며, 생성된 비밀번호는 서버로 전송되지 않습니다.

사용 방법

  1. 비밀번호 길이 설정: 8~128자 범위에서 선택합니다. NIST SP 800-63B는 최소 8자 이상을 요구하며, 16자 이상을 권장합니다.
  2. 문자 종류 선택: 대문자(A-Z), 소문자(a-z), 숫자(0-9), 특수문자를 조합합니다. 문자 종류가 많을수록 엔트로피가 높아집니다.
  3. 생성 개수 설정: 1~10개까지 한 번에 여러 비밀번호를 생성할 수 있습니다.
  4. 결과 확인: 각 비밀번호의 강도 등급, 엔트로피(비트), 크랙 예상 시간이 함께 표시됩니다.
  5. 복사: 복사 버튼을 눌러 클립보드에 즉시 복사할 수 있습니다.

비밀번호 강도와 엔트로피

비밀번호 강도는 엔트로피(entropy, 비트 단위)로 측정합니다. 엔트로피는 log2(문자 풀 크기) x 길이로 계산되며, 값이 높을수록 무차별 대입에 강합니다.

구성길이풀 크기엔트로피등급크랙 예상 시간
소문자만8자26~37 bits약함수 초
소문자+숫자10자36~52 bits약함수 시간
대소문자+숫자12자62~71 bits보통수백 년
전체 문자16자88~103 bits매우 강함수조 년
전체 문자20자88~129 bits매우 강함우주 나이 이상

크랙 시간은 초당 100억(1010) 회 추측이 가능한 현대 GPU 클러스터를 기준으로 합니다. 실제 온라인 서비스에서는 계정 잠금, CAPTCHA 등 추가 보안 조치가 있어 무차별 대입이 어렵지만, 유출된 해시를 오프라인에서 공격하는 경우 이 수준의 속도가 가능합니다. 비밀번호 강도를 높이는 가장 효과적인 방법은 길이를 늘리는 것이며, 문자 종류를 혼합하는 것도 도움이 됩니다.

왜 랜덤 비밀번호가 필요한가?

해커들은 비밀번호를 탈취하기 위해 다양한 공격 기법을 사용합니다. 무작위로 생성된 긴 비밀번호는 이러한 공격에 대한 가장 효과적인 방어 수단입니다.

공격 유형설명방어 방법
사전 공격흔한 단어·패턴 조합을 순서대로 시도랜덤 문자 조합 사용
무차별 대입가능한 모든 문자 조합을 시도길이 12자 이상 + 문자 종류 혼합
크리덴셜 스터핑유출된 비밀번호를 다른 사이트에 시도사이트마다 고유 비밀번호 사용
소셜 엔지니어링개인 정보(생년월일, 반려동물 이름 등) 기반 추측개인 정보와 무관한 랜덤 생성

Have I Been Pwned 기준 유출된 비밀번호는 100억 건 이상(2025)으로, 한 곳에서 유출된 비밀번호는 즉시 다른 사이트 공격에 활용됩니다.

흔한 비밀번호 실수

매년 발표되는 "가장 흔한 비밀번호" 목록에는 123456, password, qwerty 등이 항상 상위에 올라옵니다. 이런 비밀번호는 사전 공격으로 수 초 안에 뚫립니다. 피해야 할 패턴은 다음과 같습니다.

  • 이름+생년월일 조합: 소셜미디어에서 쉽게 추출 가능하여 소셜 엔지니어링 공격에 취약합니다.
  • 키보드 패턴: qwerty, 1q2w3e, zxcvbn 등은 사전 공격 목록에 포함되어 있습니다.
  • 단순 치환: p@ssw0rd, h3llo 같은 치환은 현대 사전 공격에 이미 포함되어 있어 보안 효과가 거의 없습니다.
  • 하나의 비밀번호 재사용: 한 사이트가 해킹되면 같은 비밀번호를 사용하는 모든 계정이 동시에 위험해집니다.

계정 중요도별 비밀번호 권장 설정

모든 계정에 동일한 수준의 비밀번호가 필요한 것은 아닙니다. 계정의 중요도에 따라 적절한 보안 수준을 설정하세요.

계정 유형권장 길이문자 종류변경 시점비고
금융/은행20자+전체 문자유출 시 즉시2FA 필수
이메일/클라우드16자+전체 문자유출 시 즉시복구 계정 보호 중요
SNS/커뮤니티12자+대소문자+숫자연 1회고유 비밀번호
일회성 가입12자+대소문자+숫자불필요비밀번호 관리자 저장

NIST SP 800-63B 최신 권고에 따르면, 주기적 강제 변경보다 유출 의심 시 즉시 변경이 더 효과적입니다. 비밀번호 관리자(1Password, Bitwarden 등)를 사용하면 사이트마다 고유한 긴 비밀번호를 쉽게 관리할 수 있으며, 2단계 인증(2FA)을 병행하면 보안이 크게 강화됩니다.

관련 도구

참고사항

본 도구는 W3C Web Crypto API(crypto.getRandomValues())를 사용하며, 생성된 비밀번호는 서버로 전송되지 않습니다. 비밀번호 가이드라인은 NIST SP 800-63B(Digital Identity Guidelines)를 참고했습니다.

비밀번호 생성기 자주 묻는 질문

비밀번호 생성기는 안전한가요?
네. 브라우저의 crypto.getRandomValues() API를 사용하여 암호학적으로 안전한 난수를 생성합니다. 모든 처리는 브라우저에서 이루어지며, 생성된 비밀번호는 서버로 전송되지 않습니다. 페이지를 닫으면 생성된 비밀번호는 어디에도 남지 않습니다.
비밀번호 길이는 얼마가 적당한가요?
최소 12자 이상을 권장하며, 16자 이상이 이상적입니다. 금융, 이메일 등 중요 계정은 20자 이상을 추천합니다. 길이가 길수록 무차별 대입 공격에 대한 저항력이 기하급수적으로 높아집니다. 비밀번호 관리자를 사용하면 긴 비밀번호도 쉽게 관리할 수 있습니다.
비밀번호 강도는 어떻게 계산하나요?
엔트로피(entropy, 비트 단위)를 기준으로 계산합니다. 엔트로피 = log2(사용 가능한 문자 수) x 비밀번호 길이로 산출하며, 이 값이 높을수록 무차별 대입으로 추측하기 어렵습니다. 크랙 예상 시간은 초당 100억 회 추측을 가정하여 계산합니다.
특수문자를 꼭 포함해야 하나요?
반드시 필요하지는 않습니다. 비밀번호 강도는 길이가 가장 큰 영향을 미치므로, 특수문자 없이도 충분히 길면(20자 이상) 강한 비밀번호가 됩니다. 다만 일부 웹사이트에서 특수문자 포함을 요구하므로, 해당 사이트의 규칙에 맞춰 설정하세요.
비밀번호는 얼마나 자주 변경해야 하나요?
NIST SP 800-63B 최신 권고에 따르면, 주기적 강제 변경보다 유출 의심 시 즉시 변경이 더 효과적입니다. 정기 변경은 사용자가 점점 약한 비밀번호를 선택하게 만드는 부작용이 있습니다. Have I Been Pwned(haveibeenpwned.com)에서 자신의 비밀번호 유출 여부를 확인할 수 있습니다.
크랙 예상 시간은 어떤 기준으로 계산하나요?
초당 100억(10^10) 회 추측이 가능한 현대 GPU 클러스터를 기준으로 합니다. 실제 온라인 서비스에서는 계정 잠금, CAPTCHA 등으로 공격 속도가 제한되지만, 유출된 해시를 오프라인에서 공격하는 경우 이 수준의 속도가 가능합니다.
패스프레이즈(passphrase)와 랜덤 비밀번호 중 뭐가 더 안전한가요?
동일한 엔트로피에서는 보안 수준이 같습니다. 패스프레이즈(예: correct-horse-battery-staple)는 기억하기 쉬워 마스터 비밀번호에 적합하고, 랜덤 비밀번호는 비밀번호 관리자와 함께 사용하기에 적합합니다. 두 방식 모두 충분한 길이를 확보하는 것이 핵심입니다.