HMAC-basierter One-Time-Password-Algorithmus (HOTP) ist ein One-Time-Password-Algorithmus (OTP), der auf -Hash-basierten Nachrichtenauthentifizierungscodes (HMAC) basiert. Es ist ein Eckpfeiler der Initiative für offene Authentifizierung (OATH).
HOTP wurde im Dezember 2005 als informativer IETF RFC 4226 veröffentlicht, der den Algorithmus zusammen mit einer Java-Implementierung dokumentiert. Seitdem wurde der Algorithmus von vielen Unternehmen weltweit übernommen (siehe unten). Der HOTP-Algorithmus ist ein frei verfügbarer offener Standard.
Algorithmus [ edit ]
Der HOTP-Algorithmus bietet eine Methode zur Authentifizierung durch symmetrische Erzeugung von für Menschen lesbaren Passwörtern oder -Werten die jeweils nur für eines verwendet werden Authentifizierungsversuch Die einmalige Eigenschaft führt direkt zur einmaligen Verwendung jedes Zählerwerts.
Parteien, die HOTP verwenden wollen, müssen einige Parameter festlegen. In der Regel werden diese vom Authentifikator angegeben und entweder vom Authentifizierten akzeptiert oder nicht:
- Eine kryptographische Hashmethode, H (Standardwert ist SHA-1)
- Ein geheimer Schlüssel, K der eine beliebige Byte-Zeichenfolge ist und privat bleiben muss
- A HOTP Wertlänge, d (6–10, Standardeinstellung ist 6 und 6–8 wird empfohlen)
Beide Parteien berechnen den Wert von HOTP dann überprüft der Authentifikator seinen Wert lokal generierter Wert gegen den von der authentifizierten angegebenen Wert.
Der Authentifikator und der Authentifizierte erhöhen den Zähler unabhängig voneinander, wobei letzterer vor dem ersteren ansteigen kann, weshalb ein Resynchronisationsprotokoll sinnvoll ist. RFC 4426 erfordert dies eigentlich nicht, gibt jedoch eine Empfehlung ab. Dies hat einfach den Authentifikator wiederholt vor seinem Zähler durch ein Fenster der Größe, wiederholt, die Verifizierung zu versuchen. Der Zähler des Authentifikators fährt mit dem Wert fort, bei dem die Überprüfung erfolgreich ist, und erfordert keine Aktionen durch den Authentifizierten.
Es wird die Empfehlung abgegeben, dass eine dauerhafte Drosselung von HOTP durchgeführt wird, um ihre relativ geringe Größe und damit die Anfälligkeit für Brute-Force-Angriffe zu beheben. Es wird empfohlen, die Verifizierung nach einer kleinen Anzahl von fehlgeschlagenen Versuchen zu sperren oder für jeden fehlgeschlagenen Versuch eine zusätzliche (linear ansteigende) Verzögerung zu erzielen.
6-stellige Codes werden üblicherweise von proprietären Hardware-Token verschiedener Hersteller bereitgestellt. Die Verkürzung extrahiert 31 Bits oder ≈ 9,3 Dezimalstellen, was höchstens d bedeutet ] kann 10 sein, wobei die zehnte Stelle weniger zusätzliche Abweichungen bietet. (Hier nimmt die letzte 0,3-Ziffer die Werte 0, 1 und 2 an.)
Bidirektionale Authentifizierung [ edit ]
Nach der Verifizierung kann sich der Authentifikator authentifizieren, indem er einfach den nächsten Wert für HOTP generiert, ihn zurückgibt und anschließend die authentifizierte Dose Erzeugen Sie ihren eigenen HOTP -Wert, um ihn zu überprüfen. Beachten Sie, dass die Zähler an diesem Punkt des Prozesses garantiert synchronisiert werden.
HOTP Wert [ edit ]
Der HOTP -Wert ist der von Menschen lesbare Entwurfsausgang a d - Dezimalzahl (ohne Auslassung führender Nullen):
- HOTP Wert = HOTP ( K C ) mod 10 d
d , der Wert ist die d niedrigstwertige Basis-10-Stelle von HOTP.
HOTP ist eine Kürzung des Hash-basierten Nachrichtenauthentifizierungscodes (HMAC) des Zählers, C (unter dem Schlüssel K und hash) Funktion, H).
- HOTP ( K C ) = abgeschnitten (HMAC H (19459005) K C ]))
Truncation nimmt zuerst die 4 niedrigstwertigen Bits von MAC und verwendet sie als Offset, i .
- verkürzt ( MAC ) = Auszug ( MAC MAC [(19 × 8) + 4:(19 × 8) + 7] × 8)
Dieser Index i wird zur Auswahl verwendet 31 Bits von MAC beginnend bei Bit i + 1 .
- Auszug ( MAC i ) = MAC [ i + 1: i + (4 × 8) - 1]
Beachten Sie, dass 31 Bits ein einzelnes Bit kurz vor einem 4-Byte-Wort sind. Somit kann der Wert in ein solches Wort eingefügt werden, ohne das Vorzeichenbit (das höchstwertige Bit) zu verwenden. Dies geschieht, um die modulare Arithmetik mit negativen Zahlen definitiv zu vermeiden, da dies viele unterschiedliche Definitionen und Implementierungen hat. [1]
Sowohl Hardware- als auch Software-Token sind von verschiedenen Herstellern erhältlich. Einige davon finden Sie unten. Hardware-Token, die OATH HOTP implementieren, sind auf der Grundlage proprietärer Algorithmen in der Regel deutlich günstiger als ihre Mitbewerber. [2] Ab 2010 können OATH HOTP-Hardware-Token zu einem geringen Preis erworben werden. [3] Einige Produkte können auch für starke Passwörter verwendet werden als OATH HOTP. [4]
Software-Token sind für (fast) alle wichtigen Mobil- / Smartphone-Plattformen verfügbar (J2ME, [5] Android, [6][7] iPhone, [8] BlackBerry, [9] ] Maemo, [10] MacOS, [11] und Windows Mobile [9]).
Empfang [ edit ]
Obwohl der Empfang einiger Computerpresse in den Jahren 2004 und 2005 negativ war, [12][13][14] nachdem die IETF HOTP im Dezember 2005 als RFC 4226 angenommen hatte, Verschiedene Hersteller begannen, HOTP-kompatible Token und / oder ganze Authentifizierungslösungen zu produzieren.
Laut einem von der Burton Group (einer Abteilung von Gartner, Inc.) im Jahr 2010 veröffentlichten Vortrag über eine starke Authentifizierung (mit dem Titel "Road Map: Ersetzen von Passwörtern durch OTP-Authentifizierung"), "erwartet Gartner, dass der OTP-Formfaktor der Hardware eine Rolle spielt weiterhin ein bescheidenes Wachstum zu verzeichnen, während Smartphone-OTPs mit der Zeit wachsen und zur Standard-Hardware-Plattform werden. " [ edit ]
Referenzen [ edit ]
- ^ Frank, Hoornaert; David, Naccache; Mihir, Bellare; Ohad, Ranen. Msgstr "HOTP: Ein HMAC - basierter Algorithmus für Einmalpasswörter". tools.ietf.org .
- ^ a b Diodati, Mark (2010). Msgstr "Roadmap: Kennwörter durch OTP - Authentifizierung ersetzen". Burton Group .
Gartner erwartet, dass der Hardware-OTP-Formfaktor weiterhin leicht wächst, während Smartphone-OTPs mit der Zeit wachsen und zur Standard-Hardwareplattform werden. ... Wenn die Organisation keine umfassende Plattformunterstützung benötigt, ist die auf OATH basierende Technologie wahrscheinlich eine kostengünstigere Wahl.
- ^ "Security Authentication Tokens - Entrust". Entrust . 2011.
Der Entrust IdentityGuard Mini Token ist mit einem Preis von 5 US-Dollar pro Token belegt und zeigt, dass eine sichere, zuverlässige Hardware-Authentifizierung zu einem attraktiven Preis möglich ist. ... Unterstützung von OATH- und DES / 3DES-Algorithmen
- ^ "Kennwort-Krippentoken - Intelligente Krippe". Intelligente Krippe . 2013.
Sie können ein Token erhalten, das 4 aktualisierbare Passwörter und 8-stellige OATH HOTP-Codes zum Preis von £ 35 ohne Zeichenfolgen eingibt.
- ^ "DS3 startet OathToken Midlet Application". Datensicherheitssystemlösungen . 2006-02-24. Aus dem Original am 29. Dezember 2013 archiviert.
Singapur, Freitag, 24. Februar 2006 - Data Security Systems Solutions gibt den Start der OathToken Midlet-Anwendung bekannt, einer Erweiterung des DS3-Flaggschiffprodukts - Authentication Server.
- ^ [19659068] "Android Token". diamondz ... AT googlemail.com (keine vollständige Adresse, keine besseren Angaben zum Autor wurden gefunden) . 2009.
Android Token ist ein Projekt zur Erstellung von OATH-Softwaretoken für die Android-Plattform. Umwandlung eines Mobiltelefons in ein One Time Password (OTP) -Erstellungsgerät, das anstelle von Hardware-Token verwendet werden kann. ... Das Projekt unterstützt sowohl die HOTP- (Event Tokens) als auch die TOTP-Spezifikation (Time Tokens). ... Codelizenz: GNU GPL v3
- ^ "StrongAuth". StrongAuth . 2010. Archiviert vom Original am 2010-05-18.
Zeitbasierter einmaliger Passcode-Generator auf Basis von HOTP (RFC 4226).
- Cobbs, Archie L. (2010). "OATH Token". Archie L. Cobbs .
OATH Token ist ein kostenloses und quelloffenes Software-Token für die Zwei-Faktor-Authentifizierung auf dem iPhone. OATH Token implementiert den RFC 4226 HOTP / OATH-Algorithmusstandard und ist nicht an proprietäre Serversoftware gebunden.
- a ] "ActivIdentity Soft Token". ActivIdentity . 2010. Aus dem Original am 2010-09-17 archiviert.
Alle ActivIdentity-Soft-Token unterstützen den HMAC-basierten One-Time-Password (HOTP) -Algorithmus der Initiative Für Offene Authentifizierung (OATH). ... ActivIdentity Mobile Soft Tokens sind auf führenden Betriebssystemen für Mobiltelefone verfügbar, darunter BlackBerry®, Apple® iPhone®, Windows Mobile und viele andere Java 2-Plattform-, Micro Edition (J2ME) -fähige Geräte.
- ^ Whitbeck , Sean (2011). "OTP Generator für N900". Sean Whitbeck .
OTP-Generator für Maemo auf dem Nokia N900. Unterstützt OATH-Token (HOTP, TOTP) sowie den Mobile-OTP-Algorithmus.
- ^ "SecuriToken". Feel Good Software . Aus dem Original am 25. April 2012 archiviert.
SecuriToken ist eine RFC-kompatible Anwendung zum Erstellen und Verwalten mehrerer Software-Token für die OS X-Plattform. Verwandeln Sie Ihren Mac in ein One Time Password (OTP) -Erstellungsgerät, das anstelle von Hardware-Token verwendet werden kann.
- ^ Kearns, Dave (2004-12-06). "Tiefer in OATH zu graben sieht nicht so gut aus". Network World .
Es kann sein, dass OATH irgendwann etwas bedeuten wird, aber bisher scheint es für VeriSign ein Verfolger zu sein, und das ist kein Zug, auf den wir gedankenlos aufspringen sollten.
- ^ Willoughby, Mark -03-21). Msgstr "Keine Vereinbarung über die Eid - Authentifizierung". Computerworld .
- ^ Kaliski, Burt (2005-05-19). "Algorithmus-Beweglichkeit und OATH". Computerworld .
Dennoch gibt es immer noch einen guten Grund zu fragen, ob HOTP als Standardalgorithmus für die OTP-Generierung geeignet ist und, ob überhaupt ein solcher Standardalgorithmus überhaupt notwendig ist.
No comments:
Post a Comment