Confiance à la première utilisation (TOFU)

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

Arrière-plan

Contrairement aux réseaux personnels qui nécessitent simplement un mot de passe, les réseaux d'entreprise utilisent l'authentification par infrastructure à clé publique (PKI), qui nécessite que le client préinstalle des certificats. Sous 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 la sécurité et se conformer à la spécification WPA R2, Android 12 a introduit une exigence pour les réseaux d'entreprise d'avoir une validation de certificat de serveur. Cette exigence supplémentaire a créé un obstacle pour les utilisateurs, car ils doivent installer un certificat CA pour de tels réseaux. TOFU offre aux utilisateurs un moyen de se connecter à un réseau d'entreprise basé sur PKI en acceptant simplement son autorité de certification racine.

Comportement des fonctionnalités

Les appareils prenant en charge TOFU affichent le comportement suivant lorsqu'un utilisateur se connecte à un réseau d'entreprise sur lequel aucune clé publique authentifiée n'est déjà installée .

Connectez-vous à un nouveau réseau via le sélecteur Wi-Fi

  1. Sélectionnez un nouveau réseau d'entreprise dans le sélecteur Wi-Fi.

    L'appareil affiche une boîte de dialogue (Figure 1) pour confirmer si le réseau est fiable.

  2. Appuyez sur Oui, connectez-vous pour accepter la connexion réseau, ou appuyez sur Non, ne vous connectez pas pour refuser.

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

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

    Boîte de dialogue pour la fonctionnalité TOFU

    Figure 1. Boîte de dialogue pour la fonctionnalité TOFU

Connectez-vous au réseau existant avec la connexion automatique activée

Lors de la connexion à un réseau d'entreprise sur lequel la connexion automatique est activée mais qui ne dispose pas d'un certificat CA valide, l'appareil se connecte automatiquement, puis affiche une notification persistante (non rejetable).

  1. Appuyez sur la notification.

    L'appareil affiche une boîte de dialogue (Figure 1) pour confirmer si le réseau est fiable.

  2. Appuyez sur Oui, connectez-vous pour accepter la connexion réseau, ou appuyez sur Non, ne vous connectez pas pour refuser.

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

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

Mise en œuvre

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

Les API publiques suivantes sont disponibles dans Android 13 pour être utilisées par les applications :

Validation

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

  • CTS : CtsWifiTestCases
  • VTS : VtsHalWifiSupplicantStaNetworkTargetTest