Alle Tools laufen in deinem Browser — deine Dateien verlassen nie dein Gerät.
All tools154

Entwicklung

TOTP-Code-Generator

Zwei-Faktor-Codes aus einem Base32-Geheimnis, mit Countdown.

Was es macht. TOTP erzeugt aus einem gemeinsamen Geheimnis und der aktuellen Uhrzeit einen sechsstelligen Code, der alle 30 Sekunden wechselt. Dieses Werkzeug rechnet den Code lokal in deinem Browser aus — es ist zum Testen und zur Fehlersuche gedacht, nicht als Ersatz für eine Authenticator-App.
Läuft im BrowserKein UploadKeine AnmeldungFunktioniert offline

So benutzt du TOTP-Code-Generator

  1. Füg das Base32-Geheimnis aus dem Einrichtungsbildschirm des Dienstes ein.
  2. Der aktuelle Code erscheint mit einem Countdown bis zum nächsten.
  3. Ändere Stellenzahl oder Intervall nur, wenn der Dienst etwas Abweichendes vorgibt.

Wofür das gedacht ist — und wofür nicht

Gedacht ist es für Entwicklung und Fehlersuche: eine TOTP-Einrichtung testen, prüfen ob ein Geheimnis richtig übernommen wurde, verstehen warum Codes abgelehnt werden.

Nicht gedacht ist es als dauerhafter zweiter Faktor. Der Sinn von Zwei-Faktor-Authentifizierung liegt darin, dass der zweite Faktor auf einem anderen Gerät liegt als der erste. Wer Passwort und TOTP-Geheimnis im selben Browser hält, hat zwei Faktoren, die zusammen kompromittiert werden — also faktisch einen.

Für den täglichen Gebrauch gehört das Geheimnis in eine Authenticator-App auf dem Telefon oder in einen Passwortmanager auf einem anderen Gerät. Die Wiederherstellungscodes gehören ausgedruckt an einen sicheren Ort, nicht in dieselbe Datei wie das Passwort.

Warum ein Code abgelehnt wird

Drei Ursachen decken nahezu alle Fälle ab.

Die häufigste ist die Uhr. TOTP leitet den Code aus der aktuellen Zeit ab; weicht die Uhr des Geräts um mehr als ein Zeitfenster ab, passt der Code nicht. Server tolerieren meist ein Fenster vor und nach dem aktuellen, also rund anderthalb Minuten. Ein Telefon mit falsch gestellter Zeitzone ist dagegen kein Problem, ein falsch gestellter Zeitpunkt schon.

Die zweite ist ein falsch übertragenes Geheimnis. Base32 verwendet keine 0, 1 und 8, um Verwechslungen mit O, I und B zu vermeiden. Wer abtippt statt zu scannen, produziert genau dort Fehler.

Die dritte sind abweichende Vorgaben: manche Dienste nutzen acht Stellen, ein Intervall von 60 Sekunden oder SHA-256 statt SHA-1. Steht das nicht im QR-Code, muss es von Hand eingestellt werden.

Was im Einrichtungs-QR-Code steht

Der QR-Code enthält keine Grafik, sondern eine Adresse in der Form otpauth://totp/....

Darin stehen der Name des Dienstes, das Konto, das Geheimnis als Base32 und optional die abweichenden Parameter für Stellenzahl, Intervall und Verfahren.

Wer den Code mit einem QR-Leser statt mit einer Authenticator-App scannt, sieht diese Adresse im Klartext — samt Geheimnis. Das ist der Grund, warum ein Screenshot eines Einrichtungs-QR-Codes wie ein Passwort zu behandeln ist. Er in einem Chat oder einer Notiz-App abgelegt hebt die Zwei-Faktor-Sicherung praktisch auf.

Häufige Fragen

Ersetzt das meine Authenticator-App?

Nein. Es ist zum Testen gedacht. Ein zweiter Faktor im selben Browser wie das Passwort ist kein zweiter Faktor.

Warum wird mein Code abgelehnt?

Meist eine falsch gehende Uhr, ein abgetipptes Geheimnis mit Verwechslung, oder abweichende Vorgaben des Dienstes.

Wird mein Geheimnis übertragen?

Nein. Die Berechnung läuft in diesem Tab, überprüfbar im Netzwerk-Tab.

Warum kommen in Base32 keine 0 und 1 vor?

Um Verwechslungen mit O und I beim Abtippen zu vermeiden. Auch die 8 fehlt, wegen der Ähnlichkeit zu B.

Was steht im Einrichtungs-QR-Code?

Eine otpauth-Adresse mit Dienstname, Konto und dem Geheimnis im Klartext. Behandle einen Screenshot davon wie ein Passwort.

Wie lange gilt ein Code?

Standardmäßig 30 Sekunden. Server akzeptieren meist auch das vorherige Fenster.