Confiance lors de la première utilisation (TOFU)

Pour les appareils équipés d'Android 13 ou version ultérieure, Android est compatible avec l'approche d'authentification TOFU (Trust on First Use) (RFC7435). qui permet aux utilisateurs de faire confiance à un réseau d'entreprise (EAP) en installant l'autorité de certification racine utilisé par le serveur et définir son nom de domaine dans un réseau enregistré. TOFU permet l'appareil pour obtenir une clé publique non authentifiée lorsqu'un utilisateur se connecte pour la première fois à un réseau d'entreprise et conserver la clé pour les connexions ultérieures.

Arrière-plan

Par rapport aux réseaux personnels qui ne nécessitent qu'un mot de passe, les réseaux d'entreprise utilisent l'authentification PKI (Public Key Infrastructure), qui nécessite que le client pour préinstaller des certificats. Sur Android 11 ou version antérieure, les utilisateurs peuvent sélectionner l'option Ne pas valider pour le certificat CA du serveur dans les paramètres réseau, en contournant la validation du certificat côté serveur. Cependant, pour renforcer et conforme à la spécification WPA R2, Android 12 a introduit exigence pour les réseaux d'entreprise d'avoir la validation des certificats de serveur. Ce une exigence supplémentaire a créé un obstacle pour les utilisateurs, car ils devaient installer une autorité de certification pour ces réseaux. TOFU permet aux utilisateurs de se connecter à un d’entreprise basée sur PKI en acceptant simplement son AC racine.

Comportement de la fonctionnalité

Les appareils compatibles avec TOFU présentent le comportement suivant lorsqu'un utilisateur se connecte à un réseau d'entreprise qui ne possède pas de système d'exploitation déjà installé une clé publique authentifiée.

Se connecter au nouveau réseau via l'outil de sélection Wi-Fi

  1. Sélectionnez un nouveau réseau d'entreprise dans l'outil de sélection du Wi-Fi.

    L'appareil affiche une boîte de dialogue (figure 1) pour vérifier si le est fiable.

  2. Appuyez sur Oui, se connecter pour accepter la connexion réseau ou sur Non, ne pas Connect pour refuser l'appel.

    • Si vous appuyez sur Oui, se connecter, l'appareil configure automatiquement le paramètres de sécurité, se connecte au réseau et active la connexion automatique pour le réseau.

    • Si vous appuyez sur Non, ne pas connecter, l'appareil se déconnecte du réseau et désactive la connexion automatique pour le réseau.

    Boîte de dialogue de la fonctionnalité TOFU

    Figure 1 : Boîte de dialogue de la fonctionnalité TOFU

Se connecter à un réseau existant lorsque la connexion automatique est activée

Lorsque vous vous connectez à un réseau d'entreprise sur lequel la connexion automatique est activée, mais sur lequel n’a pas de certificat CA valide, l’appareil se connecte automatiquement, puis affiche une notification persistante (qui ne peut pas être ignorée).

  1. Appuyez sur la notification.

    L'appareil affiche une boîte de dialogue (figure 1) pour vérifier si le est fiable.

  2. Appuyez sur Oui, se connecter pour accepter la connexion réseau ou sur Non, ne pas Connect pour refuser l'appel.

    • Si vous appuyez sur Oui, se connecter, l'appareil configure automatiquement le paramètres de sécurité, se connecte au réseau et active la connexion automatique pour le réseau.

    • Si vous appuyez sur Non, ne pas connecter, l'appareil se déconnecte du réseau et désactive la connexion automatique pour le réseau.

Implémentation

Pour prendre en charge la fonctionnalité TOFU, implémentez les HAL du demandeur fournis dans le Projet Android Open Source (AOSP) à l'adresse /hardware/interfaces/wifi/supplicant/aidl/android/hardware/wifi/supplicant

Les API publiques suivantes sont disponibles dans Android 13 par les applications:

Validation

Pour valider l'implémentation de la TOFU sur votre appareil, utilisez les tests suivants:

  • CTS: CtsWifiTestCases
  • VTS: VtsHalWifiSupplicantStaNetworkTargetTest