HOTP und TOTP: Welche Unterschiede gibt es?
HOTP und TOTP sind die beiden wichtigsten Normen für Einmalkennwörter (OTPs, one-time passwords), doch welche Bedeutung haben sie aus sicherheitstechnischer Sicht und unter welchen Umständen sollte man sich für welche Option entscheiden?
Sowohl bei HOTP als auch bei TOTP generiert der Token (also der OTP-Generator) einen numerischen Code, der meist aus 6 oder 8 Ziffern besteht. Die Sicherheit des OTP ist dadurch gegeben, dass sich der Code ständig ändert und nur einmal verwendet werden kann – daher sein Name.
HOTP: ereignisgesteuertes OTP
Bei einem ereignisgesteuerten OTP (auch HOTP genannt: „HMAC-based one-time password“) handelt es sich um den ursprünglichen OTP-Algorithmus, der sich auf zwei Datenarten stützt. Zunächst auf den geheimen Schlüssel, den sogenannten „Seed“, den nur der Token und der Server, der eingesandte OTP-Codes validiert, kennen. Die zweite Datenkomponente ist der mobile Faktor, bei ereignisgesteuerten OTPs handelt es sich dabei um einen Zähler. Der Zähler ist auf dem Token und dem Server gespeichert. Der Zähler des Tokens zählt jedes Mal hoch, wenn der Knopf des Tokens gedrückt wird. Der Zähler auf dem Server hingegen zählt nur hoch, wenn ein OTP erfolgreich validiert wurde.
Zur Berechnung eines OTP übermittelt der Token den HMAC-Algorithmus und verwendet den Token-Seed als Schlüssel. Bei HOTP kommt die Hash-Funktion SHA-1 im HMAC zum Einsatz. Somit entsteht ein 160-Bit-Wert, der dann auf die 6 (oder 8) Dezimalstellen reduziert wird, die auf dem Token angezeigt werden.
TOTP: zeitgesteuertes Einmalkennwort
Zeitgesteuerte OTPs (kurz TOTP für „time-based one-time password“) basieren auf HOTP-Ansätzen, der mobile Faktor ist hier jedoch die verstrichene Zeit, kein Zähler. Bei TOTP kommen Zeiträume zum Einsatz, die sogenannten Zeitschritte, die normalerweise 30 oder 60 Sekunden betragen. Jedes OTP ist also nur für die Dauer eines Zeitschritts gültig.
Vergleich
Mit beiden OTP-Verfahren werden Einmalkennwörter erzeugt, der wesentliche Unterschied besteht jedoch darin, dass jedes OPT bei HOTP so lange gültig ist, bis es verwendet wurde oder bis ein darauffolgendes OTP verwendet wird. Bei HOTP gibt es also eine Auswahl mehrerer Codes für das „nächste OTP“. Grund hierfür ist, dass der Knopf des Tokens gedrückt werden kann – woraufhin der Zähler des Tokens hochzählt –, ohne dass das generierte OTP an den Validierungsserver übermittelt wird. Aus diesem Grund akzeptieren HOTP-Validierungsserver eine größere Auswahl OTPs. Sie akzeptieren genauer gesagt ein OTP, das mit einem Zähler generiert wird, der sich einem bestimmten Rahmen im Vergleich zum zuletzt auf dem Server hinterlegten Zählerwert bewegt. Dieser Rahmen wird als Validierungsfenster bezeichnet. Befindet sich der Token-Zähler außerhalb des vom Server akzeptierten Bereichs, schlägt die Validierung fehl und der Token muss neu synchronisiert werden.
Bei HOTP muss also ein Kompromiss eingegangen werden. Je größer das Validierungsfenster, desto geringer die Wahrscheinlichkeit, dass der Token erneut mit dem Server synchronisiert werden muss, was für den Benutzer immer mit Unannehmlichkeiten verbunden ist. Noch wichtiger jedoch: Je größer das Fenster, desto größer die Wahrscheinlichkeit, dass Unbefugte eines der akzeptierten OTPs durch einen direkten Angriff erraten können.
Im Gegensatz hierzu gibt es beim TOTP immer nur ein gültiges OTP – dasjenige, das für die aktuelle UNIX-Zeit generiert wurde.
Auswahl
Bei der Wahl zwischen HOTP und TOTP sprechen die Schutzaspekte klar für das TOTP. Wichtig ist jedoch, dass der Validierungsserver mit der potenziellen Zeitdrift von TOTP-Token umgehen können muss, um Auswirkungen auf die Benutzer zu minimieren.
Bei TOTP-Token besteht auch eine größere Formfaktorauswahl. Herkömmliche Schlüsselring-OTP-Token werden immer kleiner und Microcosm hat nun die OTP-Karte eingeführt – einen OTP-Token mit EPD-Display im Kreditkartenformat. Karten sind häufig eine praktischere Option, da sie sich bequem im Geldbeutel oder hinten in einer Mobiltelefonhülle transportieren lassen.
Entdecken Sie unser OTP-Angebot hier
HOTP- und TOTP-Normen werden von OATH, der „Initiative for Open Authentication“ (Initiative für offene Authentifizierung) herausgegeben. Alle OTP-Token von Microcosm sind mit den OATH-Vorgaben konform.