Android 10 unterstützt die Standards Wi-Fi Protected Access Version 3 (WPA3) der Wi-Fi Alliance (WFA) und Wi-Fi Enhanced Open. Weitere Informationen finden Sie unter Sicherheit auf der WFA-Website.
WPA3 ist ein neuer WFA-Sicherheitsstandard für private und Unternehmensnetzwerke. Es zielt darauf ab, die WLAN-Sicherheit insgesamt durch den Einsatz moderner Sicherheitsalgorithmen und stärkerer Cipher Suites zu verbessern. WPA3 besteht aus zwei Teilen:
- WPA3-Personal: Verwendet die gleichzeitige Authentifizierung von Gleichheitszeichen (SAE) anstelle eines vorinstallierten Schlüssels (Pre-Shared Key, PSK) und bietet Nutzern einen stärkeren Sicherheitsschutz gegen Angriffe wie Offline-Wörterbuchangriffe, Schlüsselwiederherstellung und Nachrichtenfälschungen.
- WPA3-Enterprise:Bietet stärkere Authentifizierungs- und Link-Layer-Verschlüsselungsmethoden sowie einen optionalen 192-Bit-Sicherheitsmodus für sensible Sicherheitsumgebungen.
Wi-Fi Enhanced Open ist ein neuer WFA-Sicherheitsstandard für öffentliche Netzwerke, der auf der opportunistischen Wireless Encryption (OWE) basiert. Sie bietet Verschlüsselung und Datenschutz für offene, nicht passwortgeschützte Netzwerke in Bereichen wie Cafés, Hotels, Restaurants und Bibliotheken. Erweitertes Öffnen bietet keine Authentifizierung.
WPA3 und Wi-Fi Enhanced Open verbessern die WLAN-Sicherheit insgesamt und bieten einen besseren Datenschutz und Schutz vor bekannten Angriffen. Da viele Geräte diese Standards noch nicht unterstützen oder noch keine Softwareupgrades zur Unterstützung dieser Funktionen haben, hat WFA die folgenden Übergangsmodi vorgeschlagen:
- WPA2/WPA3 Transition Mode:Der Bereitstellungszugriffspunkt unterstützt gleichzeitig den Standard WPA2 und WPA3. In diesem Modus verwenden Android 10-Geräte WPA3 für die Verbindung und Geräte mit Android 9 oder niedriger verwenden WPA2, um eine Verbindung zum selben Zugangspunkt herzustellen.
- WPA2/WPA3-Enterprise Übergangsmodus: Der Bereitstellungszugriffspunkt unterstützt gleichzeitig die Standards WPA2-Enterprise und WPA3-Enterprise.
- OWE-Übergangsmodus: Der Bereitstellungszugriffspunkt unterstützt gleichzeitig OWE und offene Standards. In diesem Modus verwenden Android 10-Geräte OWE, während Geräte mit Android 9 oder niedriger ohne Verschlüsselung mit demselben Zugangspunkt verbunden werden.
Android 12 unterstützt die Kennzeichnung „Übergangsdeaktivierung“. Dies ist ein Mechanismus, der ein Gerät anweist, nicht WPA2, sondern WPA3 zu verwenden. Wenn ein Gerät diese Meldung erhält, verwendet es WPA3, um eine Verbindung zu einem WPA3-Netzwerk herzustellen, das einen Transition-Modus unterstützt. Android 12 unterstützt auch den WPA3-Hash-to-Element-Authentifizierungsaustausch (H2E). Weitere Informationen finden Sie in der WPA3-Spezifikation.
WPA3 und Wi-Fi Enhanced Open werden nur im Clientmodus unterstützt.
Implementierung
Implementieren Sie die Supplicant HAL-Schnittstelle, um WPA3 und Wi-Fi Enhanced Open zu unterstützen.
Ab Android 13 verwendet die Schnittstelle AIDL für die HAL-Definition.
Bei Releases vor Android 13 verwenden Schnittstellen und Anbieterpartitionen HIDL.
Die HIDL-Schnittstelle finden Sie in hardware/interfaces/wifi/supplicant/1.3/
und die AIDL-Schnittstelle in hardware/interfaces/wifi/supplicant/aidl/
.
Folgendes ist zur Unterstützung von WPA3 und OWE erforderlich:
Linux-Kernel-Patches zur Unterstützung von SAE und OWE
- cfg80211
- Nl80211
wpa_supplicant
mit Unterstützung für SAE, SUITEB192 und OWEWLAN-Treiber mit Unterstützung für SAE, SUITEB192 und OWE
WLAN-Firmware mit Unterstützung für SAE, SUITEB192 und OWE
WLAN-Chip mit Unterstützung für WPA3 und OWE
In Android 10 sind öffentliche API-Methoden verfügbar, damit Apps die Geräteunterstützung für diese Funktionen ermitteln können:
WifiManager#isWpa3SaeSupported
WifiManager#isWpa3SuiteBSupported
WifiManager#isEnhancedOpenSupported
WifiConfiguration.java
enthält neue Schlüsselverwaltungstypen sowie paarweise Chiffren, Gruppenverschlüsselungschiffe, Gruppenverwaltungschiffe und Suite-B-Chiffren, die für OWE, WPA3-Personal und WPA3-Enterprise erforderlich sind.
WPA3 und Wi-Fi Enhanced Open aktivieren
So aktivieren Sie WPA3-Personal, WPA3-Enterprise und Wi-Fi Enhanced Open im Android-Framework:
WPA3-Personal: Fügen Sie die Kompilierungsoption
CONFIG_SAE
in die Konfigurationsdateiwpa_supplicant
ein.# WPA3-Personal (SAE) CONFIG_SAE=y
WPA3-Enterprise:Fügen Sie die Kompilierungsoptionen
CONFIG_SUITEB192
undCONFIG_SUITEB
in die Konfigurationsdateiwpa_supplicant
ein.# WPA3-Enterprise (SuiteB-192) CONFIG_SUITEB=y CONFIG_SUITEB192=y
Wi-Fi Enhanced Open: Fügen Sie die Kompilierungsoption
CONFIG_OWE
in die Konfigurationsdateiwpa_supplicant
ein.# Opportunistic Wireless Encryption (OWE) # Experimental implementation of draft-harkins-owe-07.txt CONFIG_OWE=y
Wenn WPA3-Personal, WPA3-Enterprise oder Wi-Fi Enhanced Open nicht aktiviert sind, können Nutzer diese Netzwerke nicht manuell hinzufügen, scannen oder eine Verbindung zu ihnen herstellen.
Zertifizierungsstufe
Führe die folgenden Tests aus, um deine Implementierung zu testen.
Einheitentests
Führen Sie SupplicantStaIfaceHalTest
aus, um das Verhalten der Funktions-Flags für WPA3 und OWE zu prüfen.
atest SupplicantStaIfaceHalTest
Führen Sie WifiManagerTest
aus, um das Verhalten der öffentlichen APIs für dieses Feature zu prüfen.
atest WifiManagerTest
VTS-Tests
Wenn die HIDL-Schnittstelle implementiert ist, führe folgenden Befehl aus:
atest VtsHalWifiSupplicantV1_3TargetTest
Wenn die AIDL-Schnittstelle implementiert ist, führen Sie Folgendes aus:
atest VtsHalWifiSupplicantStaIfaceTargetTest