Eine 2FA-Integration testen
Du baust die Zwei-Faktor-Aktivierung: Erzeuge ein Secret, importiere die URI in deine Authenticator-App und prüfe, ob dein Server dieselben Codes akzeptiert.
Gib ein Base32-Secret ein oder erzeuge eines mit 160 Bit, wähle SHA-1, SHA-256 oder SHA-512, 6 oder 8 Stellen und die Periode: Der aktuelle TOTP-Code aktualisiert sich mit Countdown, die otpauth://-URI ist bereit für eine Authenticator-App, und ein Code lässt sich mit einer Toleranz von einer Periode prüfen.
Der gemeinsame Schlüssel unter dem Einrichtungs-QR-Code (Buchstaben A-Z und Ziffern 2-7).
Als QR-Code für Google Authenticator, Microsoft Authenticator, Aegis oder 1Password kodieren.
Dieses Tool berechnet TOTP-Einmalcodes – die Codes, die Google Authenticator, Microsoft Authenticator oder 1Password anzeigen – aus einem Base32-Secret. Es hilft dir, wenn du Zwei-Faktor-Authentifizierung einbaust und deine Implementierung testen willst, oder wenn du als Admin ein Secret prüfen oder eine Enrolment-URI vorbereiten musst.
TOTP (RFC 6238) ist die zeitbasierte Variante von HOTP (RFC 4226). Aus der Zeit wird ein Zähler T = floor(Unix-Zeit / Periode) gebildet, standardmäßig 30 Sekunden, und daraus HMAC(Secret, T) mit SHA-1, SHA-256 oder SHA-512. Die „dynamische Kürzung“ entnimmt dem HMAC 4 Bytes ab einem Offset, den seine letzten 4 Bits festlegen; das Ergebnis modulo 10^6 (oder 10^8) ist der Code. RFC-Beispiel: Mit dem ASCII-Secret `12345678901234567890` (Base32 `GEZDGNBVGY3TQOJQGEZDGNBVGY3TQOJQ`), SHA-1 und dem Zeitpunkt 59 s lautet der 8-stellige Code 94287082.
Das Tool dekodiert das Base32-Secret (oder erzeugt eines mit 160 Bit, also 32 Zeichen, per crypto.getRandomValues), berechnet den aktuellen Code mit Web Crypto und aktualisiert ihn mit einem Countdown bis zur nächsten Periode. Es baut die URI `otpauth://totp/Aussteller:konto?secret=…&issuer=Aussteller&algorithm=SHA1&digits=6&period=30`, die Apps importieren, meist über einen QR-Code. Beim Prüfen vergleicht es deinen Code mit denen der vorherigen, aktuellen und nächsten Periode und fängt so eine leichte Uhrabweichung ab.
Füge ein Base32-Secret ein oder erzeuge eines mit 160 Bit und wähle Algorithmus (SHA-1, SHA-256, SHA-512), Stellenzahl (6 oder 8) und Periode (standardmäßig 30 s).
Der aktuelle Code erscheint mit Countdown; gib Aussteller und Kontonamen ein, um die otpauth://-URI für den Import in eine App zu erhalten.
Tippe einen erhaltenen Code ein: Das Tool zeigt dir, ob er zur aktuellen, vorherigen oder nächsten Periode passt.
Du baust die Zwei-Faktor-Aktivierung: Erzeuge ein Secret, importiere die URI in deine Authenticator-App und prüfe, ob dein Server dieselben Codes akzeptiert.
Vergleiche den erwarteten Code eines Secrets mit dem aus der App des Nutzers, um ein falsches Secret, einen anderen Algorithmus oder eine falsch gehende Uhr zu unterscheiden.
Baue die otpauth://-URI mit richtigem Aussteller und Kontonamen und mach daraus einen QR-Code für das Team, das das Konto registrieren muss.
Meist geht die Uhr auf dem Handy oder dem Server falsch: Schon einige Dutzend Sekunden reichen für einen Periodenwechsel. Danach folgen ein falsch abgetipptes Secret und ein Algorithmus, eine Stellenzahl oder Periode, die nicht zu dem passen, was der Dienst erwartet. Aktiviere die automatische Uhrzeit und vergleiche den Code dieses Tools mit dem der App.
HOTP (RFC 4226) berechnet den Code aus einem Zähler, der bei jeder Nutzung steigt und zwischen Client und Server synchron bleiben muss. TOTP (RFC 6238) ersetzt diesen Zähler durch die Zeit, aufgeteilt in 30-Sekunden-Perioden, sodass der Code von selbst abläuft. Fast alle gängigen 2FA-Apps nutzen TOTP.
Der Dienst zeigt ihn beim Aktivieren der 2FA unter dem QR-Code an, oft als „Einrichtungsschlüssel“ oder „Code manuell eingeben“. Der QR-Code selbst enthält eine otpauth://-URI, deren secret-Parameter genau dieser Base32-Schlüssel ist. Nach Abschluss der Einrichtung zeigen ihn die meisten Dienste nicht mehr an.
Das ist nicht garantiert: Die historische Dokumentation des URI-Formats sagt, dass Google Authenticator algorithm, digits und period ignoriert und dann 6-stellige SHA-1-Codes erzeugt, die nicht passen. Apps wie 1Password oder Authy akzeptieren SHA-256 und SHA-512. Für einen öffentlichen Dienst bleibt 6-stelliges SHA-1 die kompatible Wahl – und im HMAC-Verfahren ist es sicher.
Ein Code gehört zu einer Periode, standardmäßig 30 Sekunden. Viele Server akzeptieren – wie dieses Tool beim Prüfen – auch die vorherige und die nächste Periode, um Latenz und Uhrabweichung auszugleichen. Das ergibt ein effektives Fenster von etwa 90 Sekunden.
Mit dem Secret lassen sich alle künftigen Codes erzeugen: Wer es hat, besitzt deinen zweiten Faktor. Hier läuft die Berechnung nur in deinem Browser mit Web Crypto, und nichts wird übertragen. Füge trotzdem kein Secret eines echten Produktivkontos auf einem geteilten Gerät ein – nimm lieber ein Test-Secret.
Verwandte Werkzeuge
Werkzeuge, die diesem ähnlich sind oder es ergänzen.
Erzeuge sichere Zufallstoken von 8 bis 256 Byte in Hex, Base64 oder Base64URL, mit optionalem Präfix.
Berechne ein HMAC-SHA-1, SHA-256, SHA-384 oder SHA-512 in Hex oder Base64 und prüfe eine Webhook-Signatur.
Erzeuge starke Zufallspasswörter mit 8 bis 128 Zeichen und angezeigter Entropie.
Verstehen Sie, wann Verschlüsselung, Hashing, HMAC oder PBKDF2 für Vertraulichkeit, Integrität, Authentifizierung und Passwörter eingesetzt werden.
Verstehen Sie das Zusammenspiel von OAuth 2.0, PKCE, JWT, JWK und JWKS bei Autorisierung, Tokens, Schlüsseln und Verifizierung.
Lerne, eine CSP schrittweise einzuführen und Direktiven, Report-Only, Nonces sowie typische Fehler zu verstehen.