Für Geräte mit Android 13 oder höher muss Android unterstützt den TOFU-Authentifizierungsansatz (Trust on First Use) (RFC 7435) Damit können Nutzer einem Unternehmensnetzwerk (EAP) vertrauen, indem sie die Root-Zertifizierungsstelle installieren verwendet wird und der Domainname in einem gespeicherten Netzwerk festgelegt wird. TOFU ermöglicht das Gerät, um einen nicht authentifizierten öffentlichen Schlüssel zu erhalten, wenn ein Nutzer zum ersten Mal eine Verbindung herstellt mit einem Unternehmensnetzwerk verbinden und den Schlüssel für nachfolgende Verbindungen beibehalten.
Hintergrund
Im Vergleich zu privaten Netzwerken, die nur ein Passwort erfordern, die Public-Key-Infrastruktur-Authentifizierung (PKI) verwenden, für die der Client um Zertifikate vorzuinstallieren. In Android 11 oder niedriger können Nutzer die Option Nicht validieren für das Server-CA-Zertifikat in den Netzwerkeinstellungen aus. wodurch die Validierung des serverseitigen Zertifikats umgangen wird. Zur Stärkung und der WPA R2-Spezifikation entsprechen, wurde mit Android 12 Voraussetzung für die Validierung des Serverzertifikats in Unternehmensnetzwerken. Dieses zusätzliche Anforderung schuf für Nutzer ein Hindernis, da sie eine Zertifizierungsstelle installieren müssen. entsprechende Zertifikate. Über TOFU können Nutzer eine Verbindung zu einem PKI-basiertes Unternehmensnetzwerk einfach durch Akzeptieren der Stamm-CA.
Verhalten der Funktion
Wenn ein Nutzer eine Verbindung herstellt, wird auf Geräten, die TOFU unterstützen, das folgende Verhalten angezeigt mit einem Unternehmensnetzwerk verbinden, in dem noch keine authentifizierten öffentlichen Schlüssel.
Über WLAN-Auswahl mit neuem Netzwerk verbinden
Wählen Sie in der WLAN-Auswahl ein neues Unternehmensnetzwerk aus.
Auf dem Gerät wird ein Dialogfeld angezeigt (Abbildung 1), in dem Sie bestätigen können, ob der Netzwerk vertrauenswürdig ist.
Tippe auf Ja, verbinden, um die Netzwerkverbindung zu akzeptieren, oder auf Nein, nicht. verbinden, um ihn abzulehnen.
Wenn Sie auf Ja, verbinden tippen, konfiguriert das Gerät automatisch die Sicherheitsparameter, Verbindung zum Netzwerk und Aktivierung der automatischen Verbindung für das Netzwerk.
Wenn Sie auf Nein, nicht verbinden tippen, trennt das Gerät die Verbindung zum und deaktiviert die automatische Verbindung für das Netzwerk.
Abbildung 1: Dialogfeld für die TOFU-Funktion
Mit vorhandenem Netzwerk verbinden und automatische Verbindung aktivieren
Wenn Sie eine Verbindung zu einem Unternehmensnetzwerk herstellen, in dem die automatische Verbindung aktiviert ist, kein gültiges CA-Zertifikat hat, stellt das Gerät automatisch eine Verbindung her. zeigt eine fixierte (nicht schließbare) Benachrichtigung an.
Tippen Sie auf die Benachrichtigung.
Auf dem Gerät wird ein Dialogfeld angezeigt (Abbildung 1), in dem Sie bestätigen können, ob der Netzwerk vertrauenswürdig ist.
Tippe auf Ja, verbinden, um die Netzwerkverbindung zu akzeptieren, oder auf Nein, nicht. verbinden, um ihn abzulehnen.
Wenn Sie auf Ja, verbinden tippen, konfiguriert das Gerät automatisch die Sicherheitsparameter, Verbindung zum Netzwerk und Aktivierung der automatischen Verbindung für das Netzwerk.
Wenn Sie auf Nein, nicht verbinden tippen, trennt das Gerät die Verbindung zum und deaktiviert die automatische Verbindung für das Netzwerk.
Implementierung
Um die TOFU-Funktion zu unterstützen, implementieren Sie die unterstützenden HALs, die in den
Android Open Source Project (AOSP) unter
/hardware/interfaces/wifi/supplicant/aidl/android/hardware/wifi/supplicant
Die folgenden öffentlichen APIs sind in Android 13 verfügbar zur Verwendung durch Apps:
WifiManager#isTrustOnFirstUseSupported()
: Gibt an, ob das Gerät TOFU unterstützt.WifiEnterpriseConfig#enableTrustOnFirstUse(boolean)
: Aktiviert TOFU.WifiEnterpriseConfig#isTrustOnFirstUseEnabled()
: Gibt an, ob TOFU aktiviert ist.
Zertifizierungsstufe
Führe die folgenden Tests durch, um die Implementierung von TOFU auf deinem Gerät zu überprüfen:
- CTS:
CtsWifiTestCases
- VTS:
VtsHalWifiSupplicantStaNetworkTargetTest