Aller au contenu
ecdsa.com

Données d’authentificateur

La structure binaire que porte chaque réponse WebAuthn : un condensat SHA-256 de 32 octets du RP ID, un octet d’indicateurs, un compteur de signatures de 4 octets et, en option, des données d’identifiant attestées et des sorties d’extensions CBOR.
Autres graphiesauthenticatorDataauthDatarpIdHashsignCountflags byte

Indicateurs (WebAuthn Level 3 §6.1) : bit 0 UP (utilisateur présent), bit 2 UV (utilisateur vérifié), bit 3 BE (éligible à la sauvegarde), bit 4 BS (état de sauvegarde), bit 6 AT (données d’identifiant attestées incluses), bit 7 ED (extensions incluses) ; les bits 1 et 5 sont réservés. Sans AT ni ED, la structure fait exactement 37 octets. Les données d’identifiant attestées, présentes à l’enregistrement, se composent d’un AAGUID de 16 octets, de la longueur de l’ID d’identifiant sur 2 octets, de l’ID d’identifiant et de la clé publique COSE.

La signature de l’assertion couvre authenticatorData ‖ SHA-256(clientDataJSON) : la partie de confiance doit donc vérifier le condensat du RP ID par rapport à son propre RP ID, contrôler UP (et UV si elle l’exige) et évaluer le compteur. Les authentificateurs qui n’implémentent pas de compteur de signatures le laissent à zéro, ce qui est la norme pour les clés d’accès synchronisées ; un compteur qui recule sur un authentificateur qui en utilise un peut signaler une clé clonée.

Normes et références

Tous les termes