TOTP (Einmalpasswort) Generator

Generiert aus einem Base32-TOTP-Geheimnis dasselbe 6-stellige Einmalpasswort (RFC 6238) wie Google Authenticator und ähnliche Apps – vollständig in Ihrem Browser. Ihr Geheimnis wird niemals übertragen.

Dieses Tool sendet Ihr Geheimnis niemals an einen Server. Die Base32-Dekodierung und die HMAC-Berechnung erfolgen vollständig in Ihrem Browser (Web Crypto API), sodass Sie Authentifizierungsdaten hier bedenkenlos eingeben können.

Über den TOTP-Algorithmus

TOTP (Time-based One-Time Password) ist ein zeitbasierter Einmalpasswort-Algorithmus, der in RFC 6238 definiert ist. Er wandelt ein gemeinsames Geheimnis und die aktuelle Zeit in einen Zähler um, der sich in festen Intervallen erhöht, und leitet daraus mit demselben dynamischen Trunkierungsalgorithmus wie HOTP (RFC 4226) einen numerischen Code ab.

HMAC-Algorithmus Auswahl zwischen SHA-1 (Standard), SHA-256 oder SHA-512
Codelänge 6 Ziffern (dieselbe Standardlänge, die Google Authenticator und die meisten gängigen 2FA-Apps verwenden)
Aktualisierungsintervall Alle 30 Sekunden wird ein neuer Code generiert

Tipps

  • Das Geheimnis ist die Zeichenfolge des „Setup-Schlüssels“, die bei der Ersteinrichtung der Zwei-Faktor-Authentifizierung (2FA) unter dem QR-Code angezeigt wird. Wenn Sie es bereits in einer Authenticator-App auf Ihrem Smartphone hinterlegt haben, können Sie dasselbe Geheimnis hier eingeben, um den Code gegenzuprüfen.
  • Manche Dienste verwenden statt SHA-1 einen anderen Hash-Algorithmus (SHA-256 oder SHA-512). Stimmt der generierte Code nicht mit Ihrer App überein, versuchen Sie, den Algorithmus zu wechseln.
  • Der Code wird automatisch alle 30 Sekunden aktualisiert; ein Fortschrittsbalken zeigt die verbleibende Zeit an. Kopieren Sie einen Code kurz vor Ablauf mit Vorsicht, da er ungültig werden kann, bevor er beim Zieldienst ankommt.
  • Beim Schließen dieses Browser-Tabs wird das Geheimnis vollständig verworfen und nirgendwo gespeichert. Möchten Sie es als Backup aufbewahren, speichern Sie das Geheimnis selbst an einem sicheren Ort, etwa in einem Passwort-Manager.

Häufig gestellte Fragen

Ja. Die Base32-Dekodierung und die HMAC-Berechnung laufen vollständig in Ihrem Browser über die Web Crypto API und werden niemals an einen Server gesendet. Sie können dies selbst überprüfen, indem Sie den Netzwerkverkehr beobachten – das eingegebene Geheimnis wird nie übertragen.

Meist liegt es an einem abweichenden Hash-Algorithmus (die meisten Dienste nutzen SHA-1, manche jedoch SHA-256 oder SHA-512) oder an einer nicht synchronisierten Uhrzeit. Versuchen Sie zunächst, den Algorithmus zu wechseln; stimmt der Code weiterhin nicht überein, prüfen Sie, ob die automatische Zeitsynchronisierung Ihres Geräts aktiviert ist.

TOTP gilt im Allgemeinen als sicherer. SMS-Nachrichten können durch die Übernahme einer Telefonnummer (SIM-Swapping-Betrug) abgefangen werden, während TOTP vollständig auf dem Gerät berechnet wird und gegen diese Art von Angriff nicht anfällig ist.

Die meisten Dienste stellen bei der Ersteinrichtung von 2FA „Wiederherstellungscodes“ aus. Haben Sie das Geheimnis selbst verloren, müssen Sie die Zwei-Faktor-Authentifizierung über das Kontowiederherstellungsverfahren des Dienstes (Identitätsprüfung) neu einrichten.
ツールくん

Übrigens – Warum sich Zwei-Faktor-Codes auf 6 Ziffern eingependelt haben

OATH (die Initiative for Open Authentication), die die TOTP-Spezifikation (RFC 6238) entworfen hat, übernahm einfach den dynamischen Trunkierungsalgorithmus von HOTP (RFC 4226) und überließ die Codelänge der jeweiligen Implementierung. Dass sich sechs Ziffern als De-facto-Industriestandard durchgesetzt haben, liegt vor allem daran, dass Google Authenticator diese Länge in seiner ursprünglichen Implementierung von 2010 verwendete – viele weitere Dienste und Bibliotheken folgten diesem Beispiel.

Sechs Ziffern sind zudem ein idealer Kompromiss: Eine Million möglicher Kombinationen (10^6) machen in Verbindung mit dem kurzen 30-Sekunden-Gültigkeitsfenster Brute-Force-Angriffe praktisch unmöglich, während eine längere Zahl für Menschen unpraktisch zu merken und einzutippen wäre. Dass auch die meisten SMS-Bestätigungscodes 6-stellig sind, ist kein Zufall – die Branche hat sich für diese Art „kurzlebiger, einmal verwendbarer Zifferncode“ auf diese Länge geeinigt.

Der Vorgänger von TOTP, HOTP (RFC 4226, 2005), verwendete einen Zähler, der bei jeder Codeverwendung um eins erhöht werden musste. In der Praxis führte dies häufig zu Synchronisationsproblemen – etwa wenn Nutzer vergaßen, eine Taste zu drücken, oder die Zähler von Gerät und Server auseinanderliefen. Das 2011 standardisierte TOTP ersetzte den Zähler durch die aktuelle Uhrzeit, einen Referenzwert, auf den sich alle einigen können, und vereinfachte den Betrieb dadurch erheblich.