L’authentification FIDO2 s’appuie sur la cryptographie à clé publique pour générer une paire de clés cryptographiques unique, appelée « clé d’accès », associée au compte de l’utilisateur. La paire de clés se compose d’une clé publique, qui reste chez le fournisseur de services, et d’une clé privée, qui se trouve sur l’appareil de l’utilisateur.
Lorsque l’utilisateur se connecte à son compte, le fournisseur de services envoie un défi (généralement une chaîne de caractères aléatoires) à l’appareil de l’utilisateur. L’appareil invite l’utilisateur à s’authentifier en saisissant un code PIN ou en utilisant l’authentification biométrique.
Une fois l’utilisateur identifié, l’appareil utilise la clé privée pour signer le défi et le renvoyer au fournisseur de services. Ce dernier se sert de la clé publique pour vérifier la validité de la clé privée qui a été utilisée et autoriser l’utilisateur à accéder à son compte.
La clé d’accès stockée sur un appareil permet de se connecter à un service sur un autre appareil. Par exemple, si l’utilisateur définit une clé d'accès pour son compte de messagerie sur son mobile, il pourra également s’y connecter à partir d’un ordinateur portable. L’utilisateur devra suivre la procédure d’authentification sur l’appareil mobile enregistré.
FIDO2 permet également l’authentification à l’aide de clés de sécurité comme YubiKey et Google Titan.
Les clés de sécurité, également appelées « jetons matériels », sont de petits dispositifs physiques qui transmettent les informations d’authentification directement au service concerné. La connexion se fait par Bluetooth, grâce à un protocole de communication en champ proche (NFC), ou encore par USB. À la place de leurs données biométriques ou de leur code PIN, les utilisateurs peuvent employer une clé de sécurité FIDO2 pour s’identifier et signer le défi.
Comme la clé privée est stockée sur l’appareil de l’utilisateur et n’en sort jamais, la possibilité d’une violation de la sécurité est réduite au minimum. Les pirates ne peuvent pas la voler en pénétrant dans une base de données ou en interceptant des communications. La clé publique qui réside chez le fournisseur de services ne contient aucune information sensible et n’est guère utile aux cybercriminels.