2011-03-07 4 views
9

나는 내 전체 HDD (aes 256)에 암호화를 사용하고 있으며 암호가 256 비트가되도록 어떤 길이의 암호가 필요한지 궁금합니다. 우리 모두 알고 있듯이 암호는 일반적으로 암호화와의 약한 연결이므로 알고 있으면 좋을 것 같습니다. 암호는 문자 (대문자 및 소문자) 숫자와 구두점으로 구성되며 무작위입니다. 감사.어떤 길이의 암호가 256 비트의 엔트로피와 같은가

+0

이 질문은 프로그래밍과 관련이 없으므로 http://superuser.com으로 마이그레이션하도록 투표했습니다. –

+1

이것은 프로그램의 디자인과 관련이 있으며 security.stackexchange.com이 대안 공간이 될 수 있지만 이는 나에게 좋을 것 같습니다. 너무 많은 관련 질문이 있습니다. –

+1

아, "* 암호화 프로그램을 작성 중입니다 *"대신 "* [암호화를 제공하는 프로그램을 사용 중입니다 *"]라는 질문을 읽었습니다. –

답변

9

, 당신은 비밀 번호의 8 비트 바이트 당 난수의 약 6 비트를 얻고있다. 따라서 약 256 비트의 임의성을 포함하려면 암호에 (256/6) = 43 자 정도가 필요합니다. 비밀 번호가 기억에 남는다면, 256 비트의 임의성을 얻기 위해서는 더 많은 문자가 필요합니다. 영어 텍스트 실행은 바이트 당 4 비트 미만의 임의성을가집니다.

길게 통과 구문을 사용하고 그 (SHA-256, 아마도)의 256 비트 해시를 생성하는 것이 좋습니다. 귀하의 암호 구문은 아마도 소형 에세이 일 수 있습니다 - 어쩌면 80-128 자; 더 많은 상처는 없을 것입니다.

3

문자와 숫자 만 사용하는 경우 글자 당 총 숫자는 × 2 + 10 = 62입니다. 64에 가깝기 때문에 문자 당 엔트로피가 6 비트 미만입니다.

256 비트를 원한다면 문자 집합에서 약 43자를 필요로합니다.

관련 문제