Clé d'accès
From Wikipedia, the free encyclopedia
Une clé d'accès[1] (en anglais, passkey) est une preuve numérique utilisée comme méthode d'authentification pour un site web ou une application[2],[3],[4]. La clé d'accès est un type d'authentification sans mot de passe, promu par le World Wide Web Consortium et l'Alliance FIDO[5].

Conception
Les clés d'accès sont souvent stockées par le système d'exploitation ou le navigateur web et elles peuvent être synchronisées entre les appareils d'un même écosystème à l'aide du nuage informatique[2],[6], mais elles peuvent également être limitées à un seul appareil, comme une clé de sécurité physique[3].
Les clés d'accès sont conçues pour être plus pratiques et plus résistantes au hameçonnage que les méthodes d'authentification conventionnelles[5],[7]. Elles sont normalement sécurisées par la possession (de l'appareil ou de la clé de sécurité) et utilisent souvent la biométrie comme facteur de sécurité supplémentaire, sans que l'utilisateur n'ait à mémoriser un mot de passe.
Certains croient à tort que les clés d'accès sont spécifiques aux appareils Apple[8] parce qu'Apple a été une des premières compagnies à annoncer le support de ces clés. En , plus de 99 % des appareils de toutes marques prennent en charge WebAuthn, ce qui montre que la technologie des clés d'accès est largement acceptée et implantée par toutes les compagnies[9].
Histoire
Le terme anglais « passkey » est popularisé en par Google[10] et en par Apple[7],[2], lorsqu'ils annoncent qu'ils ajouteront la prise en charge de cette norme.
Google annonce qu'Android et Google Chrome prendraient en charge les clés d'accès en [11] et les comptes Google personnels en [12].
Dashlane est la première entreprise à prendre en charge le stockage des clés d'accès dans les extensions de navigateur, avec une version publique en [6], suivie par NordPass en [13], 1Password en [14] et Bitwarden en [15]. En , Google a annoncé l'intégration des clés d'accès dans ses services de connexion[16].
Fonctionnement
Un utilisateur enregistré ou non veut utiliser une clé d'accès, il doit l'enregistrer avant. Exemple: https://webauthn.io/
Enregistrement
L'utilisateur donne un nom à la clé et demande au site d'enclencher le WebAuth. Le site doit être sécurisé en https. Le site a généré au préalable une authentification défi-réponse. Le navigateur demande à l'utilisateur d'enregistrer la clé qu'il génère et stocke sur l'ordinateur. C'est la clé privée. La clé publique est transmise au serveur qui la vérifie (grâce au défi) et la stocke.
Utilisation
Le système inverse a lieu. Le serveur crée de nouveau un challenge envoyé à l'utilisateur. WebAuth demande à l'utilisateur de choisir et d'authentifier la clé. Ensuite la clé publique et la réponse est renvoyé au serveur qui identifie la clé et valide le challenge. L'utilisateur est donc bien porteur de la clé privée et il le connecte au compte associé.
La clé privée n'est jamais transmise au serveur et tout repose sur la cryptographie asymétrique.