비밀번호 생성기

비밀번호 생성기
불러오는 중...

길이를 고르고 대문자, 소문자, 숫자, 기호를 켜거나 끄면 이 생성기가 브라우저의 암호학적 난수 생성기를 사용해 비밀번호를 만듭니다. 이는 SSL 키 생성과 암호화폐 지갑에도 쓰이는 종류의 엔트로피 원천입니다. 예측 가능한 의사 난수나 서버 전송은 사용하지 않습니다. 네 가지 문자 클래스를 모두 포함한 16자 비밀번호는 약 95비트의 엔트로피를 제공하며, 현재 하드웨어로 수행하는 오프라인 크래킹에 충분히 강합니다.

강력한 비밀번호가 만들어지는 방식

  1. 1

    길이 선택

    기본값은 16입니다. 중요한 계정에는 12자 미만이 약합니다.

  2. 2

    문자 클래스 선택

    대문자, 소문자, 숫자, 기호를 선택합니다. 클래스가 많을수록 문자당 엔트로피가 커집니다.

  3. 3

    선택 사항: 헷갈리는 문자 제외

    화면에서 터미널이나 다른 기기로 직접 입력해야 한다면 0/O와 1/l/I를 제외하세요.

  4. 4

    생성

    crypto.getRandomValues()가 허용된 문자 집합에서 각 문자를 균등하게 선택합니다.

  5. 5

    복사 후 저장

    즉시 비밀번호 관리자에 붙여 넣으세요. 재사용하지 마세요.

길이와 문자 집합별 엔트로피

길이 소문자만 소문자 + 숫자 소문자 + 대문자 + 숫자 네 클래스 모두
8 38비트 41비트 48비트 52비트
12 57비트 62비트 71비트 79비트
16 75비트 83비트 95비트 105비트
20 94비트 103비트 119비트 131비트
24 113비트 124비트 143비트 158비트

엔트로피가 실제로 의미하는 것

  • 40비트: 오늘날 단일 GPU로 며칠 안에 깨질 수 있습니다. 임시 계정 정도에만 적합합니다.
  • 60비트: 온라인 공격에는 버티지만, 전용 오프라인 크래킹에는 취약합니다.
  • 80비트: 현재 하드웨어 기준 오프라인 크래킹에 강합니다.
  • 100비트: 양자 컴퓨팅이 성숙하기 전까지는 사실상 공격할 가치가 없습니다.
  • 128비트: AES-128 키 강도와 비슷합니다.

대부분의 온라인 계정에는 전체 문자 집합에서 만든 16자 비밀번호(105비트)면 충분합니다. 은행 계정, 비밀번호 관리자 마스터, 암호화폐 지갑, 전체 디스크 암호화에는 20자 이상을 권장합니다.

문자 클래스가 중요한 이유

각 클래스는 문자 하나당 선택지를 늘립니다. 소문자 26개만 쓰면 한 문자는 log₂(26) = 4.7비트를 제공합니다. 대문자를 더하면 52자로 늘어 문자당 5.7비트가 됩니다. 숫자를 더하면 62자, 5.95비트가 됩니다. 기호까지 더하면 94자, 6.55비트에 도달합니다. 16자 전체에서는 이 차이가 약 30비트로 쌓이며, 이는 “깰 수 있음”과 “시도할 가치가 없음”의 차이입니다.

헷갈리는 문자를 제외해야 할 때

복사와 붙여넣기가 어려워 화면에서 장치로 직접 입력해야 하는 경우가 있습니다. 콘솔 설치 화면, 일부 하드웨어 지갑, 소리 내어 읽어 주는 상황 등이 그렇습니다. 이때 0, O, 1, l, I를 제외하면 전사 오류를 줄일 수 있습니다. 엔트로피 손실은 80비트 이상 중 보통 2-3비트로 작습니다.

비밀번호 관리자 사용 흐름

  1. Bitwarden, 1Password, KeePass 같은 비밀번호 관리자를 설치합니다.
  2. 무작위 단어 6-8개로 강력한 마스터 패스프레이즈를 설정합니다. 패스프레이즈 생성기를 활용해도 됩니다.
  3. 사이트마다 관리자 내장 생성기를 사용하고 강력한 기본 설정을 유지합니다.
  4. 임시로 보이는 계정이라도 사이트 간 비밀번호를 재사용하지 않습니다.
  5. 지원하는 모든 서비스에서 2FA를 켭니다.

직접 입력하는 비밀번호는 드물어야 합니다. 비밀번호 관리자 마스터, 전체 디스크 암호화, 경우에 따라 업무용 컴퓨터 로그인 정도가 적절합니다.

도움이 되지 않는 것

  • 90일마다 강제 변경. 강제 교체는 여름2024에서 가을2024 같은 예측 가능한 패턴을 만들기 쉽습니다. NIST SP 800-63B는 이를 명확히 권장하지 않습니다.
  • 지갑 속 종이에 적어 두기. 약한 비밀번호를 재사용하는 것보다는 낫지만, 비밀번호 관리자보다 안전하지 않습니다.
  • 실제 답을 쓰는 보안 질문. “첫 학교”는 검색으로 찾을 수 있는 경우가 많습니다. 무작위 가짜 답을 만들고 비밀번호 관리자에 저장하세요.

자주 묻는 질문

네 가지 문자 클래스(소문자, 대문자, 숫자, 기호)를 모두 쓰는 16자는 거의 모든 계정에 강력합니다. 비밀번호 관리자 마스터, 암호화폐 지갑, 전체 디스크 암호화에는 20자 이상을 쓰세요. 12자 미만은 복잡도 규칙과 관계없이 약합니다.

비밀번호는 Web Crypto API를 사용해 브라우저 안에서 생성되며 어디로도 전송되지 않습니다. 확인하려면 DevTools의 Network 패널을 열어 보세요. 그래도 스크린샷이나 이메일 대신 즉시 비밀번호 관리자에 복사하는 것이 좋습니다.

데이터 유출 때문입니다. 한 사이트에서 비밀번호가 새면 공격자는 같은 이메일과 비밀번호 조합을 수백 개의 다른 사이트에서 바로 시도합니다. 사이트마다 고유한 비밀번호를 쓰면 피해를 한 계정으로 제한할 수 있습니다.

그 사이트에는 무작위 16자 비밀번호를 생성하세요. 16자 이하 제한은 사이트의 비밀번호 처리 방식에 문제가 있을 수 있다는 신호입니다. 그런 곳에서는 특히 2FA를 켜세요.

관련 도구