Générateur TOTP / HOTP 2FA
ChiffreGénérez des mots de passe à usage unique basés sur le temps (TOTP) ou un compteur (HOTP) à partir d'un secret Base32 ou d'une URI otpauth://. Compte à rebours en direct et code QR scannable — le tout localement dans votre navigateur.
Les URL distantes ne sont pas récupérées ; collez votre JSON directement.
Scannez avec Google Authenticator, Authy, 1Password ou toute appli TOTP.
Sur cette page
Qu’est-ce qu’un TOTP ?#
Un mot de passe à usage unique fondé sur le temps (TOTP) est le code à 6 chiffres rotatif que votre application d’authentification affiche à côté de chaque compte. En dessous, c’est un HMAC : la clé secrète partagée et la fenêtre de temps courante sont hachées ensemble, et le résultat est tronqué en un court code numérique. Comme le code dépend de l’horloge, il bascule de lui-même toutes les 30 secondes — c’est ce qui rend « quelque chose que vous possédez » (le secret) utilisable comme second facteur sans aucun aller-retour réseau entre votre téléphone et le service.
Cette page est un générateur TOTP et HOTP pleinement fonctionnel. TOTP dérive le code de l’heure courante et se rafraîchit lui-même au fur et à mesure que la période s’écoule ; HOTP le dérive d’un compteur qui avance à chaque utilisation. Vous pouvez saisir une clé Base32 directement, ou coller une URI otpauth:// (la chaîne encodée dans les codes QR que les services vous montrent à l’activation de la 2FA) et faire remplir automatiquement chaque champ. La page émet aussi l’URI otpauth:// canonique et rend un code QR scannable, donc vous pouvez provisionner un nouveau compte dans une application téléphonique directement depuis ici.
Tout s’exécute localement : la clé ne quitte jamais la page, et il n’y a aucun appel en ligne vers un service d’authentification.
Mode d’emploi#
- Choisissez un mode : TOTP (fondé sur le temps, se rafraîchit seul) ou HOTP (fondé sur un compteur, avance manuellement).
- Fournissez le secret. Soit collez le Secret (Base32) dans le champ secret, soit collez une URI otpauth:// dans le champ URI pour remplir automatiquement tous les paramètres d’un coup.
- Renseignez l’Émetteur et le libellé de Compte (ils n’affectent que la façon dont l’entrée est nommée dans une application d’authentification, pas le code lui-même).
- Choisissez l’algorithme (SHA-1 / SHA-256 / SHA-512 — SHA-1 est le défaut universel), les chiffres (6 / 7 / 8 — 6 est standard), et — pour TOTP — la période en secondes (défaut 30). Pour HOTP, réglez le compteur et cliquez sur Code suivant pour l’avancer après chaque utilisation.
- Cliquez sur Générer. Le code apparaît en grand avec un anneau de compte à rebours affichant les secondes restantes dans la période courante ; en dessous, l’URI
otpauth://et un code QR scannable.
Principales fonctionnalités#
- TOTP et HOTP au même endroit. Basculez entre la variante temporelle et la variante à compteur sans ressaisir le secret.
- Gestion Base32 tolérante. Les espaces, tirets, minuscules et caractères parasites sont nettoyés automatiquement, donc les clés copiées depuis des formats malcommodes fonctionnent encore.
- Import et export d’URI. Collez une URI
otpauth://pour peupler chaque champ, ou copiez l’URI générée pour provisionner un nouveau compte ailleurs. - Code QR en direct. Rendu dans la page depuis l’URI, prêt à scanner dans n’importe quelle application d’authentification.
- Anneau de compte à rebours. Un décompte visuel jusqu’au prochain basculement, afin que vous sachiez si le code que vous allez saisir a encore assez de temps devant lui.
- Zéro téléversement. Génération, analyse et rendu QR sont tous locaux ; le secret n’est jamais transmis.
Exemple détaillé#
La graine de référence RFC 6238 est la chaîne ASCII 12345678901234567890, qui en Base32 vaut GEZDGNBVGY3TQOJQGEZDGNBVGY3TQOJQ. Saisissez ce secret, réglez chiffres 8 et période 30, et les codes correspondent exactement aux vecteurs de test publiés :
- SHA-1 au temps = 59 secondes après l’epoch →
94287082 - SHA-256 au même instant →
46119246 - SHA-512 au même instant →
90693936
Au temps = 1111111109 (une date très dans le futur), SHA-1 produit 07081804. Ce sont les mêmes valeurs de référence que la propre suite de tests de cet outil vérifie, donc elles constituent un moyen fiable de confirmer qu’un générateur est correct. Pour la 2FA de tous les jours, les services utilisent 6 chiffres, SHA-1 et une période de 30 secondes — rebasculez les chiffres sur 6 et le même secret produit le code rotatif qu’afficherait une application d’authentification.
FAQ#
Mon code ne correspond pas à celui de mon application téléphonique. Qu’est-ce qui cloche ?#
Presque toujours le secret ou l’horloge. Confirmez d’abord que la clé Base32 est identique — copiez-la à nouveau depuis la page de configuration du service, puisqu’un seul mauvais caractère change tout. Vérifiez ensuite les paramètres : la plupart des services utilisent SHA-1, 6 chiffres, période de 30 secondes ; si le service utilise SHA-256 ou 8 chiffres et que vous avez SHA-1 / 6 sélectionnés, les codes différeront. Enfin, assurez-vous que l’horloge de votre appareil est correcte — TOTP tolère un léger décalage, mais plus de 30 secondes environ la cassent.
Quelle est la différence entre TOTP et HOTP ?#
TOTP utilise l’heure courante comme facteur mouvant, donc il avance automatiquement à chaque période. HOTP utilise un simple compteur qui s’incrémente à chaque consommation de code, donc les deux côtés doivent rester synchronisés sur le nombre de codes utilisés. TOTP est ce qu’utilisent aujourd’hui presque tous les flux grand public de 2FA, parce qu’il ne nécessite aucune synchronisation au-delà de l’horloge.
Est-il sûr de mettre ma clé secrète dans une page web ?#
La clé ne quitte jamais cette page — génération, analyse et rendu QR s’exécutent tous localement dans votre navigateur, sans appel réseau. Cela dit, pour une clé secrète 2FA de production que vous contrôlez, la pratique la plus sûre consiste à la générer et la stocker dans un environnement en lequel vous avez une confiance aveugle plutôt que dans n’importe quelle page web, et à conserver les codes de récupération que le service vous a remis.
Pourquoi coller mon URI otpauth:// remplit-il tout ?#
Cette URI est le format standard qu’échangent les applications d’authentification : elle encode le type, l’émetteur, le compte, le secret, l’algorithme, les chiffres et la période (ou le compteur) dans une seule chaîne. L’analyseur extrait ces champs et peuple le formulaire, ce qui est exactement ce qui se passe quand vous scannez un code QR avec votre téléphone — le QR n’est que cette URI rendue sous forme d’image.