WPA3 und Wi-Fi Enhanced Open

Android 10 führt die Unterstützung für die Standards Wi-Fi Protected Access Version 3 (WPA3) und Wi-Fi Enhanced Open der Wi-Fi Alliance (WFA) ein. 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 allgemeine Wi-Fi-Sicherheit durch den Einsatz moderner Sicherheitsalgorithmen und stärkerer Cipher Suites zu verbessern. WPA3 besteht aus zwei Teilen:

  • WPA3-Personal: Verwendet Simultaneous Authentication of Equals (SAE) anstelle von Pre-Shared Key (PSK) und bietet Benutzern einen stärkeren Schutz vor Angriffen wie Offline-Wörterbuchangriffen, Schlüsselwiederherstellung und Nachrichtenfälschung.
  • 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 opportunistischer drahtloser Verschlüsselung (OWE) basiert. Es bietet Verschlüsselung und Datenschutz in offenen, nicht passwortgeschützten Netzwerken in Bereichen wie Cafés, Hotels, Restaurants und Bibliotheken. Enhanced Open bietet keine Authentifizierung.

WPA3 und Wi-Fi Enhanced Open verbessern die allgemeine Wi-Fi-Sicherheit und bieten mehr Datenschutz und Robustheit gegenüber bekannten Angriffen. Da viele Geräte diese Standards noch nicht unterstützen oder noch keine Software-Upgrades zur Unterstützung dieser Funktionen erhalten haben, hat WFA die folgenden Übergangsmodi vorgeschlagen:

  • WPA2/WPA3-Übergangsmodus: Der bedienende Zugriffspunkt unterstützt gleichzeitig die WPA2- und WPA3-Standards. In diesem Modus verwenden Android 10-Geräte WPA3 für die Verbindung und Geräte mit Android 9 oder niedriger verwenden WPA2 für die Verbindung mit demselben Zugriffspunkt.
  • WPA2/WPA3-Enterprise-Übergangsmodus: Der bedienende Zugriffspunkt unterstützt gleichzeitig die WPA2-Enterprise- und WPA3-Enterprise-Standards.
  • OWE-Übergangsmodus: Der bedienende Zugriffspunkt unterstützt gleichzeitig sowohl OWE als auch offene Standards. In diesem Modus verwenden Android 10-Geräte OWE zur Verbindung, und Geräte mit Android 9 oder niedriger verbinden sich ohne Verschlüsselung mit demselben Zugriffspunkt.

Android 12 unterstützt die Transition Disable Indication, einen Mechanismus, der ein Gerät anweist, WPA2 nicht zu verwenden und stattdessen WPA3 zu verwenden. Wenn ein Gerät diese Angabe erhält, verwendet es WPA3, um eine Verbindung zu einem WPA3-Netzwerk herzustellen, das einen Übergangsmodus unterstützt. Android 12 unterstützt auch den Authentifizierungsaustausch WPA3 Hash-to-Element (H2E). Weitere Informationen finden Sie in der WPA3-Spezifikation .

WPA3 und Wi-Fi Enhanced Open werden nur im Client-Modus unterstützt.

Implementierung

Um WPA3 und Wi-Fi Enhanced Open zu unterstützen, implementieren Sie die Supplicant HAL Interface Design Language (HIDL), die im Android Open Source Project (AOSP) unter hardware/interfaces/wifi/supplicant/1.3/ bereitgestellt wird.

Folgendes ist erforderlich, um WPA3 und OWE zu unterstützen:

  • Linux-Kernel-Patches zur Unterstützung von SAE und OWE

    • cfg80211
    • nl80211
  • wpa_supplicant mit Unterstützung für SAE, SUITEB192 und OWE

  • Wi-Fi-Treiber mit Unterstützung für SAE, SUITEB192 und OWE

  • Wi-Fi-Firmware mit Unterstützung für SAE, SUITEB192 und OWE

  • WLAN-Chip mit Unterstützung für WPA3 und OWE

Öffentliche API-Methoden sind in Android 10 verfügbar, damit Apps die Geräteunterstützung für diese Funktionen ermitteln können:

WifiConfiguration.java enthält neue Schlüsselverwaltungstypen sowie paarweise Chiffren, Gruppenchiffren, Gruppenmanagementchiffren und Suite-B-Chiffren, die für OWE, WPA3-Personal und WPA3-Enterprise erforderlich sind.

Aktivieren von WPA3 und Wi-Fi Enhanced Open

So aktivieren Sie WPA3-Personal, WPA3-Enterprise und Wi-Fi Enhanced Open im Android-Framework:

  • WPA3-Personal: Fügen Sie die CONFIG_SAE -Kompilierungsoption in die wpa_supplicant Konfigurationsdatei ein.

    # WPA3-Personal (SAE)
    CONFIG_SAE=y
    
  • WPA3-Enterprise: Nehmen Sie die Kompilierungsoptionen CONFIG_SUITEB192 und CONFIG_SUITEB in die Konfigurationsdatei wpa_supplicant auf.

    # WPA3-Enterprise (SuiteB-192)
    CONFIG_SUITEB=y
    CONFIG_SUITEB192=y
    
  • Wi-Fi Enhanced Open: Fügen Sie die CONFIG_OWE -Kompilierungsoption in die wpa_supplicant Konfigurationsdatei 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 Benutzer diese Arten von Netzwerken nicht manuell hinzufügen, scannen oder sich mit ihnen verbinden.

Validierung

Führen Sie zum Testen Ihrer Implementierung die folgenden Tests aus.

Unit-Tests

Führen Sie SupplicantStaIfaceHalTest aus, um das Verhalten der Capability-Flags für WPA3 und OWE zu überprüfen.

atest SupplicantStaIfaceHalTest

Führen WifiManagerTest aus, um das Verhalten der öffentlichen APIs für diese Funktion zu überprüfen.

atest WifiManagerTest

Integrationstest (ACTS)

Verwenden Sie zum Ausführen eines Integrationstests die Datei WifiWpa3OweTest.py der Android Comms Test Suite (ACTS), die sich unter tools/test/connectivity/acts_tests/tests/google/wifi .

VTS-Tests

Führen VtsHalWifiSupplicantV1_3TargetTest aus, um das Verhalten des Supplicant HAL 1.3 zu testen.

vts-tradefed run commandAndExit vts --skip-all-system-status-check --primary-abi-only --skip-preconditions --module VtsHalWifiSupplicantV1_3Target