한국어

암호 엔트로피 계산 방법

log2 공식, 세 가지 EFF 목록 모두에 대한 작업 예제, 어크로스틱 비용 및 웹 사이트 강도 측정기가 이 페이지와 일치하지 않는 이유.

엔트로피는 비밀번호가 아닌 프로세스를 측정합니다.

단일 비밀번호에는 엔트로피가 없습니다. "올바른 말 배터리 스테이플"이라는 문구는 그 자체로 강하거나 약하지 않습니다. 중요한 것은 그것이 어떻게 존재하게 되었는가입니다. 기계가 7,776 목록에서 균일하게 4개의 단어를 뽑은 경우 이는 약 3.7 백만 개의 동일한 가능성이 있는 결과 중 하나입니다. 누군가가 만화에서 봤기 때문에 그것을 골랐다면 그것은 소수 중 하나일 뿐이고, 아무리 산술을 써도 그것을 바꿀 수는 없습니다.

따라서 이 사이트의 모든 그림은 공격자가 해당 설정을 알고 있고 무작위 추첨을 추측한다는 가정하에 생성기와 해당 설정을 설명합니다. 그 가정은 보수적인 가정이다. 목록, 단어 수, 길이 범위, ​​구분 기호 및 대소문자 규칙이 모두 이 페이지에 게시되어 있으므로 이를 비밀로 취급하면 여기의 모든 숫자가 부풀려집니다.

공식

N개의 동일한 가능성 중에서 균일하게 선택된 선택의 경우 엔트로피는 log2(N) 비트입니다. 각각의 독립적 선택은 자신의 비트를 추가하므로 k 독립은 동일한 N 풀에서 다음을 제공합니다.

비트 = k × log2(N)

이것이 암호문에 대한 전체 계산입니다. 로그 베이스 2는 "가능성의 수"를 "비트 수"로 바꾸는 것이며, 각 추가 비트가 공격자가 직면하는 작업을 두 배로 늘리기 때문에 비트가 편리합니다. 70비트는 69비트보다 두 배 더 어렵고, 60비트보다 약 1000배 더 어렵습니다.

동일한 공식은 문자 집합 크기 N과 길이 k를 사용하여 임의 문자 암호를 다룹니다. 80 집합에서 가져온 20개의 문자는 20 × log2(80)를 제공하며 이는 약 126 비트입니다.

세 가지 목록에 대한 작업 예제

EFF 긴 목록에는 7,776 단어가 포함됩니다. log2(7,776)는 약 12.925이므로 각 단어는 대략 12.9 비트를 전달합니다. 6개 단어는 6 × 12.925, 약 77.5 비트를 제공합니다. 이는 이 페이지의 기본값이며 해당 목록에 대한 EFF의 자체 권장 사항입니다. 7개 단어는 90.5에 대해, 8개 단어는 103.4에 대해 제공합니다.

두 짧은 목록 모두 1,296 단어를 포함합니다. log2(1,296)는 약 10.34이므로 6개 단어는 약 62 비트, 7개 단어는 72.4, 8개 단어는 82.7 비트를 제공합니다. 이것이 바로 짧은 목록이 긴 목록과 일치하는 추가 단어 한두 개를 원하는 이유입니다.

긴 목록의 5개 단어는 대략 64.6 bits에 해당합니다. 짧은 목록의 6개 단어와 거의 똑같습니다. 특정 강점을 향한 두 가지 경로는 실제로 상호 교환 가능합니다. 입력하기 더 쉬운 단어를 선택하세요.

길이 범위가 그림에 미치는 영향

최소 및 최대 단어 길이는 단어가 그려지기 전에 목록을 필터링하므로 수식에서 N은 파일 크기가 아니라 필터에서 살아남은 단어 수입니다. 범위를 변경하면 페이지에서 이를 다시 계산하고 생존 개수를 표시하므로 엔트로피 수치는 항상 실제로 사용 중인 풀에 관한 것입니다.

이는 합리적인 범위에 대해서는 작은 효과이고 극단적인 범위에 대해서는 큰 효과입니다. 긴 목록을 정확히 4글자의 단어로 제한하면 수백 개의 후보가 남고 각 단어는 약 12.9 비트에서 약 8로 삭제됩니다. 이렇게 하면 6단어 암호 문구가 대략 77 비트에서 대략 48로 변환됩니다. 페이지에 해당 내용이 표시되고 그 시점에서 범위를 넓히거나 단어를 추가하라는 메시지가 표시됩니다.

구분 기호 및 대소문자 옵션이 추가하는 것

고정 구분 기호는 아무것도 추가하지 않습니다. 모든 공백이 하이픈인 경우 설정을 알고 있는 공격자는 모든 공백에도 하이픈을 넣습니다. 추측할 여지가 없습니다.

