WebAuthn (Authentification Web) est un standard web développé par le World Wide Web Consortium (W3C) et la FIDO Alliance pour permettre une authentification sécurisée et sans mot de passe sur le web. Il fait partie du cadre FIDO2 plus large et vise à réduire la dépendance aux mots de passe traditionnels, qui sont souvent vulnérables au hameçonnage, au bourrage d'identifiants et à d'autres attaques.
Au cœur du dispositif, WebAuthn permet aux utilisateurs de s'authentifier en utilisant la cryptographie à clé publique. Au lieu d'un nom d'utilisateur et d'un mot de passe, les utilisateurs enregistrent une paire de clés publique-privée unique auprès d'une application web (la partie de confiance). La clé privée est stockée de façon sécurisée sur un authentificateur — tel qu'une clé de sécurité matérielle, un smartphone ou un dispositif biométrique intégré — tandis que la clé publique est stockée sur le serveur.
Lors de l'authentification, le serveur émet un défi qui doit être signé par la clé privée de l'utilisateur. Le défi signé est renvoyé et vérifié à l'aide de la clé publique stockée, garantissant à la fois l'intégrité et l'origine de la réponse. Cette approche empêche que les identifiants soient interceptés ou réutilisés.
WebAuthn prend en charge une gamme d'authentificateurs et d'appareils, ce qui le rend flexible tant pour les développeurs que pour les utilisateurs. Il permet également l'authentification multi-facteurs (MFA) lorsqu'il est combiné avec d'autres facteurs tels que des codes PIN ou des données biométriques, améliorant considérablement la sécurité sans sacrifier la convivialité.