비밀번호 조합 계산기
비밀번호 길이와 문자 집합 크기로 가능한 비밀번호 수와 이론적 엔트로피를 구하세요.
비밀번호 탐색 공간 계산기
각 위치에서 선택한 문자 집합의 모든 문자를 독립적으로 사용할 수 있다고 가정합니다.
비밀번호 조합이란
비밀번호 조합 수는 각 위치에 고정된 집합의 모든 문자를 넣을 수 있을 때 이론적 탐색 공간의 크기를 나타냅니다. 비밀번호 길이가 L이고 각 위치에 C개의 문자가 허용되면 서로 다른 문자열 수는 C의 L제곱입니다. 따라서 앞자리 영을 허용하는 여섯 자리 숫자 PIN에는 10⁶, 즉 백만 개의 가능한 값이 있습니다. 여덟 자리 영문 소문자 비밀번호에는 26⁸개의 문자열이 가능합니다.
계산기는 탐색 공간에 밑이 이인 로그를 취해 비트 단위 엔트로피도 구합니다. 한 비트가 늘면 가능성은 두 배가 됩니다. 이 값은 이론적 엔트로피로, 전체 공간에서 비밀번호를 독립적이고 균등하게 선택한다고 가정합니다. 사람이 만든 비밀번호는 이 가정을 거의 충족하지 못합니다. 흔한 단어, 키보드 패턴, 이름, 문자 치환, 재사용한 인증 정보는 선택을 훨씬 작은 유효 탐색 공간에 집중시킵니다. 무작위 문자를 생성하는 비밀번호 관리자가 이 추정치에 더 가까워질 수 있습니다.
문자 집합 크기는 각 위치에서 실제로 사용할 수 있는 문자를 나타내야 합니다. 십진 숫자는 10가지, 영문 소문자는 26가지, 대소문자와 숫자는 62가지이며 일반적인 출력 가능 ASCII 범위에는 94개의 문자가 있습니다. 기호 하나를 필수로 요구하거나 일부 위치에서 특정 문자를 금지하면 단순 거듭제곱 공식은 제약된 공간을 정확히 세지 못합니다. 마찬가지로 단어 목록에서 고르는 암호 문구라면 목록 크기를 선택지 수로, 독립적으로 고른 단어 수를 길이로 사용해야 합니다.
조합 수가 크다고 해서 공격에 걸리는 시간이 바로 정해지는 것은 아닙니다. 추측 속도는 비밀번호 해싱, 하드웨어, 요청 속도 제한, 계정 잠금, 온라인 공격인지 탈취한 해시를 대상으로 하는지에 따라 크게 달라집니다. 공격자는 무작위 순서 대신 사람이 고를 법한 문자열을 먼저 시도합니다. 결과는 이상화한 탐색 공간을 비교하는 데 사용하고 특정 해독 시간을 보장하는 근거로 삼지 마세요. 실질적인 보안을 위해 고유한 무작위 비밀번호와 다중 요소 인증을 사용하고, 비밀번호는 현대적인 솔트 적용 비밀번호 해시 알고리즘으로만 저장하세요.
비밀번호 조합 예시
각 예시는 지정된 문자 집합의 모든 문자열이 같은 확률로 선택된다고 가정합니다.
| 비밀번호 형식 | 가능한 조합 수 | 이론적 엔트로피 |
|---|---|---|
| 숫자 6자리; 위치당 10가지 선택 | 1,000,000 | 19.93 bits |
| 소문자 8자리; 26가지 선택 | 208,827,064,576 | 37.60 bits |
| 영숫자 12자리; 62가지 선택 | 3.2263e+21 | 71.45 bits |
비밀번호 조합 계산 방법
- 비밀번호의 전체 자리 수를 입력하세요.
- 각 위치에 사용할 수 있는 문자 수를 입력하거나 사전 설정을 선택하세요.
- 조합 수 계산을 선택해 탐색 공간과 엔트로피를 구하세요.
- 이론적 결과를 실제 비밀번호 생성 방식의 무작위성과 비교하세요.
자주 묻는 질문
비밀번호 조합은 어떻게 계산하나요?
사용 가능한 문자 수를 비밀번호 길이만큼 거듭제곱합니다. 모든 위치에서 같은 문자 집합을 독립적으로 사용할 수 있을 때 성립합니다.
비밀번호 엔트로피란 무엇인가요?
엔트로피는 탐색 공간을 이진 비트로 표현합니다. 선택이 독립적이고 균등한 무작위일 때만 예측 불가능성을 추정합니다.
특수 문자는 항상 비밀번호를 더 강하게 만드나요?
이론적 문자 집합은 커지지만 예측 가능한 위치나 치환은 공식이 나타내는 만큼 보안을 높이지 못합니다. 익숙한 패턴보다 무작위 길이를 늘리는 편이 대체로 더 효과적입니다.
해독 시간도 추정하나요?
아닙니다. 해독 시간은 해싱 비용, 공격자의 하드웨어, 요청 속도 제한과 추측 순서에도 좌우되므로 조합 수만으로는 부족합니다.
무작위 암호 문구에도 사용할 수 있나요?
네. 고정 목록에서 각 단어를 독립적으로 고른다면 가능합니다. 목록 크기를 선택지 수로, 단어 수를 길이로 입력하세요.