임의 구분 기호 옵션이 다릅니다. 각 간격은 독립적으로 5개 문자 중 하나를 사용하므로 각 간격에는 약 2.32 비트인 log2(5)가 추가됩니다. 6단어 암호에는 5개의 간격이 있는데, 이는 약 11.6 추가 비트에 해당하며 이는 실제 이득이며 페이지에서는 이를 계산합니다.

동일한 논리가 사례에도 적용됩니다. 하한, 상한, 대문자 및 교대 규칙은 고정 규칙이며 아무것도 추가하지 않습니다. 무작위 케이스는 단어당 독립적인 동전을 뒤집기 때문에 단어당 정확히 1비트, 즉 6단어 암호에 6비트를 추가합니다. 그것도 계산됩니다.

이것이 얼마나 겸손한지 주목할 가치가 있습니다. 무작위 대소문자와 무작위 구분 기호를 함께 사용하면 6단어 암호에 약 17 bits가 추가되고, 일곱 번째 단어는 그 자체로 약 13을 추가하므로 기억하기가 훨씬 쉽습니다. 단어를 추가하는 것이 거의 항상 더 나은 수단입니다.

아크로스틱 비용은 얼마입니까?

삼행체를 사용하면 각 단어는 더 이상 전체 풀에서 그려지지 않고 지정한 문자로 시작하는 단어에서 그려집니다. 따라서 공식은 곱이 아닌 합계가 됩니다. 총계는 첫 번째 문자에 대한 풀의 log2, 두 번째 문자에 대한 풀의 log2 등이 됩니다.

글자가 매우 고르지 않게 분포되어 있습니다. 5~9자 단어로 제한된 EFF 긴 목록에서 s로 시작하는 풀은 j로 시작하는 풀보다 몇 배 더 크고 x로 시작하는 풀보다 훨씬 더 큽니다. 따라서 6글자 쌍행문자는 제한되지 않은 단어당 값의 6배 미만인 수치를 제공하며, 그 이하의 정도는 선택한 문자에 따라 전적으로 달라집니다.

이 페이지는 귀하가 입력한 정확한 문자에 대해 이 합계를 계산하며, 이것이 정직한 숫자를 제공하는 유일한 방법입니다. 현재 목록과 길이 범위에서 글자 뒤에 단어가 없는 경우 조용히 실패하는 대신 어떤 글자인지 알려줍니다.

아크로스틱도 비밀이 아닙니다. 공격자가 당신의 개 이름의 이니셜 철자를 알고 있다고 가정합니다. 왜냐하면 그것은 추측되는 것이기 때문입니다.

솔직히 말해서 비트를 시간으로 바꾸는 것

이 페이지의 추정 시간은 도난당한 비밀번호 데이터베이스에 대해 1초에 1조 개의 오프라인 공격을 추측하고 올바른 비밀번호가 나타나기 전에 가능성의 절반을 시도해야 한다고 가정합니다. 이러한 가정은 시간이 나타날 때마다 명시됩니다. 왜냐하면 가정이 없는 시간 추정은 의미가 없기 때문입니다.

1초당 1조 개의 추측은 의도적으로 가혹한 수치입니다. 빠르고 잘못 선택된 해시 기능을 공격하는 전용 하드웨어에 적합한 영역에 있습니다. 최신 비밀번호 해시를 적절하게 사용하는 사이트는 공격 속도가 수백만 배 더 느리고 모든 온라인 로그인 양식은 여전히 ​​수십억 배 더 느립니다. 왜냐하면 모든 시도는 서버가 속도를 제한할 수 있는 네트워크 요청이기 때문입니다.

그렇기 때문에 이 페이지의 숫자는 의도적으로 비관적입니다. 추정치에 따르면 검색 시간이 다른 사람보다 훨씬 오래 걸릴 것으로 예상되는 경우 제대로 실행되는 서비스에 대한 실제 수치는 훨씬 더 깁니다.

웹사이트의 강도 측정기가 다른 것을 말하는 이유

대부분의 강도 측정기는 앞에 있는 문자의 점수를 매깁니다. 왜냐하면 그것이 그들이 가진 전부이기 때문입니다. 그들은 비밀번호가 어떻게 생성되었는지 결코 볼 수 없습니다. 혼합 문자 클래스에 보상을 주고, 반복을 처벌하며, 종종 공통 비밀번호 사전과 일치시킵니다. 인간이 만든 비밀번호에 대해 합리적인 경험적 접근이 가능하며 양식이 할 수 있는 유일한 작업입니다.

정확히 잘못된 이유로 인해 생성된 암호 문구의 점수가 잘못되었습니다. 사이에 공백이 있는 6개의 소문자 사전 단어는 문자 계산 휴리스틱에 대해 경고하기 위해 만들어진 것과 정확히 같습니다. 단어가 무작위로 그려지고 결과가 미터가 박수를 보낼 거의 모든 것보다 강력하더라도.

