Was sind die technischen Anforderungen für eine WPA-PSK-Passphrase?

Was sind die technischen Anforderungen für eine WPA-PSK-Passphrase?

Ich habe darüber nachgedacht, eine WPA-PSK-Passphrase zu generieren, und sehe in der OpenBSD-Manpage für wpa-psk(8):

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

Was genau ist hier das Kriterium für „ASCII-codiert“? Nur, dass es 8-Bit-Zeichen sein müssen, bei denen das höchste Bit nicht gesetzt ist? Sind nicht druckbare Zeichen erlaubt?

Wenn ich darüber nachdenke ... Ist mein Ansatz, eine Passphrase zufällig zu generieren, sinnvoll? Wäre es besser, einfach 64 zufällige Bytes zu generieren und diese als Schlüssel zu verwenden?

Antwort1

Was genau ist hier das Kriterium für „ASCII-codiert“? Nur, dass es 8-Bit-Zeichen sein müssen, bei denen das höchste Bit nicht gesetzt ist? Sind nicht druckbare Zeichen erlaubt?

WikipediaWi-Fi-geschützter Zugriffsagt, die WPA-PSK-Passphrase ist 8 bis 63druckbare ASCII-Zeichenund fügt diesen Verweis als Fußnote hinzu:

Jedes Zeichen in der Passphrase muss eine Kodierung im Bereich von 32 bis einschließlich 126 (Dezimalzahlen) aufweisen. (IEEE-Standard 802.11i-2004, Anhang H.4.1) Das Leerzeichen ist in diesem Bereich enthalten.

Wenn ich darüber nachdenke ... Ist mein Ansatz, eine Passphrase zufällig zu generieren, sinnvoll? Wäre es besser, einfach 64 zufällige Bytes zu generieren und diese als Schlüssel zu verwenden?

Ich glaube, ich werde trotzdem einfach 256 Bits mit einem sicheren RNG generieren …

Können Sie den WPA-PSK-Schlüssel bei Ihrem WLAN-Router und bei jedem Gerät, das Sie mit Ihrem WLAN verbinden möchten, manuell als 64 Hexadezimalzeichen eingeben? Falls nicht, müssen Sie möglicherweise eine ASCII-Passphrase verwenden, um sie auf allen Ihren Geräten eingeben zu können.

Antwort2

Aushttp://www.xs4all.nl/~rjoris/wpapsk.html- "WPA-Schlüsselberechnung - Von der Passphrase zum Hexadezimalschlüssel. Details der Berechnung":

Bei der WPA-PSK-Verschlüsselung wird der Binärschlüssel aus der Passphrase nach folgender Formel abgeleitet:

Die Funktion PBKDF2 ist eine standardisierte Methode, um einen Schlüssel aus einer Passphrase abzuleiten. Sie ist in RFC2898 mit einer klaren Erklärung zur Berechnung spezifiziert. Die Funktion benötigt eine zugrundeliegende pseudozufällige Funktion. Im Fall von WPA ist die zugrundeliegende Funktion HMAC-SHA1. SHA1 ist eine Funktion, die einen 160-Bit-Hash aus einer beliebigen Menge an Eingabedaten berechnet. Sie ist in RFC3174 klar erklärt. HMAC ist eine standardisierte Methode, um eine kryptografische Hash-Funktion in eine verschlüsselte Nachrichtenauthentifizierungsfunktion umzuwandeln. Sie ist in RFC2104 spezifiziert.

Zusammenfassend lässt sich sagen, dass der Schlüsselableitungsprozess das 4096-malige Durchlaufen einer HMAC-SHA1-Funktion und anschließendes erneutes Durchlaufen zur Erzeugung weiterer Schlüsselbits umfasst. Der erforderliche Rechenaufwand entspricht der Berechnung des SHA1-Hashes über 1 MByte Daten. Vielleicht erklärt das, warum das Javascript auf dieser Seite so langsam ist.

Zu Ihrer Frage: 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?Beides wäre sehr stark, solange Sie alle möglichen Symbole, Zahlen und zufällige Buchstaben in Ihrer Passphrase mit zufälligen Bytes verwenden. So wie ich das sehe, wären beide (generiert oder zufällig) sehr stark.unmöglichraten/hacken...

verwandte Informationen