Hashes/Krypto
TOTP Generator/Verifier
Zeitbasierte Einmalpasswörter (TOTP, RFC 6238) — den aktuellen Code aus einem Secret generieren und einen eingegebenen Code mit Toleranz für Zeitabweichung prüfen.
------
TOTP (Time-based One-Time Password, RFC 6238) ist ein Zwei-Faktor-Authentifizierungsalgorithmus, der aus einem Geheimnis und der aktuellen Zeit einen Einmalcode erzeugt. Genau das läuft unter der Haube in Google Authenticator, Authy und ähnlichen Apps.
So verwendest du es
- Erzeugen: Füge einen geheimen Schlüssel ein (meist Base32, derselbe, der in einem 2FA-Einrichtungs-QR-Code kodiert ist) — das Tool zeigt den aktuellen 6-stelligen Code und die verbleibende Zeit bis zum Wechsel.
- Prüfen: Gib ein Geheimnis und einen Code aus einer Authenticator-App ein, um zu prüfen, ob sie übereinstimmen.
- Die Prüfung toleriert eine geringe Zeitabweichung — sie akzeptiert einen Code aus einem benachbarten Zeitintervall, nicht nur dem aktuellen.
Typische Anwendungsfälle
- Die eigene 2FA-Implementierung im Backend debuggen — prüfen, ob der Server Codes korrekt erzeugt und akzeptiert.
- Manuell einen Code für ein Konto erzeugen, wenn das Telefon mit der Authenticator-App nicht griffbereit ist.
- Herausfinden, warum der Code einer App vom Server abgelehnt wird (meist liegt es an unsynchronisierten Uhren).
Was du wissen solltest
Ein TOTP-Code ist nur ein kurzes Zeitfenster gültig (meist 30 Sekunden) — dieses Zeitlimit ist der eigentliche Schutz, nicht allein das Geheimnis.
Die Genauigkeit des Codes hängt direkt von der Synchronisation der Geräteuhr ab; eine spürbare Zeitabweichung ist die häufigste Ursache für abgelehnte 2FA-Codes.
Artikel zu diesem Tool: TOTP: wie Einmalcodes in Authenticator-Apps funktionieren
Häufig gestellte Fragen
Warum läuft mein generierter Code so schnell ab?
TOTP-Codes sind zeitbasiert — standardmäßig wechseln sie alle 30 Sekunden, berechnet aus der aktuellen Unix-Zeit und dem gemeinsamen Geheimnis. Dieses kurze Fenster begrenzt, wie lange ein durchgesickerter Code nützlich bleibt.
Was passiert, wenn die Uhr meines Geräts nicht synchron ist?
TOTP setzt voraus, dass beide Seiten sich einigermaßen über die aktuelle Zeit einig sind. Die meisten Authenticator-Apps und Server erlauben eine kleine Toleranz bei der Zeitabweichung (typischerweise ein Zeitschritt), aber größere Abweichungen führen dazu, dass gültige Codes abgelehnt werden.
Wird mein geheimer Schlüssel beim Generieren eines Codes hier irgendwohin gesendet?
Nein. Der TOTP-Code wird vollständig in Ihrem Browser berechnet — der geheime Schlüssel verlässt Ihr Gerät nie.
Schützt TOTP vor Phishing?
Nicht vollständig. Gibt das Opfer Passwort und aktuellen TOTP-Code auf einer gefälschten Website ein, kann der Angreifer beide Werte sofort auf der echten Website verwenden, solange der Code noch gültig ist. Vor diesem Echtzeit-Angriff schützen nur Hardware-Schlüssel nach dem Standard FIDO2/WebAuthn.
Warum akzeptiert der Server auch das vorherige Zeitintervall und nicht nur das aktuelle?
Das gleicht eine kleine Netzwerkverzögerung zwischen der Codeerzeugung auf dem Telefon und dem Moment aus, in dem der Server den Code empfängt und prüft. Ohne diese Toleranz würden legitime Codes gelegentlich wegen einer gewöhnlichen Verzögerung von wenigen Sekunden abgelehnt.