비밀번호 생성기
여기서 만든 모든 비밀번호는 브라우저 안에서 생성되며 밖으로 나가지 않습니다. 서버와 대화하는 생성기란 자기가 무엇을 만들었는지 아는 생성기입니다.
이 생성기가 하는 일
비밀번호가 버티는지는 두 가지가 정합니다. 글자 수와, 각 자리에 올 수 있었던 문자의 가짓수입니다. 이 둘을 곱하면 비트 수가 나오는데, 두 비밀번호를 비교할 수 있는 유일한 값이 그것입니다. 이 페이지는 "강함" 같은 말을 어림잡는 대신 그 숫자를 보여 줍니다.
사용 방법
- 1 길이를 정하세요. 끌면 막대와 비트 수가 바로 갱신됩니다.
- 2 문자 집합을 고르세요. 기호를 빼면 비트가 줄어들고, 얼마나 줄었는지 숫자로 보입니다.
- 3 생성을 누르고 원하는 것을 복사하세요. 비밀번호 관리자에 바로 붙여넣으면 됩니다.
엔트로피 1비트가 주는 것
비트가 하나 늘 때마다 공격자가 해야 할 일은 두 배가 됩니다. 아래 표는 흔히 쓰는 네 가지 문자 집합에 같은 계산을 적용한 것으로, 많은 사람이 의외로 여기는 사실을 보여 줍니다. 작은 문자 집합의 긴 비밀번호가 큰 문자 집합의 짧은 비밀번호를 거의 언제나 이깁니다.
| 문자 집합 | 8자 | 12자 | 20자 |
|---|---|---|---|
| 숫자만 (10) | 27 | 40 | 66 |
| 소문자 (26) | 38 | 56 | 94 |
| 문자와 숫자 (62) | 48 | 71 | 119 |
| 기호를 포함한 전체 (76) | 50 | 75 | 125 |
"각 집합에서 하나" 규칙을 적용하는 방법
흔한 지름길은 무작위 비밀번호를 만든 다음 규칙을 맞추려고 몇 자리를 덮어쓰는 것인데, 이렇게 하면 그 자리가 예측 가능해지고 결과가 약해집니다. 여기서는 먼저 필요한 각 집합에서 한 글자씩 뽑고, 나머지를 합친 풀에서 채운 뒤 전체를 섞습니다. 그래서 어떤 자리도 자기가 어느 집합에서 왔는지 알려 주지 않습니다.
무작위성은 어디서 오는가
기기의 암호학적 난수에서 오며, 이 사이트의 추첨 도구들이 쓰는 것과 같은 루틴을 거칩니다. 그 루틴은 나머지 연산이 아니라 기각 표본추출로 인덱스를 뽑습니다. 단순 나머지는 작은 인덱스가 조금 더 자주 나오게 만들고, 비밀번호에서는 그것이 공격자가 훑어야 할 탐색 공간을 조용히 줄이기 때문입니다.
생성된 비밀번호는 절반일 뿐입니다
이만큼 무작위한 비밀번호는 외울 수 없고, 그게 핵심입니다. 있어야 할 곳은 비밀번호 관리자이지 머릿속이나 메모지가 아닙니다. 아무리 강한 비밀번호라도 여러 사이트에서 재사용하면 강도가 무의미해집니다. 한 번의 유출이 그것을 공유하는 모든 계정을 열어 버리기 때문입니다.