Каковы технические требования к парольной фразе 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, Приложение H.4.1) Символ пробела включен в этот диапазон.

Если подумать... Имеет ли смысл мой подход случайной генерации парольной фразы? Будет ли лучше просто сгенерировать 64 случайных байта и использовать их в качестве ключа?

Думаю, я все же просто сгенерирую 256 бит, используя безопасный ГСЧ...

Позволяет ли ваш беспроводной маршрутизатор и каждое устройство, которое вы хотите подключить к беспроводной сети, вручную вводить ключ WPA-PSK в виде 64 шестнадцатеричных символов? Если нет, то вам, возможно, придется использовать парольную фразу ASCII, чтобы иметь возможность ввести его на всех ваших устройствах.

решение2

Отhttp://www.xs4all.nl/~rjoris/wpapsk.html- «Расчет ключа WPA — от парольной фразы до шестнадцатеричного ключа. Подробности расчета»:

Для шифрования WPA-PSK двоичный ключ выводится из парольной фразы по следующей формуле:

Функция PBKDF2 — это стандартизированный метод получения ключа из парольной фразы. Он указан в RFC2898 с четким объяснением того, как его вычислить. Для функции нужна базовая псевдослучайная функция. В случае WPA базовой функцией является HMAC-SHA1. SHA1 — это функция, которая вычисляет 160-битный хэш из произвольного количества входных данных. Он четко объяснен в RFC3174. HMAC — это стандартизированный метод превращения криптографической хэш-функции в функцию аутентификации сообщений с ключом. Он указан в RFC2104.

Подводя итог, можно сказать, что процесс получения ключа включает в себя итерацию функции HMAC-SHA1 4096 раз, а затем повторение этого для получения большего количества битов ключа. Объем вычислений эквивалентен вычислению хеша SHA1 для 1 Мбайта данных. Возможно, это объясняет, почему 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?: Любой из них будет очень сильным, если вы используете все виды символов, цифр и случайных букв алфавита в вашей случайной байтовой парольной фразе. Как я смотрю на это: оба они (сгенерированные или случайные) будутневозможныйугадать/взломать...

Связанный контент