§

생성 모드

§

문자 설정

드래그하여 비밀번호 길이를 설정하세요. 범위: 4~128자.
시각적으로 비슷한 문자(0, O, o, 1, l, I, |, 백틱)를 제거합니다.
범위: 1~50. 각 결과에는 자체 복사 버튼이 있으며, 모두 복사는 줄바꿈으로 묶어 한꺼번에 복사합니다.
§

출력

    KISA의 비밀번호 작성 지침, 금융감독원의 전자금융감독규정, 개인정보보호위원회 PIPA 가이드라인 — 모두 충분한 엔트로피와 무작위성을 요구합니다. NIST SP 800-63B와 호환되는 이 도구는 카카오·네이버 SSO, 토스 보안 콘솔, 정부24 관리자 계정용 고엔트로피 비밀번호를 브라우저의 crypto.getRandomValues로 생성하여 서버 전송을 원천 차단합니다.

    이 비밀번호 생성기가 다른 점은 무엇인가요?

    이것은 프라이버시 우선의, 브라우저 전용 비밀번호 생성기입니다. 모든 무작위 바이트는 crypto.getRandomValues를 통해 운영체제의 암호학적 난수 생성기에서 나옵니다 — Math.random에서는 결코 나오지 않습니다. 페이지는 비밀번호를 생성하기 위해 어떠한 네트워크 요청도 하지 않으며, 생성된 값은 탭을 벗어나지 않습니다. DevTools에서 Network 패널을 열고 생성을 클릭해 보세요: 침묵을 유지합니다.

    이 비밀번호 생성기는 어떻게 작동하나요?

    이 도구는 전적으로 브라우저 안에서 JavaScript로 실행됩니다. 서버 왕복도 없고, 비밀번호를 실어 나르는 분석 비콘도 없으며, 페이지 로드 이후 원격 글꼴 요청도 없습니다.

    1. OS CSPRNG에서 시드를 얻습니다. 모든 무작위 정수는 crypto.getRandomValues(new Uint32Array(n))에서 추출됩니다 — 브라우저가 TLS 키 자료와 crypto.randomUUID에 사용하는 동일한 암호학적으로 안전한 출처입니다. Math.random은 의도적으로 결코 호출되지 않으며, 프로젝트 전반의 grep으로 이를 강제합니다.
    2. 문자셋 구성. 무작위 문자 모드는 활성화된 문자 클래스 — 대문자, 소문자, 숫자, 기호 — 를 하나의 알파벳으로 연결합니다. '혼동되는 문자 제외' 토글은 그 다음 시각적으로 비슷한 글리프(0, O, o, 1, l, I, |, 백틱)를 제거하여, 소리 내어 읽거나 손으로 옮겨 적을 때 비밀번호가 모호하지 않게 합니다.
    3. 편향 없는 인덱스 샘플링. 32비트 부호 없는 정수를 단순히(모듈로) 문자셋 인덱스로 매핑하면, 문자셋 크기가 2^32을 정확히 나누지 못할 때 작은 편향이 생깁니다. 이 도구는 거부 샘플링을 사용합니다: 모듈로 꼬리에 들어간 샘플은 폐기하고 다시 추출하므로, 문자셋의 모든 문자가 동일한 확률로 나타납니다.
    4. 대량 생성. 무작위 문자 모드에서는 한 번의 클릭으로 1~50개의 비밀번호를 요청할 수 있습니다. 각 결과는 자체 엔트로피 추정치, 강도 등급, 복사 버튼을 가진 행으로 렌더링됩니다. '모두 복사' 버튼은 행을 줄바꿈으로 결합하므로 CSV나 볼트 가져오기 파일에 붙여넣을 수 있습니다.
    5. 패스프레이즈 모드. 모드 토글을 전환하면 페이지는 첫 사용 시점에 EFF Short Wordlist #1(1296개의 퍼블릭 도메인 영어 단어)을 지연 로드합니다. 5단어 패스프레이즈는 약 51.7비트의 엔트로피를 제공합니다 — 일상 계정에 충분하며 9자짜리 무작위 문자열보다 훨씬 기억하기 쉽습니다. 동일 출처의 그 한 번의 요청 이후, 페이지는 다시 침묵을 유지합니다.

    이 비밀번호 생성기를 사용하는 이유는 무엇인가요?

    • 비밀번호는 브라우저를 떠나지 않습니다. 서버 엔드포인트도, 값을 실어 나르는 분석 호출도, 원격 글꼴도, 텔레메트리도 없습니다. DevTools를 열고 비밀번호를 생성한 다음 Network 패널이 비어 있는 것을 확인해 보세요.
    • 구조적으로 암호학적으로 안전한 난수성. 모든 정수는 crypto.getRandomValues에서 오며, 모듈로 편향에 대해 거부 샘플링을 적용합니다. 브라우저 비밀번호 생성기의 가장 흔한 버그 — 엔트로피에 Math.random을 사용하는 것 — 가 여기서는 구조적으로 불가능합니다.
    • 두 가지 모드, 하나의 도구. 무작위 문자 모드는 비밀번호 관리자에 적합한 고엔트로피 문자열을 생성하고, 패스프레이즈 모드는 EFF Short Wordlist #1로 뒷받침되는 사람이 기억하기 쉬운 xkcd 스타일 문자열(correct-horse-battery-staple)을 생성합니다. 두 모드 모두 동일한 프라이버시 모델을 사용합니다.
    • 투명한 엔트로피. 생성된 각 행은 비트 단위 엔트로피와 명확한 강도 라벨을 표시하므로, 기호 없는 12자 문자열이 실제로 5단어 패스프레이즈만큼 강한지 한눈에 볼 수 있습니다. 마케팅 수사 없이, 오로지 숫자뿐입니다.

    생성된 비밀번호의 일반적인 활용 사례는 무엇인가요?

    새로운 무작위 비밀이 필요할 때마다, 신뢰 표면을 최소화하는 도구가 바로 이것입니다:

    • 비밀번호 관리자 가져오기. 50개의 강력한 비밀번호를 한 번에 생성하고, 모두 복사를 클릭한 뒤 볼트의 CSV 가져오기에 붙여넣으세요. 값은 어떤 서버도 거치지 않았으므로, 생성과 저장 사이에 유출 창구가 없습니다.
    • 마스터 패스프레이즈. 패스프레이즈 모드로 전환하여 6~7단어를 고르고, 선택적으로 각 단어를 대문자로 시작하면, 적어두지 않고도 실제로 기억할 수 있는 고엔트로피 문자열이 됩니다. 6단어로 약 62비트의 엔트로피 — 오프라인 공격 기준선을 훨씬 웃돕니다.
    • 사이드 프로젝트의 API 키와 토큰. 웹훅 서명 키나 개발용 데이터베이스 비밀번호로 일회성 공유 비밀이 필요한가요? 여기서 기호가 풍부한 32자 문자열을 생성하여 한 번 복사하면, 그 값이 전송 중에 존재했던 유일한 장소는 당신의 브라우저 탭뿐이었습니다.

    생성된 비밀번호 예시는 어떻게 생겼나요?

    길이를 16으로 설정하고, 네 가지 문자 클래스를 모두 활성화한 채로 생성을 클릭하세요. 문자셋은 26 + 26 + 10 + 32 = 94자를 가지므로, 생성된 각 문자는 log2(94) ≈ 6.55비트의 엔트로피를 담습니다. 16자는 약 104.9비트에 도달합니다 — 80비트 '매우 강함' 임계값을 훨씬 웃돌고, 현재 하드웨어로는 사실상 무차별 대입이 불가능합니다. 이제 패스프레이즈 모드로 전환하여 기본 하이픈 구분 기호로 5단어를 고르세요: cocktail-sprig-aspect-magenta-toniclog2(1296) × 5 ≈ 51.7비트를 담습니다. 기억하기 쉽고, 타이핑할 수 있으며, 평균적인 사람이 고르는 비밀번호보다 강합니다.

    생성하고, 복사하고, 다음으로 넘어가세요. 페이지는 서버를 보지 않고, 비밀번호는 탭을 벗어나지 않으며, 엔트로피는 제1원리로부터 계산됩니다. 그것이 약속의 전부입니다.