Zum Inhalt springen
ecdsa.com

Authenticator-Daten

Die binäre Struktur, die jede WebAuthn-Antwort enthält: ein 32-Byte-SHA-256-Hash der RP-ID, ein Flags-Byte, ein 4-Byte-Signaturzähler und optional attestierte Credential-Daten sowie CBOR-Ausgaben von Erweiterungen.
Auch geschrieben alsauthenticatorDataauthDatarpIdHashsignCountflags byte

Flags (WebAuthn Level 3 §6.1): Bit 0 UP (Benutzer anwesend), Bit 2 UV (Benutzer verifiziert), Bit 3 BE (Backup-fähig), Bit 4 BS (Backup-Status), Bit 6 AT (attestierte Credential-Daten enthalten), Bit 7 ED (Erweiterungen enthalten); die Bits 1 und 5 sind reserviert. Ohne AT und ED ist die Struktur genau 37 Byte lang. Die attestierten Credential-Daten, die bei der Registrierung vorhanden sind, bestehen aus einer 16-Byte-AAGUID, einer 2-Byte-Länge der Credential-ID, der Credential-ID und dem öffentlichen Schlüssel im COSE-Format.

Die Signatur der Assertion deckt authenticatorData ‖ SHA-256(clientDataJSON) ab; die Relying Party muss daher den RP-ID-Hash mit ihrer eigenen RP-ID abgleichen, UP prüfen (und UV, falls verlangt) und den Zähler auswerten. Authenticators ohne Signaturzähler lassen ihn bei null – bei synchronisierten Passkeys ist das die Regel; ein Zähler, der bei einem Authenticator mit Zähler rückwärts läuft, kann auf einen geklonten Schlüssel hindeuten.

Standards und Quellen

Alle Begriffe