+49 (0) 8171/405-0 info@proSoft.de

TOTP

TOTP (Time-based One-Time Password) ist eine Erweiterung des HMAC-based One-time Password (HOTP).

TOTP generiert alle 30 Sekunden eine neue Zahl. Dazu wird die Anzahl Sekunden zwischen Jetzt und der Unix-Epoche (1. Januar 1970) durch 30 geteilt. Diese Zahl wird dann für den HOTP Algorithmus verwendet.

TOTP ist in RFC 6238 spezifiziert.

TOTP ist der Grundstein der Initiative für Open Authentication (OATH) und wird in einer Reihe von Zwei-Faktor-Authentifizierungssystemen verwendet.

Die Sicherheit und Stärke von TOTP hängt von den Eigenschaften des zugrunde liegenden Bausteins HOTP ab, der eine Konstruktion auf Basis von HMAC mit SHA-1 als Hash-Funktion ist.

Um eine TOTP-Authentifizierung zu erstellen, müssen der Authentifizierte und der Authentifikator sowohl die HOTP-Parameter als auch die folgenden TOTP-Parameter vorab festlegen:
– die Unix-Zeit, ab der mit dem Zählen der Zeitschritte begonnen wird (Standard ist 0).
– ein Intervall, das zur Berechnung des Wertes des Zähler-CTs verwendet wird (Standard ist 30 Sekunden).

Sowohl der Authentifikator als auch der Authentifizierte berechnen den TOTP-Wert, dann prüft der Authentifikator, ob der von der Authentifizierung gelieferte TOTP-Wert mit dem lokal generierten TOTP-Wert übereinstimmt. Einige Authentifikatoren erlauben Werte, die vor oder nach der aktuellen Zeit hätten erzeugt werden sollen, um leichte Taktverschiebungen, Netzwerklatenzen und Benutzerverzögerungen zu berücksichtigen.

Der Hauptunterschied zwischen HOTP und TOTP besteht darin, dass die HOTP-Passwörter für eine unbestimmte Zeit gültig sein können, während sich die TOTP-Passwörter ständig ändern und nur für ein kurzes Zeitfenster gültig sind. Aufgrund dieses Unterschieds wird das TOTP im Allgemeinen als eine sicherere One-Time-Password Lösung angesehen.

Verwandte Begriffe:
  • Time-based One-Time Password
  • Time-based One-Time Passcode