L'autenticazione FIDO2 utilizza la crittografia a chiave pubblica per generare una coppia di chiavi crittografiche univoca, chiamata "passkey", associata all'account di un utente. La coppia di chiavi è composta da una chiave pubblica che rimane presso il fornitore di servizi e da una chiave privata che risiede sul dispositivo dell'utente.
Quando l'utente accede al proprio account, il provider di servizi invia una richiesta (tipicamente una stringa casuale di caratteri) al dispositivo dell'utente. Il dispositivo richiede all'utente di autenticarsi inserendo un PIN o utilizzando l'autenticazione biometrica.
Se l'utente si autentica correttamente, il dispositivo utilizza la chiave privata per firmare la richiesta e inviarla al provider del servizio. Il provider del servizio utilizza la chiave pubblica per verificare che sia stata utilizzata la chiave privata corretta e, in tal caso, concede all'utente l'accesso al proprio account.
Una password memorizzata su un dispositivo può essere utilizzata per accedere a un servizio su un altro dispositivo. Ad esempio, se un utente imposta una passkey per il proprio account di posta elettronica sul dispositivo mobile, può comunque accedere a quell'account su un laptop. L'utente completerebbe la richiesta di autenticazione sul dispositivo mobile registrato.
FIDO2 supporta anche l'uso di chiavi di sicurezza, come ad esempio una YubiKey o Google Titan, quale metodo di autenticazione.
Le chiavi di sicurezza, chiamate anche "token hardware", sono piccoli dispositivi fisici che trasmettono le informazioni di autenticazione direttamente a un servizio. Possono connettersi tramite Bluetooth, protocolli NFC (Near Field Communication) o una porta USB. Gli utenti possono utilizzare una chiave di sicurezza FIDO2 invece dei dati biometrici o di un PIN per autenticarsi e firmare una richiesta.
Poiché la chiave privata viene memorizzata sul dispositivo dell'utente (e non lo lascia mai), la possibilità di una violazione della sicurezza è ridotta al minimo. Gli hacker non possono rubarla entrando in un database o intercettando le comunicazioni. La chiave pubblica che risiede presso il provider di servizi non contiene informazioni sensibili ed è di scarsa utilità per gli hacker.