Home/ Glossar/ OTP-Generator
Security

OTP-Generator

Der OTP-Generator erzeugt und validiert zeitbasierte Einmalpasswörter (Time-based One-Time Passwords, TOTP) gemäß RFC 6238 – dem Standard, auf dem Google Authenticator, Authy und andere 2FA-Apps basieren. TOTP kombiniert einen geheimen Schlüssel mit dem aktuellen Zeitstempel, um alle 30 Sekunden einen neuen 6- oder 8-stelligen Code zu generieren. Das Tool läuft vollständig im Browser und erfordert keine Serververbindung.

Was ist TOTP (RFC 6238)?

TOTP (Time-based One-Time Password) ist ein Algorithmus zur Erzeugung zeitbasierter Einmalpasswörter, definiert in RFC 6238. Er basiert auf HOTP (HMAC-based OTP, RFC 4226) und erweitert diesen um eine Zeitkomponente. Der aktuelle Zeitstempel wird in 30-Sekunden-Schritte (Time Steps) eingeteilt: T = floor(aktuelle_Unix-Zeit / 30). Aus diesem Zeitschritt und dem gemeinsamen geheimen Schlüssel wird mittels HMAC-SHA1 (standardmäßig, alternativ SHA-256 oder SHA-512) ein Hash berechnet, aus dem ein 6- oder 8-stelliger numerischer Code extrahiert wird. Server und Client teilen denselben geheimen Schlüssel (Shared Secret), der typischerweise als QR-Code bei der Einrichtung übertragen wird.

Wie funktioniert das Tool?

Das Tool nimmt den Base32-kodierten Shared Secret entgegen und berechnet daraus den aktuellen TOTP-Code. Zusätzlich zeigt es den verbleibenden Gültigkeitszeitraum des aktuellen Codes an. Zur Validierung kann ein eingegebener Code gegen den aktuell gültigen sowie die benachbarten Zeitfenster (Window-Toleranz von ±1 Schritt) geprüft werden, um Zeitabweichungen zwischen Client und Server auszugleichen. Das Tool unterstützt die standardmäßige 30-Sekunden-Periode sowie alternative Periodenlängen. Alle Berechnungen erfolgen clientseitig im Browser – der geheime Schlüssel verlässt niemals das Gerät.

Typische Anwendungsfälle

  • Testen von TOTP-Implementierungen in eigenen Anwendungen mit bekannten Testvektoren
  • Generieren von 2FA-Codes für Dienste, wenn das Mobilgerät nicht verfügbar ist
  • Validieren, ob ein eingegebener OTP-Code für einen gegebenen Shared Secret korrekt ist
  • Verstehen des TOTP-Algorithmus und der zeitfensterbasierten Code-Gültigkeit

Schritt-für-Schritt-Anleitung

  1. Schritt 1: Den Base32-kodierten Shared Secret aus der 2FA-Einrichtung eingeben (oder QR-Code-Inhalt analysieren)
  2. Schritt 2: Algorithmus (SHA1/SHA256/SHA512), Codelänge (6 oder 8 Ziffern) und Zeitperiode (30s Standard) prüfen
  3. Schritt 3: Den aktuellen TOTP-Code ablesen und den Countdown bis zum nächsten Code beobachten
  4. Schritt 4: Optional einen Code eingeben und validieren lassen (mit konfigurierbarer Window-Toleranz)

Beispiel

Eingabe
Secret: JBSWY3DPEHPK3PXP (Base32), Algorithmus: SHA1, Periode: 30s, Länge: 6
Ausgabe
Aktueller TOTP-Code: 123456 (gültig noch 18 Sekunden)

Tipps & Hinweise

  • Tipp: Sichere den Shared Secret genauso sorgfältig wie ein Passwort – wer ihn kennt, kann dauerhaft gültige TOTP-Codes generieren.
  • Tipp: Stelle sicher, dass die Systemuhr deines Servers korrekt synchronisiert ist (NTP); Zeitabweichungen von mehr als ±30 Sekunden führen zu Validierungsfehlern.
  • Tipp: Beim Implementieren eines TOTP-Validators immer eine Window-Toleranz von ±1 Zeitschritt erlauben, um Verzögerungen bei der Code-Eingabe abzufangen.

Häufige Fragen

Was ist der Unterschied zwischen TOTP und HOTP?
HOTP (RFC 4226) verwendet einen Zähler als Zeitvariable: Der Code ändert sich nur, wenn eine neue Authentifizierung stattfindet. TOTP (RFC 6238) verwendet den aktuellen Zeitstempel: Der Code ändert sich automatisch alle 30 Sekunden, unabhängig von Authentifizierungsversuchen. TOTP ist daher robuster gegen Replay-Angriffe.
Warum ist mein TOTP-Code falsch, obwohl der Shared Secret stimmt?
Die häufigste Ursache ist eine falsch synchronisierte Systemuhr. TOTP ist sehr zeitempfindlich: Weicht die Uhr um mehr als 30 Sekunden ab, sind die generierten Codes ungültig. Prüfe die NTP-Synchronisation deines Systems. Auch ein falscher Algorithmus (SHA-1 statt SHA-256) oder eine falsche Periodenlänge können die Ursache sein.
Ist TOTP sicherer als SMS-basierte 2FA?
Ja. SMS-basierte 2FA ist anfällig für SIM-Swapping und SS7-Angriffe. TOTP-Codes werden lokal generiert, erfordern kein Mobilfunknetz und können nicht durch Telekommunikationsangriffe abgefangen werden. TOTP gilt als deutlich sicherere Alternative zu SMS-OTP.
OTP-Generator
Erzeuge und validiere zeitbasierte Einmalpasswörter (TOTP) für die Zwei-Faktor-Authentifizierung – RFC 6238 konform, vollständig im Browser.
Tool öffnen