Mode d'emploi
- Saisissez le secret de la page de double authentification du service dans le champ, ou collez le texte otpauth:// que contient son QR code. Appuyez sur Afficher pour vérifier ce que vous avez saisi.
- Choisissez le Hachage, les Chiffres et la Période que nomme le service. Beaucoup de services utilisent les valeurs par défaut du format d'URI de clé : SHA-1, 6 chiffres et 30 secondes.
- Pour un service fondé sur un compteur, choisissez Fondé sur un compteur (HOTP) et saisissez le compteur ; Compteur + 1 le fait avancer.
- Saisissez le Code actuel avant que le Temps restant n'expire, et vérifiez les codes Précédent et Suivant si l'horloge de votre appareil est un peu décalée.
Comment un code est fabriqué
HOTP (RFC 4226) prend la clé secrète et un compteur, calcule un HMAC du compteur avec le hachage, et en prend quatre octets (troncature dynamique). Le nombre que donnent ces octets, modulo 10 puissance le nombre de chiffres, est le code.
TOTP (RFC 6238) est HOTP avec un compteur tiré du temps : le temps Unix en secondes, divisé par la période et arrondi par défaut. Un nouveau code commence à chaque période, si bien que les deux côtés ont besoin d'une horloge exacte.
TOTP = HOTP(clé, plancher(temps Unix / période)) ; HOTP = troncature(HMAC(clé, compteur)) modulo 10^chiffres
Secrets et URI otpauth://
Le secret est un texte Base32 (RFC 4648) : les lettres A à Z et les chiffres 2 à 7. Les espaces sont ignorés, et le remplissage peut être omis. Un secret qui contient un caractère hors de cet ensemble, ou une longueur impossible, est refusé.
Un URI otpauth:// (le format d'URI de clé de Google) contient le type, l'étiquette, le secret, et l'émetteur, l'algorithme, les chiffres, la période et le compteur facultatifs. Les réglages absents prennent les valeurs par défaut du format : SHA1, 6 chiffres, 30 secondes et compteur 0.
Comment la page a été vérifiée
Le code est testé avec les vecteurs de test de la RFC 4226, annexe D (compteurs de 0 à 9), et de la RFC 6238, annexe B (six fois, pour SHA-1, SHA-256 et SHA-512 avec huit chiffres). Le HMAC est calculé par le SubtleCrypto de votre navigateur.
Exemple détaillé : le secret de test de la RFC 6238
Le secret de test de la RFC est le texte 12345678901234567890, qui s'écrit en Base32 GEZDGNBVGY3TQOJQGEZDGNBVGY3TQOJQ. Au temps Unix 59, avec une période de 30 secondes, l'étape 1 de TOTP donne le code à huit chiffres 94287082 pour SHA-1.
Avec six chiffres, la même étape donne 287082, le code du compteur 1 de la RFC 4226 : ce sont les six derniers chiffres de la valeur à huit chiffres.
Questions fréquentes
Le secret ou le code sont-ils envoyés à un serveur ?
Non. Le code est calculé dans votre navigateur, et la page n'effectue aucune requête qui contienne le secret ou le code. Rien n'est stocké, et un rechargement efface les deux.
Dois-je coller ici le secret de mon vrai compte ?
Seulement sur une page en laquelle vous avez confiance, et seulement si personne d'autre ne peut voir votre écran. L'application d'authentification est le lieu normal pour un vrai compte, car elle garde le secret pour l'usage quotidien ; cette page convient à vos propres outils et aux codes dont vous avez besoin une fois.
Pourquoi le code change-t-il toutes les 30 secondes ?
Un code fondé sur le temps (TOTP) utilise le nombre de périodes depuis l'époque Unix : un nouveau code commence donc à chaque période. Le compte à rebours indique combien de temps le code actuel dure.
Pourquoi mon code ne correspond-il pas à celui de l'application du service ?
Vérifiez le secret (en Base32 seulement), le hachage, les chiffres et la période, que nomme le service ; puis vérifiez que l'horloge de votre appareil est juste, car un code fondé sur le temps en dépend. Les codes précédent et suivant aident à repérer un petit écart d'horloge.
Quel hachage choisir ?
Choisissez celui que déclare le service. SHA-1 est la valeur par défaut de HOTP selon la RFC 4226 et du format otpauth ; la RFC 6238 autorise aussi SHA-256 et SHA-512 pour TOTP.
Quelle est la différence entre TOTP et HOTP ?
TOTP utilise le temps : le code change donc à chaque période. HOTP utilise un compteur qui avance à chaque utilisation : le code reste le même jusqu'à ce que le compteur change.
À quoi sert le texte otpauth:// ?
Il transporte les réglages d'une clé de double authentification dans le format d'URI de clé, en général dans un QR code. Le coller ici remplit le secret, le hachage, les chiffres, la période et le compteur.
Sources
- IETF (en anglais) : RFC 4226, HOTP, HMAC-Based One-Time Password Algorithm
- IETF (en anglais) : RFC 6238, TOTP, Time-Based One-Time Password Algorithm
- IETF (en anglais) : RFC 4648, The Base16, Base32, and Base64 Data Encodings
- Google (en anglais) : Authenticator, Key Uri Format
- MDN Web Docs (en anglais) : SubtleCrypto.sign()
Chiffres et texte vérifiés pour la dernière fois le mardi 10 novembre 2026.