비밀번호 생성기
길이와 문자 종류를 골라 안전한 무작위 비밀번호를 만듭니다. 브라우저 암호 API로 생성됩니다.
길이
자
문자 종류
포함할 문자 종류를 고르세요.
생성된 비밀번호
매우 강함
약 95비트 · 문자 풀 62종
계산 방법
안전한 비밀번호의 핵심은 예측 불가능성입니다. 이 생성기는 브라우저의 암호 API(crypto.getRandomValues)로 난수를 뽑습니다. 웹에서 흔히 쓰는 Math.random은 패턴이 예측될 수 있어 비밀번호에는 부적합합니다.
강도는 엔트로피(비트)로 잽니다. 길이 × log₂(문자 종류 수)로 계산하며, 값이 클수록 추측하기 어렵습니다. 문자 종류를 늘리는 것보다 길이를 늘리는 것이 강도에 더 크게 기여합니다.
문자를 고를 때 단순히 나머지 연산만 쓰면 앞쪽 문자가 조금 더 자주 뽑히는 편향이 생깁니다. 그래서 편향이 생기는 구간의 난수는 버리고 다시 뽑는 방식으로 모든 문자가 균등하게 나오도록 했습니다.
생성된 비밀번호는 기기 안에서만 만들어지고 어디에도 저장·전송되지 않습니다. 새로고침하면 사라지므로, 쓸 비밀번호는 복사해서 안전한 곳에 보관하세요.
자주 묻는 질문
- Q생성한 비밀번호가 서버로 전송되나요?
- A전송되지 않습니다. 브라우저의 암호 API(crypto.getRandomValues)로 기기 안에서 만들어지며 어디에도 저장·전송되지 않습니다. 인터넷을 꺼도 동작합니다.
- Q얼마나 안전한가요?
- A예측 불가능한 난수 생성기를 씁니다. 웹사이트가 흔히 쓰는 Math.random과 달리 암호학적으로 안전한 crypto.getRandomValues를 사용하고, 문자를 고를 때 편향이 생기지 않도록 거부 샘플링을 적용합니다.
- Q엔트로피(비트)가 뭔가요?
- A비밀번호를 추측하기가 얼마나 어려운지를 나타내는 값입니다. 길이 × log₂(문자 종류 수)로 계산하며, 보통 60비트 이상이면 강한 편, 80비트 이상이면 매우 강한 것으로 봅니다. 길이를 늘리는 게 가장 효과적입니다.
- Q어떤 조합이 좋나요?
- A길이가 강도에 가장 크게 기여합니다. 16자 이상에 소문자·대문자·숫자·특수문자를 모두 켜면 충분히 강합니다. 사이트가 특수문자를 막는다면 대신 길이를 20자 이상으로 늘리세요.