Glossaire

WebAuthn : définition de l'API d'authentification web

WebAuthn est l'API du W3C qui permet aux sites d'authentifier par clé cryptographique. Définition, liaison à l'origine et place dans l'ensemble FIDO2.

WebAuthn (Web Authentication) est l'API normalisée par le W3C qui permet à un site web de demander au navigateur la création et l'utilisation d'identifiants cryptographiques à la place d'un mot de passe. Avec le protocole CTAP, elle constitue l'ensemble FIDO2.

Les deux opérations

  • navigator.credentials.create() — enregistrement : l'authentificateur génère une paire de clés propre au site, renvoie la clé publique accompagnée d'une attestation ;
  • navigator.credentials.get() — authentification : l'authentificateur signe un défi envoyé par le serveur, après vérification de la présence et, si demandé, de l'utilisateur.

La clé privée ne quitte jamais l'élément sécurisé. Le serveur, appelé relying party, ne conserve qu'une clé publique, sans valeur en cas de fuite de sa base.

Le mécanisme qui fait la différence

Le navigateur inclut l'origine réelle — le domaine affiché dans la barre d'adresse — dans les données signées, et refuse d'utiliser une clé enregistrée pour un autre domaine. Un site imitant la page de connexion n'obtient donc rien d'exploitable : c'est la liaison à l'origine, fondement de la résistance au phishing de FIDO2.

Deux précisions utiles. WebAuthn ne concerne que la couche navigateur et application : le dialogue avec une clé USB ou NFC relève de CTAP. Et l'API authentifie l'ouverture de session ; la protection du cookie émis ensuite, comme la robustesse de la procédure de récupération, restent à la charge de l'application.


Aller plus loin : définition de FIDO2 · définition de CTAP · passkey, FIDO2, WebAuthn : démêler les termes · l'authentification cognitive

Demander une démonstration

Prouver l'intention, pas un secret

Découvrez le 4ᵉ facteur cognitif appliqué à vos parcours sensibles.

Demander une démonstration