여기에서 생성된 암호에 대해 측정기와 이 페이지가 일치하지 않는 경우 페이지는 프로세스를 설명하고 측정기는 모양을 설명합니다. 거짓말도 하지 않습니다. 그들은 서로 다른 것을 측정하고 있으며 그 중 단 한 명만이 그 단어가 어디서 왔는지 알고 있습니다.

당신이 생성한 것은 어떻게 되나요?

ToolAcre는 브라우저에서 로컬로 비밀번호를 생성합니다. 매우 민감한 환경의 경우 웹 기반 비밀번호 생성기를 사용하기 전에 브라우저, 장치 및 운영 체제를 신뢰할 수 있는지 확인하십시오.

  • 모든 암호 문구와 비밀번호는 브라우저의 자체 암호화 난수 생성기에 의해 브라우저 탭에서 생성됩니다. 페이지가 로드되면 서버가 관련되지 않습니다.
  • 여기서 생성된 어떤 것도 ToolAcre로 전송되지 않습니다. 이 제품의 콘텐츠 보안 정책은 페이지를 자체 원본으로 제한하므로 브라우저 자체가 다른 곳으로 데이터를 전송하려는 시도를 차단합니다.
  • 로컬 저장소, 세션 저장소, 쿠키, 브라우저 내 데이터베이스, 주소 표시줄 또는 브라우저 콘솔에는 아무 것도 기록되지 않습니다. 다시 로드하면 삭제됩니다. 탭을 닫으면 삭제됩니다.
  • 계정, 로그인, 분석 스크립트, 광고 스크립트가 없습니다. 다운로드되는 유일한 파일은 정적 단어 목록입니다.
  • 기록이 유지되지 않습니다. 다시 생성하면 값이 대체되며 이전 값은 복구할 수 없습니다.

질문

몇 비트면 충분합니까?

비밀번호 관리자 뒤에 있는 일반 계정의 경우 70 bits에 대한 위의 내용은 현실적인 추측을 뛰어넘습니다. 관리자 자체, 장치, 이메일 등 모든 것을 보호하는 몇 가지 암호의 경우 긴 목록에서 7~8단어인 90 bits 이상을 목표로 삼습니다.

기호를 추가하는 것보다 단어를 추가하는 것이 더 도움이 되는 이유는 무엇입니까?

긴 목록의 단어는 가능성의 수에 7,776, 약 12.9 bits를 곱합니다. 고정된 위치에 기호가 추가되면 공격자는 기호가 거기에 있다는 것을 알기 때문에 기호에 1을 곱합니다. 실제로 무작위인 선택 사항만 계산됩니다.

페이지에서 그림의 무작위 사례 옵션을 계산합니까?

예, 각 단어가 독립적인 동전 던지기이기 때문에 단어당 1비트입니다. 고정 사례 규칙은 규칙을 알고 있는 공격자가 직접 적용할 수 있으므로 0으로 계산됩니다.

시간 추정에 키스페이스의 절반이 사용되는 이유는 무엇입니까?

왜냐하면 평균적으로 철저한 검색을 통해 중간에 답을 찾을 수 있기 때문입니다. 전체 키스페이스를 사용하면 시간이 2배로 과장됩니다. 이는 이러한 규모에서는 반올림 오류이지만 여전히 잘못된 방향입니다.

컴퓨터 속도가 얼마나 빨라지는지를 고려하면 77 bits만으로 충분합니까?

추측 비용은 비트가 추가될 때마다 두 배로 증가하므로 산술은 방어자에게 큰 이점을 줍니다. 77비트 암호에 대한 현실적인 위험은 원시 계산이 아닙니다. 피싱, 장치의 악성 코드, 사이트 전반의 재사용, 부주의하게 저장한 서비스입니다. 주목할 가치가 있는 것들입니다.

제한사항

  • 엔트로피는 추측 난이도의 상한선이지 계정이 실제로 어떻게 손상될지에 대한 예측이 아닙니다. 대부분의 계정은 추측보다는 피싱, 재사용 및 데이터베이스 침해로 인해 손실됩니다.
  • 그림에서는 무작위 소스가 소리라고 가정합니다. 이 페이지는 브라우저의 암호화 생성기를 사용하며 그것 없이는 실행을 거부하지만 페이지 내부에서 해당 생성기를 감사할 수는 없습니다.
  • 시간 추정은 전적으로 가정된 추측률에 따라 달라집니다. 여기에 사용된 속도는 고의적으로 가혹하게 명시되어 있으며 특정 공격자에게는 어느 방향에서든 잘못될 수 있습니다.
  • 계산에서는 각 단어가 독립적이고 균일하게 그려지는 것으로 가정합니다. 그것이 사실이 아니라면 강도를 과장하게 될 것입니다. 이것이 바로 생성기가 이미 사용한 단어를 제거하는 대신 교체를 통해 그리는 이유입니다.
  • 암호 문구가 재사용되거나, 안전하지 않은 곳에 작성되거나, 손상된 시스템에 입력되는 것을 설명하는 엔트로피 수치는 없습니다.