비밀번호 강도

이 도구는 실제 비밀번호를 절대 요청하지 않습니다 -- 길이와 사용된 문자 유형만 요청합니다.

계산 비교

다운로드

이번 계산의 입력값과 결과, 그리고 비교하신 추가 계산이 모두 포함됩니다.

길이와 문자 종류로 해독 시간 추정하기

비밀번호의 강도는 엔트로피로 측정됩니다 — 최악의 경우 무차별 대입 공격자가 필요로 하는 시도 횟수입니다 — 이는 길이와 사용하는 문자 유형의 수에 따라 달라집니다. 비밀번호의 구성(비밀번호 자체가 아님)을 입력하여 해독 시간을 추정하세요.

계산식

엔트로피 (비트)=길이×log2(문자 집합 크기)\vA{\text{엔트로피 (비트)}} = \text{길이} \times \log_2(\text{문자 집합 크기}) 평균 해독 시간=2엔트로피2×초당 시도 횟수\vB{\text{평균 해독 시간}} = \frac{2^{\vA{\text{엔트로피}}}}{2 \times \text{초당 시도 횟수}}

문자 집합 크기: 소문자 26개, 대문자 26개, 숫자 10개, 일반 기호 32개.

계산 예시

소문자만(26자) 사용하는 8자 비밀번호, 초당 100억 회 시도 속도의 경우:

  1. 엔트로피: 8×log2(26)37.6 비트\vA{8 \times \log_2(26) \approx 37.6 \text{ 비트}}
  2. 평균 해독 시간: 237.62×101010 초\vB{\frac{2^{37.6}}{2 \times 10^{10}} \approx 10 \text{ 초}}

고려해야 할 주요 요소

  • 이 추정치는 유출된 비밀번호 해시에 대한 오프라인 무차별 대입 공격을 가정하며, 이는 실제 로그인 화면에 대한 온라인 추측 시도보다 훨씬 빠릅니다. 대부분의 실제 서비스는 반복된 로그인 실패 시도를 속도 제한하거나 잠금 처리하므로, 온라인 공격자는 여기서 사용된 초당 시도 횟수보다 훨씬 느려집니다 — 오프라인 무차별 대입(데이터 유출로 비밀번호 해시가 노출된 이후)이 이런 종류의 추정치가 실제로 가장 관련 있는 시나리오입니다.
  • 흔하거나 사전에 있거나 이전에 유출된 적 있는 비밀번호는 원래 엔트로피가 시사하는 것보다 훨씬 빠르게 해독될 수 있습니다. 이 계산기는 전체 문자 집합에 대한 진정한 균일 무작위 무차별 대입 탐색을 가정합니다 — 실제 공격자는 대개 흔한 비밀번호, 사전 단어, 알려진 유출 비밀번호를 먼저 시도하므로, “수학적으로는 높은 엔트로피”를 가진 비밀번호라도 실제로 치환이 적용된 흔한 단어라면 거의 즉시 해독될 수 있습니다.
  • 추측 속도는 비밀번호를 보호하는 해싱 알고리즘에 따라 엄청나게 달라집니다. 느리고 전용으로 설계된 알고리즘(bcrypt나 Argon2 등)으로 해시된 비밀번호는 빠르고 범용적인 알고리즘으로 해시된 비밀번호보다 무차별 대입에 훨씬 더 오랜 시간이 걸릴 수 있습니다 — 이는 비밀번호 자체의 강도와는 별개로, 전적으로 해당 정보를 저장하는 서비스가 보안을 어떻게 구현했는지에 달려 있습니다.
  • 비밀번호의 실제 안전성은 해독 시간 계산만으로 결정되지 않습니다. 여러 계정에 비밀번호를 재사용하거나, 피싱 시도에 속거나, 악성코드에 의해 탈취당하는 것은 모두 이 무차별 대입 모델을 완전히 우회합니다 — 순수한 엔트로피를 넘어선 더 넓은 그림은 비밀번호 생성기 계산기 자체의 “고려해야 할 주요 요소”를 참고하세요.

