소개
분명히이 질문은 여기 에서 요청되었으며 불행히도 닫힙니다. 나는 그것을 다시 시도하는 것이 좋은 생각이라고 생각했지만 올바르게했습니다.
XKCD 는 "암호를 기억하기 어렵다"를 사용하도록 훈련 된 방법을 살펴보고, 보안이 안전하다고 생각하지만 컴퓨터를 해독하는 데 3 일이 소요됩니다. 반대로 4-5 단어를 기억하면 Kuan의 암호 인트로 피가 나타나고 기억하기 쉽습니다. 어떻게 작동하는지 미쳤습니까?
도전
오늘해야 할 일은 단어를 사용하여 5 개의 암호를 만드는 것입니다. 암호 당 4 단어, 단어 당 최소 4 글자이지만 최대 값은 없습니다. Kuan의 비밀번호 인트로 피는 모든 비밀번호에 대해 계산해야하지만 강제 최소값은 설정되지 않습니다.
Kuan의 비밀번호 인트로 피란 무엇입니까?
Kuan의 비밀번호 인트로 피는 비밀번호가 얼마나 예측할 수 없는지 측정 한 결과입니다. 간단한 계산이있다 : E는 로그 = 2 * L (R)를 . E는 Kuan 's Password Intropy이며 R은 사용 가능한 문자 범위이며 L은 암호 길이입니다.
사용 가능한 문자 범위는 자명합니다. 암호가 가질 수있는 문자 범위이며,이 경우 대문자와 소문자입니다. 알파벳에는 26자가 있으므로 암호의 전체 범위에 26 x 2 = 52자가 있습니다.
암호 길이도 설명이 필요합니다. 생성 후 비밀번호의 총 길이입니다.
제약
- 입력이 없습니다.
- 같은 비밀번호로 단어 를 다시 표시 할 수 없습니다 .
- 비밀번호에는 기호 나 숫자를 사용할 수 없습니다.
- 암호 당 4 단어이지만 단어 당 4 자 이상이어야합니다.
- 단어 사이에 공백이 없습니다.
- 동일한 비밀번호를 반복해서 생성 할 수 없습니다.
- 각 단어는 비밀번호로 대문자로 입력해야합니다.
- 출력은 사람이 읽을 수 있어야하며 간격을 두어야합니다. 또한 위의 Kuan의 비밀번호 인트로 피 방정식을 사용하여 비밀번호의 Kuan의 비밀번호 인트로 피를 비밀번호와 함께 포함해야합니다.
- 사전 . 이 파일을 사용하고 텍스트 파일로 다운로드하여 적절히 통합해야합니다. 이것은 당신이 단어를 얻는 목록이 될 것입니다. 코드는 사용 가능한 것으로 가정해야합니다.
- 이것은 code-golf 이며 가장 짧은 바이트가 이깁니다.
산출
TriedScarProgressPopulation 153.9
TryingPastOnesPutting 119.7
YearnGasesDeerGiven 108.3
DoubtFeetSomebodyCreature 142.5
LiquidSureDreamCatch 114.0
N
세트의 기호 S
인 경우 암호 엔트로피는 log2(|S|)*N
입니다. 여기에서 기호 세트의 크기는 사전 크기 ( |S|=4284
)이고 기호 수는 단어 수 ( N=4
)이므로 각 암호의 엔트로피는 48.3
입니다.
3t1ta#asd
) 엔트로피는 가능한 비밀번호 수의 로그입니다. 4284 단어 사전에서 항상 4 개의 단어를 무작위로 균일하게 선택하면 각각 엔트로피 로그 ₂ (4284) * 4 ≈ 48.26 인 4284 ^ 4 개의 비밀번호가 있습니다.