Vertrauen bei der ersten Verwendung

Auf Geräten mit Android 13 oder höher unterstützt Android den Authentifizierungsansatz „Trust on First Use“ (TOFU) (RFC7435). Damit können Nutzer einem EAP-Netzwerk (Enterprise Authentication Protocol) vertrauen, indem sie die vom Server verwendete Root-Zertifizierungsstelle installieren und ihren Domainnamen in einem gespeicherten Netzwerk festlegen. Mit TOFU kann das Gerät einen nicht authentifizierten öffentlichen Schlüssel abrufen, wenn ein Nutzer zum ersten Mal eine Verbindung zu einem Unternehmensnetzwerk herstellt, und den Schlüssel für nachfolgende Verbindungen beibehalten.

Hintergrund

Im Vergleich zu privaten Netzwerken, für die nur ein Passwort erforderlich ist, verwenden Enterprise-Netzwerke die Public-Key-Infrastructure-Authentifizierung (PKI). Dazu müssen Zertifikate vom Client vorab installiert werden. Unter Android 11 oder niedriger können Nutzer in den Netzwerkeinstellungen die Option Nicht prüfen für das Server-CA-Zertifikat auswählen, um die Validierung des serverseitigen Zertifikats zu umgehen. Um die Sicherheit zu erhöhen und die WPA R2-Spezifikation einzuhalten, wurde in Android 12 jedoch eine Validierung von Serverzertifikaten für Unternehmensnetzwerke eingeführt. Diese zusätzliche Anforderung schuf eine Hürde für Nutzer, da sie für solche Netzwerke ein CA-Zertifikat installieren müssen. TOFU bietet Nutzern die Möglichkeit, sich mit einem PKI-basierten Unternehmensnetzwerk zu verbinden, indem sie einfach die Root-Zertifizierungsstelle akzeptieren.

Verhalten der Funktion

Geräte, die TOFU unterstützen, zeigen das folgende Verhalten an, wenn ein Nutzer eine Verbindung zu einem Unternehmensnetzwerk herstellt, das keinen bereits installierten authentifizierten öffentlichen Schlüssel hat.

Über WLAN-Auswahl mit neuem Netzwerk verbinden

  1. Wählen Sie in der WLAN-Auswahl ein neues Unternehmensnetzwerk aus.

    Auf dem Gerät wird ein Dialogfeld (Abbildung 1) angezeigt, in dem Sie bestätigen müssen, dass das Netzwerk vertrauenswürdig ist.

  2. Tippen Sie auf Ja, verbinden, um die Netzwerkverbindung zu akzeptieren, oder auf Nein, nicht verbinden, um sie abzulehnen.

    • Wenn Sie auf Ja, verbinden tippen, konfiguriert das Gerät automatisch die Sicherheitsparameter, stellt eine Verbindung zum Netzwerk her und aktiviert die automatische Verbindung für das Netzwerk.

    • Wenn Sie auf Nein, keine Verbindung herstellen tippen, wird die Verbindung des Geräts zum Netzwerk getrennt und die automatische Verbindung für das Netzwerk deaktiviert.

    Dialog für TOFU-Funktion

    Abbildung 1. Dialog für die TOFU-Funktion

Mit vorhandenem Netzwerk verbinden, wenn die automatische Verbindung aktiviert ist

Wenn eine Verbindung zu einem Unternehmensnetzwerk hergestellt wird, für das die automatische Verbindung aktiviert, aber kein gültiges CA-Zertifikat vorhanden ist, stellt das Gerät automatisch eine Verbindung her und zeigt dann eine dauerhafte (nicht wegzuwischende) Benachrichtigung an.

  1. Tippen Sie auf die Benachrichtigung.

    Auf dem Gerät wird ein Dialogfeld (Abbildung 1) angezeigt, in dem Sie bestätigen müssen, ob das Netzwerk vertrauenswürdig ist.

  2. Tippen Sie auf Ja, verbinden, um die Netzwerkverbindung zu akzeptieren, oder auf Nein, nicht verbinden, um sie abzulehnen.

    • Wenn Sie auf Ja, verbinden tippen, konfiguriert das Gerät automatisch die Sicherheitsparameter, stellt eine Verbindung zum Netzwerk her und aktiviert die automatische Verbindung für das Netzwerk.

    • Wenn Sie auf Nein, keine Verbindung herstellen tippen, wird die Verbindung des Geräts zum Netzwerk getrennt und die automatische Verbindung für das Netzwerk deaktiviert.

Implementierung

Implementieren Sie zur Unterstützung der TOFU-Funktion die Supplicant HALs, die im Android Open Source Project (AOSP) unter /hardware/interfaces/wifi/supplicant/aidl/android/hardware/wifi/supplicant bereitgestellt werden.

Die folgenden öffentlichen APIs sind in Android 13 für Apps verfügbar:

Zertifizierungsstufe

Verwenden Sie die folgenden Tests, um die TOFU-Implementierung auf Ihrem Gerät zu validieren:

  • CTS: CtsWifiTestCases
  • VTS: VtsHalWifiSupplicantStaNetworkTargetTest