흔한 실수

  • “확인”하기 위해 실제 진짜 비밀번호를 입력하는 것. 이 계산기는 실제 비밀번호 텍스트를 의도적으로 절대 요청하지 않으며, 길이와 문자 종류만 묻습니다 — 저장하지 않는다고 주장하는 도구라 하더라도 온라인 도구에 실제 비밀번호를 입력하는 것은 불필요한 위험이므로 완전히 피하는 것이 가장 좋습니다.
  • 높은 해독 시간 추정치가 나오면 비밀번호를 재사용해도 실제로 안전하다고 가정하는 것. 이 계산기는 무차별 대입 추측에 대한 저항력만 측정합니다 — 여러 사이트에서 재사용되는 길고 엔트로피가 높은 비밀번호라도, 해독 시간 추정치가 아무리 몇 세기라도 걸린다고 나오더라도, 그 사이트 중 한 곳이라도 유출되는 순간 완전히 노출됩니다.
  • 실제 사전 단어로 이루어진 패스프레이즈를 계산된 엔트로피와 동등하게 취급하는 것. 여기서의 계산은 전체 문자 집합에 대한 균일 무작위 탐색을 가정합니다 — 인식 가능한 단어, 이름, 패턴으로 만들어진 비밀번호는 실제 공격자가 가능성 있는 추측을 먼저 시도하기 때문에, 원래 길이와 문자 다양성이 시사하는 것보다 훨씬 빠르게 해독될 수 있습니다.
  • 비현실적인 추측 속도를 선택하고 결과를 정확한 것으로 취급하는 것. 추측 속도는 공격자의 하드웨어와 비밀번호를 보호하는 해싱 알고리즘에 따라 자릿수 단위로 달라집니다 — 해독 시간 추정치는 정확한 카운트다운이 아니라 대략적인 자릿수로 취급하세요.

알아두면 유용한 정보

  • 기존 비밀번호를 평가하는 것이 아니라 실제로 새 비밀번호를 생성해야 하시나요? 비밀번호 생성기는 암호학적으로 안전한 무작위성을 사용하여 선택한 문자 종류 조합으로 무작위 비밀번호를 만들어 줍니다.

출처: NIST SP 800-63B: 디지털 신원 지침 (인증자).

자주 묻는 질문

실제 비밀번호를 입력해야 하나요?

아니요 -- 그리고 그렇게 해서는 안 됩니다. 이 계산기는 비밀번호의 "길이"와 사용된 문자 유형(소문자, 대문자, 숫자, 기호)만 요청하며, 실제 비밀번호는 절대 요청하지 않습니다.

비밀번호 해독 시간은 어떻게 추정되나요?

이 계산기는 비밀번호의 길이와 문자 집합으로부터 엔트로피(비트 단위)를 계산한 다음, 가정된 추측 속도로 무차별 대입 공격자가 평균적으로 이를 찾는 데 걸리는 시간 -- 평균적으로 전체 키 공간의 절반 -- 을 추정합니다.

무엇이 비밀번호를 더 강하게 만드나요?

문자 다양성보다 길이가 더 중요합니다 -- 문자를 하나 추가할 때마다 가능한 조합의 수가 곱해지지만, 새로운 문자 "유형"을 추가하면 고정된 배율만 추가됩니다. 몇 가지 문자 유형만 사용하는 긴 비밀번호가 모든 유형을 사용하는 짧은 비밀번호보다 나은 경우가 많습니다.

이 계산기는 흔하거나 사전에 있는 비밀번호도 고려하나요?

아니요 -- 이 계산기는 전체 문자 집합에 대한 진정한 균일 무작위 탐색을 가정해 엔트로피를 계산합니다. 실제 공격자는 흔히 흔한 비밀번호, 사전 단어, 이전에 유출된 비밀번호를 먼저 시도하며, 이는 이론적으로 엔트로피가 높은 비밀번호라도 실제로는 알아볼 수 있는 단어나 패턴에 단순한 치환을 적용한 것이라면 거의 즉시 해독될 수 있습니다.

이것은 온라인 해독 시간 추정치인가요, 오프라인 해독 시간 추정치인가요?

이 계산기는 유출된 비밀번호 해시에 대한 공격처럼 오프라인 무차별 대입 공격을 모델링합니다 -- 높은 추측 속도가 현실적인 시나리오입니다. 실제 로그인 화면에 대한 온라인 공격은 대부분의 서비스가 반복된 로그인 실패 시도를 속도 제한하거나 잠금 처리하므로 실제로는 훨씬 느립니다.

나이를 확인해 주세요

계정을 만들려면 출생 월과 연도를 알려주세요.