WPA-PSK 암호 문구에 대한 기술 요구 사항은 무엇입니까?

WPA-PSK 암호 문구에 대한 기술 요구 사항은 무엇입니까?

WPA-PSK 암호 문구를 생성하려고 생각 중이었고 OpenBSD 맨페이지에서 다음에 대한 내용을 볼 수 있습니다 wpa-psk(8).

The passphrase must be a sequence of between 8 and 63
ASCII-encoded characters.

여기서 "ASCII 인코딩"의 기준은 정확히 무엇입니까? 단지 상위 비트가 설정되지 않은 8비트 문자여야 한다는 것인가요? 인쇄할 수 없는 문자가 허용됩니까?

생각해 보니... 암호 문구를 무작위로 생성하는 나의 접근 방식이 어떤 의미가 있습니까? 64개의 임의 바이트를 생성하여 키로 사용하는 것이 더 낫습니까?

답변1

여기서 "ASCII 인코딩"의 기준은 정확히 무엇입니까? 단지 상위 비트가 설정되지 않은 8비트 문자여야 한다는 것인가요? 인쇄할 수 없는 문자가 허용됩니까?

위키피디아의Wi-Fi 보호 액세스WPA-PSK 암호 문구는 8~63이라고 나와 있습니다.인쇄 가능한 ASCII 문자이며 다음 참조를 각주로 포함합니다.

암호 문구의 각 문자는 32 - 126(십진수) 범위의 인코딩을 가져야 합니다. (IEEE Std. 802.11i-2004, Annex H.4.1) 공백 문자가 이 범위에 포함됩니다.

생각해 보니... 암호 문구를 무작위로 생성하는 나의 접근 방식이 어떤 의미가 있습니까? 64개의 임의 바이트를 생성하여 키로 사용하는 것이 더 낫습니까?

보안 RNG를 사용하여 여전히 256비트를 생성할 것 같습니다...

무선 라우터와 무선 네트워크에 연결하려는 모든 장치에서 WPA-PSK 키를 64자리 16진수 문자로 수동으로 입력할 수 있습니까? 그렇지 않은 경우 모든 장치에 ASCII 암호를 입력하려면 ASCII 암호를 사용해야 할 수도 있습니다.

답변2

에서http://www.xs4all.nl/~rjoris/wpapsk.html- "WPA 키 계산 - 암호에서 16진수 키까지 계산 세부 정보":

WPA-PSK 암호화의 경우 바이너리 키는 다음 공식에 따라 암호에서 파생됩니다.

PBKDF2 함수는 암호에서 키를 파생하는 표준화된 방법입니다. 계산 방법에 대한 명확한 설명과 함께 RFC2898에 지정되어 있습니다. 이 함수에는 기본 의사 난수 함수가 필요합니다. WPA의 경우 기본 기능은 HMAC-SHA1입니다. SHA1은 임의의 양의 입력 데이터에서 160비트 해시를 계산하는 함수입니다. RFC3174에 명확하게 설명되어 있습니다. HMAC는 암호화 해시 기능을 키 메시지 인증 기능으로 전환하는 표준화된 방법입니다. RFC2104에 지정되어 있습니다.

요약하면, 키 파생 프로세스에는 HMAC-SHA1 함수를 4096회 반복한 다음 이를 다시 수행하여 더 많은 키 비트를 생성하는 작업이 포함됩니다. 관련된 계산량은 1MB의 데이터에 대해 SHA1 해시를 계산하는 것과 동일합니다. 아마도 이 페이지의 Javascript가 왜 그렇게 느린지 설명이 될 것입니다.

귀하의 질문에 대해서는 다음과 같습니다. Does my approach of randomly generating a passphrase make any sense? Would it be better to just generate 64 random bytes and use that as a key?임의 바이트 암호에 모든 종류의 기호, 숫자 및 임의 알파벳 문자를 사용하는 한 둘 중 하나가 매우 강력할 것입니다. 내가 보는 방식: 둘 다(생성되거나 무작위로)불가능한추측/해킹...

관련 정보