강력한 비밀번호와 토큰 생성
브라우저에서 동작하는 강력한 비밀번호 생성기. Web Crypto로 비밀번호, 패스프레이즈, 16진 토큰을 만들고 비밀값을 서버로 보내지 않습니다.
기억하기 쉬운 비밀번호는 대개 누군가 추측할 수 있는 비밀번호입니다. 그리고 여러 사이트에 걸쳐 재사용하는 비밀번호는 언젠가 유출될 것이란 뜻이기도 합니다. 해결책은 생성기가 길고 무작위인 비밀값을 대신 만들게 하고, 비밀번호 관리자에 맡겨 외울 필요를 없애는 것입니다. 비밀번호 및 토큰 생성기는 Web Crypto로 비밀번호, 패스프레이즈, 16진 토큰을 로컬에서 만듭니다. 값은 사용자의 기기에서 태어나 서버를 한 번도 거치지 않습니다.
TL;DR
어떤 웹사이트에도 비밀값을 맡기지 않고 강력하고 무작위인 비밀값을 만들 수 있습니다.
- 한 도구에 세 가지 모드 — 비밀번호, 기억하기 쉬운 패스프레이즈, API 키용 16진 토큰.
- 아무것도 업로드되지 않습니다 — 생성은 Web Crypto API로 브라우저 안에서만 돌아갑니다.
- 강도가 보입니다 — 각 값에는 엔트로피 기반 강도(약함/좋음/강함)가 표시됩니다.
비밀번호가 강력해지는 이유
강도는 길이와 예측 불가능성, 두 요소가 함께 작용해 생깁니다. 둘 중 기호를 섞어 넣는 것보다 길이가 훨씬 더 중요합니다.
- 길이가 지배적인 요인 — 문자가 하나 늘 때마다 공격자가 탐색해야 할 조합이 곱절로 늘어납니다. 16자 무작위 비밀번호는 공들여 고른 8자짜리보다 천문학적으로 더 깨기 어렵습니다. NIST 가이드는 더 긴 비밀값을 권하며, 중요한 계정에서는 15자 이상이 합리적인 기준이 됩니다.
- 무작위성이 인간의 선택을 이깁니다 — 사람들은 예측 가능한 자리에 “숫자와 기호를 하나씩” 붙이곤(
Password1!) 하고, 공격자는 이를 압니다. 참된 무작위, 즉 각 문자를 독립적으로 뽑는 것이 값을 알아내기 어렵게 만듭니다. - 엔트로피가 그것을 잽니다 — 비트 단위 엔트로피는 대략
log2(문자 집합 크기) × 길이입니다. 도구가 이를 계산해 약함/좋음/강함으로 매핑합니다. 문자 수가 많고 문자 집합이 클수록 엔트로피가 올라갑니다.
실용적 규칙은, 길게, 무작위로, 사이트마다 유일하게 만들고 기억은 관리자에 맡기는 것입니다.
비밀번호와 패스프레이즈와 토큰
생성기는 세 가지 모드를 제공하며, 각각 다른 용도에 맞습니다.
- 비밀번호 — 무작위 문자의 나열(소문자, 대문자, 숫자, 기호). 기계가 대신 저장해 줄 때 가장 좋습니다. 길고 조밀하면 곧 강력하고, 단점은 입력하기 어렵다는 것이지만 붙여 넣을 것이므로 상관없습니다.
- 패스프레이즈 — 구분자로 이은 여러 무작위 단어(기본
-, 예canyon-ember-river-quartz). 4개 이상의 무작위 단어는 기억하기 쉬우면서도 강력합니다. 단어 목록이 크고 단어 하나가 무시할 수 없는 엔트로피를 더하기 때문입니다. 마스터 비밀번호나 직접 입력하고 외워야 할 것에 가장 알맞습니다. - 토큰 — 소문자 16진 문자열(
0-9와a-f). 토큰은 기계 사이의 비밀값, 곧 API 키, 클라이언트 시크릿, 세션 식별자용입니다. 사람이 입력하도록 만들어지지 않았고, 설정 파일에 복사해 쓰도록 되어 있습니다.
일상적인 계정에는 비밀번호, 머릿속에 둘 것에는 패스프레이즈, 프로그램용 자격 증명에는 토큰을 고르세요.
단계별: 비밀값 생성하기
비밀번호 및 토큰 생성기를 열고 다음 흐름을 따르세요.
- 모드를 고릅니다. 맨 위에서 비밀번호, 토큰, 패스프레이즈 중 하나를 선택합니다. 아래의 조작 요소가 그에 맞춰 바뀝니다.
- 형태를 정합니다.
- 비밀번호 모드에서는 길이 슬라이더(4~128, 기본 16)를 움직이고 문자 집합 — 소문자, 대문자, 숫자, 기호, 혼동 문자 제외(
0/O나1/l처럼 헷갈리는 문자를 뺍니다)— 를 켭니다. - 토큰 모드에서는 길이(4~128, 기본 32)를 정합니다. 토큰은 항상 소문자 16진이며, 문자 집합이나 서식 선택지는 없습니다.
- 패스프레이즈 모드에서는 단어 수(3~12, 기본 4)와 구분자(최대 4글자, 기본
-)를 정합니다.
- 비밀번호 모드에서는 길이 슬라이더(4~128, 기본 16)를 움직이고 문자 집합 — 소문자, 대문자, 숫자, 기호, 혼동 문자 제외(
- 한 번에 여러 개가 필요하면 개수(1~50)를 정합니다.
- 생성을 누릅니다. 결과가 목록으로 나타납니다. 각 값에는 엔트로피에 따른 강도 — 약함, 좋음, 강함 — 가 표시됩니다.
- 필요한 것을 복사합니다 — 행마다 복사로 한 값을, 다시 생성으로 해당 행만 다시 그리고, 전체 복사로 전부, 지우기로 다시 시작합니다.
브라우저에 Web Crypto가 없으면(드물지만 안전하지 않은 컨텍스트에서 가능합니다) 약한 난수로 넘어가는 대신 경고와 함께 생성을 비활성화합니다.
로컬 생성이 중요한 이유
비밀번호를 “온라인으로” 생성한다는 것은 보통 사이트의 서버가 그것을 만들어 돌려준다는 뜻이고, 곧 서버가 그것을 보았다는 뜻입니다. 정직한 사이트조차 요청을 기록하고, 침해되거나 악의적인 사이트는 생성한 값을 모두 기록할 수 있습니다. 어딘가 로그에 들어있는 그 사본 하나가 강력한 비밀번호의 의미를 무너뜨립니다.
Web Crypto API(crypto.getRandomValues)는 이를 뒤집습니다. 난수는 브라우저 안에서 만들어지고 완성된 값은 곧장 클립보드로 갑니다. 비밀값을 실어 나르는 요청도, 그것을 보는 서버도, 새어나갈 로그 항목도 없습니다. 계정을 맡길 대상에는 바로 그 성질이 필요합니다.
한계와 정직한 안내
도구가 기대한 그것이 되도록, 알아둘 제약 몇 가지를 짚습니다.
- 토큰 모드는 16진 전용 — 토큰은 항상 소문자 16진(
0123456789abcdef)입니다. 대문자나 중괄호, 하이픈 서식 선택지는 없습니다. 다른 서식이 필요하면 복사 뒤에 16진값을 변환하세요. - 패스프레이즈 단어는 고정 목록 — 24단어 목록은 의도적으로 짧습니다(기억하기 쉬운 단어). 그래서 패스프레이즈의 엔트로피는 주로 단어 수에서 오지, 엄청난 어휘에서 오지 않습니다. 민감한 것에는 4단어 이상을 쓰세요.
- 범위에 한계가 있습니다 — 개수는 한 번 생성에 최대 50이고, 비밀번호·토큰 길이는 4~128입니다. 현실적 용도를 아우르며, 비밀값을 대량 찍어내는 파이프라인은 아닙니다.
자주 묻는 질문
온라인으로 비밀번호를 생성해도 안전한가요?
그것은 생성이 어디서 일어나는지에 전적으로 달려 있습니다. 서버가 비밀번호를 만들어 돌려준다면 그 서버는 비밀값을 보았고, 기록하거나 유출하지 않기를 신뢰하는 셈입니다. 이 도구는 Web Crypto로 브라우저 안 로컬에서 생성하므로, 값은 사용자의 기기에서 태어나 전송되지 않습니다. 자격 증명에는 로컬 생성이 안전한 기본값입니다.
패스프레이즈와 비밀번호 중 어느 쪽을 써야 하나요?
직접 외우고 입력해야 할 때는 패스프레이즈를 쓰세요 — 마스터 비밀번호, 디스크 암호화 문구, 기기 로그인 등입니다. 4개 이상의 무작위 단어는 기억하기 쉽고 강력합니다. 관리자가 저장해 주고 붙여 넣기만 할 거라면 비밀번호(조밀한 무작위 문자)를 쓰세요. 글자당 엔트로피는 최대가 되지만 외우기는 불가능합니다.
토큰과 비밀번호의 차이는?
여기서 토큰은 기계를 위한 소문자 16진 문자열입니다 — API 키, 클라이언트 시크릿, 설정 파일에 붙여 넣을 세션 식별자 등입니다. 비밀번호는 (원래) 사람이 인증하기 위한, 문자 종류가 섞인 문자열입니다. 토큰이 균일한 16진인 것은 입력하거나 외울 필요 없이 복사만 하면 되기 때문입니다.
얼마나 강해야 충분한가요?
중요한 계정에서는 강함 대역, 대략 엔트로피 80비트 이상을 목표로 하세요. 문자 집합을 모두 쓴 16자 비밀번호나 5~6단어 패스프레이즈가 편안하게 넘깁니다. 위험도가 낮은 로그인이라면 좋음이 허용됩니다. 신경 쓰이는 것에는 약함을 피하세요. 대개 값이 너무 짧거나 문자 집합이 너무 좁다는 뜻입니다.

이 도구로 시작
지금 시작하기