# Décodeur d’assertion WebAuthn Passkey et débogueur de challenge

Décode clientDataJSON, authenticatorData, flags, rpIdHash et signCount ; vérifie ES256, RS256 ou Ed25519 si une clé publique est fournie.

> Page canonique: https://elysiatools.com/fr/tools/webauthn-passkey-assertion-decoder-challenge-debugger

- **Catégorie:** Cryptography

- **Mots-clés:** WebAuthn, Passkey, FIDO2, CBOR, COSE, assertion, challenge, signature

## Présentation

Ce décodeur d’assertion WebAuthn Passkey analyse clientDataJSON et authenticatorData pour afficher le challenge, l’origine, le rpIdHash, les flags et le signCount. Il peut aussi vérifier une signature ES256, RS256 ou Ed25519 lorsqu’une clé publique COSE est fournie.

## Entrées

- **clientDataJSON** (textarea): {"type":"webauthn.get","challenge":"Y2hhbGxlbmdl","origin":"https://example.com"}
- **Encodage de clientData** (select)
- **authenticatorData** (textarea): a379a6f6eeafb9a55e378c118034e2751e682fab9f2d30ab13d2125586ce19478500000002
- **Signature** (textarea): 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
- **Encodage binaire** (select)
- **Challenge attendu (base64url, facultatif)** (text): Y2hhbGxlbmdl
- **Origin attendu (facultatif)** (text): https://example.com
- **RP ID (facultatif)** (text): example.com
- **signCount précédent (facultatif)** (number)
- **Clé publique COSE (facultatif)** (textarea): Paste a CBOR COSE_Key or numeric-key JSON object to verify the signature.
- **Encodage de clé COSE** (select)

## Quand l'utiliser

- Diagnostiquer une assertion WebAuthn dont le challenge, l’origine ou le RP ID semble incorrect.
- Inspecter les flags, le rpIdHash et le signCount contenus dans authenticatorData.
- Vérifier une signature d’assertion avec une clé publique COSE compatible.

## Fonctionnement

- Saisissez clientDataJSON au format JSON ou base64url.
- Indiquez authenticatorData et la signature en hexadécimal ou en base64url.
- Ajoutez éventuellement le challenge attendu, l’origine attendue, le RP ID et le signCount précédent pour effectuer les contrôles correspondants.
- Fournissez si nécessaire une clé publique COSE en CBOR encodé ou au format JSON afin de vérifier la signature.

## Cas d'usage

- Débogage d’une connexion Passkey ou FIDO2 qui échoue entre le navigateur et le serveur.
- Contrôle de la correspondance entre le challenge envoyé, l’origine et le RP ID.
- Analyse du compteur signCount et vérification ponctuelle d’une signature d’assertion.

## Questions fréquentes

### Quelles données sont décodées ?

L’outil décode clientDataJSON, authenticatorData, les flags, le rpIdHash et le signCount.

### La signature est-elle toujours vérifiée ?

Non. Elle est vérifiée uniquement si une clé publique COSE est fournie.

### Quels algorithmes de signature sont pris en charge ?

La vérification prend en charge ES256, RS256 et Ed25519 avec une clé publique fournie.

### Quels encodages binaires puis-je utiliser ?

authenticatorData et la signature acceptent l’hexadécimal ou le base64url.

### À quoi sert le challenge attendu ?

Il permet de comparer le challenge de clientDataJSON avec celui attendu par le serveur.

## Outils associés

- [Inspecteur et Vérificateur JWT](https://elysiatools.com/fr/tools/jwt-inspector-verifier): Décode l’en-tête/le payload d’un JWT avec coloration, diagnostique les claims standards, vérifie la signature avec des clés HS*/RS*/PS*/ES*/EdDSA et propose une démo de falsification
- [Comparateur d’algorithmes de hachage](https://elysiatools.com/fr/tools/hash-algorithm-comparator): Hache la même entrée avec MD5, SHA-1, SHA-256, SHA-512, BLAKE2b et BLAKE3 et les compare : longueur, digest hex/Base64, statut de sécurité (cassé/moderne) et benchmark de vitesse relatif. Idéal pour l’enseignement, le choix d’algorithme ou la vérification de checksums.
- [Decodeur de traces distribuees et waterfall](https://elysiatools.com/fr/tools/distributed-trace-decoder-waterfall-visualizer): Analyse des traces JSON Jaeger, Zipkin ou OpenTelemetry et affiche spans, latence et erreurs en waterfall
- [Générateur et Analyseur JWK](https://elysiatools.com/fr/tools/jwk-generator): Génère des JSON Web Keys (JWK) pour RSA, EC (P-256/P-384/P-521/secp256k1) et OKP (Ed25519/Ed448/X25519/X448), ou analyse un JWK existant pour inspecter ses paramètres, empreinte et métadonnées
- [Auditeur de dépendances package.json](https://elysiatools.com/fr/tools/package-json-dependency-auditor): Audite un package.json pour l’hygiène des dépendances et la qualité des plages de versions, et peut inspecter l’arbre transitif depuis package-lock.json ou yarn.lock. Signale les doublons, wildcard/pré-version, clés non triées, métadonnées manquantes et dépendances runtime/dev mal classées.
- [Décodeur de champs binaires Snowflake / Discord](https://elysiatools.com/fr/tools/snowflake-discord-id-bit-decoder): Analyse les identifiants Snowflake 64 bits sans perte, extrait timestamp, worker, process, sequence et estime le shard Discord.
- [Déchiffreur de Champs Excel](https://elysiatools.com/fr/tools/excel-field-decryptor): Déchiffrer des champs spécifiques dans les fichiers Excel en utilisant diverses méthodes de déchiffrement pour restaurer les informations cryptées
- [Table Markdown vers CSV, JSON et schéma à types inférés](https://elysiatools.com/fr/tools/markdown-table-to-csv-json-schema): Convertit un tableau Markdown à barres en CSV, lignes JSON ou JSON Schema inféré avec diagnostics d’alignement et de nullité

## Exemples

- [Exemples Avancés d'Application Grafana](https://elysiatools.com/fr/samples/grafana-samples): Exemples complets de Grafana couvrant le design avancé de tableaux de bord, la configuration d'alertes, l'intégration de sources de données et le développement de plugins
- [Exemples de Codes QR](https://elysiatools.com/fr/samples/qrcode-samples): Images de codes QR d'exemple pour tester les outils de lecture et de génération de codes QR
- [Exemples D3.js Data Visualization](https://elysiatools.com/fr/samples/d3js-data-visualization): Exemples complets de visualisation de données D3.js incluant graphiques, cartes, animations et visualisations interactives
- [Exemples Toolchain JavaScript Rome](https://elysiatools.com/fr/samples/rome): Exemples de toolchain JavaScript Rome incluant configuration, linting, formatting, bundling et gestion de projets
