Zum Hauptinhalt springen

5.2. Validation and Time-Step Size (Validierung und Zeitschrittgröße)

5.2. Validation and Time-Step Size (Validierung und Zeitschrittgröße)

Ein innerhalb desselben Zeitschritts generiertes OTP wird identisch sein. Wenn ein OTP bei einem Validierungssystem empfangen wird, kennt es den genauen Zeitstempel eines Clients nicht, als ein OTP generiert wurde. Das Validierungssystem kann typischerweise den Zeitstempel verwenden, wenn ein OTP für den OTP-Vergleich empfangen wird. Aufgrund der Netzwerklatenz kann die Lücke (gemessen durch T, d.h. die Anzahl der Zeitschritte seit T0) zwischen der Zeit, zu der das OTP generiert wurde, und der Zeit, zu der das OTP beim empfangenden System ankommt, groß sein. Die Empfangszeit beim Validierungssystem und die tatsächliche OTP-Generierung fallen möglicherweise nicht in dasselbe Zeitschrittfenster, das dasselbe OTP erzeugt hat. Wenn ein OTP am Ende eines Zeitschrittfensters generiert wird, fällt die Empfangszeit höchstwahrscheinlich in das nächste Zeitschrittfenster. Ein Validierungssystem SOLLTE typischerweise eine Richtlinie für ein akzeptables OTP-Übertragungsverzögerungsfenster für die Validierung festlegen. Das Validierungssystem sollte OTPs nicht nur mit dem Empfangszeitstempel vergleichen, sondern auch mit den vergangenen Zeitstempeln, die innerhalb der Übertragungsverzögerung liegen. Ein größeres akzeptables Verzögerungsfenster würde ein größeres Fenster für Angriffe offenlegen. Wir EMPFEHLEN, dass höchstens ein Zeitschritt als Netzwerkverzögerung zugelassen wird.

Die Zeitschrittgröße hat Auswirkungen sowohl auf die Sicherheit als auch auf die Benutzerfreundlichkeit. Eine größere Zeitschrittgröße bedeutet ein größeres Gültigkeitsfenster für ein OTP, um von einem Validierungssystem akzeptiert zu werden. Die Verwendung einer größeren Zeitschrittgröße hat folgende Auswirkungen:

Erstens offenbart eine größere Zeitschrittgröße ein größeres Angriffsfenster. Wenn ein OTP generiert und einem Dritten ausgesetzt wird, bevor es verbraucht wird, kann der Dritte das OTP innerhalb des Zeitschrittfensters verbrauchen.

Wir EMPFEHLEN eine Standard-Zeitschrittgröße von 30 Sekunden. Dieser Standardwert von 30 Sekunden wird als Ausgleich zwischen Sicherheit und Benutzerfreundlichkeit gewählt.

Zweitens muss das nächste unterschiedliche OTP im nächsten Zeitschrittfenster generiert werden. Ein Benutzer muss warten, bis sich die Uhr vom letzten Einreichen zum nächsten Zeitschrittfenster bewegt. Die Wartezeit ist möglicherweise nicht genau die Länge des Zeitschritts, abhängig davon, wann das letzte OTP generiert wurde. Wenn beispielsweise das letzte OTP am Halbzeitpunkt in einem Zeitschrittfenster generiert wurde, beträgt die Wartezeit für das nächste OTP die Hälfte der Länge des Zeitschritts. Im Allgemeinen bedeutet ein größeres Zeitschrittfenster eine längere Wartezeit für einen Benutzer, um das nächste gültige OTP nach der letzten erfolgreichen OTP-Validierung zu erhalten. Ein zu großes Fenster (z.B. 10 Minuten) wird höchstwahrscheinlich nicht für typische Internet-Login-Anwendungsfälle geeignet sein; ein Benutzer kann möglicherweise das nächste OTP nicht innerhalb von 10 Minuten erhalten und muss sich daher in 10 Minuten wieder bei derselben Site anmelden.

Beachten Sie, dass ein Beweiser dasselbe OTP innerhalb eines gegebenen Zeitschrittfensters mehrmals an einen Verifizierer senden kann. Der Verifizierer DARF NICHT den zweiten Versuch des OTP akzeptieren, nachdem die erfolgreiche Validierung für das erste OTP ausgestellt wurde, was eine einmalige Verwendung eines OTP sicherstellt.