Einmaliges Passwort
Ein Einmalpasswort , im Akronym OTP , (auf Italienisch „Passwort (gültig) einmal“) ist ein Passwort , das nur für eine einzige Anmeldesitzung oder eine Transaktion gültig ist . Aus diesem Grund wird das OTP auch One -Time-Password [1] oder One- Time-Password genannt . [2]
Das OTP vermeidet eine Reihe von Mängeln, die mit der Verwendung des herkömmlichen (statischen) Passworts verbunden sind. Das wichtigste Problem, das OTP löst, ist, dass es im Gegensatz zum statischen Passwort nicht anfällig für Replikationsangriffe ist . Das bedeutet, wenn es einem potenziellen Eindringling gelingt, ein OTP abzufangen, das bereits für den Zugriff auf einen Dienst oder die Ausführung einer Transaktion verwendet wurde, kann er es nicht wiederverwenden, da es nicht mehr gültig ist. Andererseits kann ein OTP nicht von einer Person gespeichert werden, da es aus demselben Grund nutzlos wäre. Daher muss zusätzliche Technologie verwendet werden (ein physisches Gerät mit dem integrierten OTP-Rechner oder eine bestimmte Mobiltelefonnummer oder eine App, die auf einem zertifizierten Gerät installiert ist). [3] OTPs können als alleiniger Authentifizierungsfaktor oder zusätzlich zu einem anderen Faktor, wie dem Passwort des Benutzers, Kreditkarteninformationen oder einer PIN , verwendet werden, um eine Zwei-Faktor-Authentifizierung zu erreichen .
Generierung und Speicherung von OTPs
Die entwickelten OTP- Algorithmen unterscheiden sich stark voneinander. Gemeinsam ist ihnen, dass jedes OTP durch Anwenden einer kryptografischen Funktion auf einen eindeutigen Satz von Werten generiert wird. Dies ist notwendig, weil es sonst einfach wäre, den zukünftigen OTP vorherzusagen, indem man die vorherigen beobachtet. Die verschiedenen Ansätze zur Generierung von OTPs sind nachfolgend aufgeführt:
- Algorithmen, die auf Zeitsynchronisation zwischen dem Authentifizierungsserver und dem das Passwort liefernden Client basieren: Die OTPs sind nur für einen kurzen Zeitraum gültig, der Wert, aus dem das OTP generiert wird, ist die aktuelle Uhrzeit.
- Mathematische Algorithmen, die basierend auf dem alten Passwort ein neues Passwort generieren. Der Wert, aus dem das OTP generiert wird, ist eine Zahl innerhalb einer vordefinierten Sequenz (OTPs sind tatsächlich eine Kette von Passwörtern, die miteinander verbunden sind und in einer vordefinierten Reihenfolge verwendet werden müssen).
- Mathematische Algorithmen, bei denen das Passwort auf einer Abfrage (z. B. einer Zufallszahl, die vom Authentifizierungsserver oder aus den Details der Transaktion ausgewählt wird) und / oder auf einem Zähler basiert.
Methoden zum Generieren
Zeitsynchronisation
Ein auf Zeitsynchronisierung basierendes OTP ist im Allgemeinen mit einer als Token bezeichneten Hardwarekomponente verbunden , jedem Benutzer wird ein persönliches Token zugewiesen, um seine eigenen OTPs zu generieren. Der Token hat eine interne Uhr , die mit der Uhr der servereigenen Authentifizierung synchronisiert wurde . Auf diesen OTP-Systemen ist die Zeit ein wichtiger Bestandteil des Passwortgenerierungsalgorithmus, da die Generierung neuer Passwörter auf der aktuellen Zeit basiert und nicht oder zusätzlich zum vorherigen Passwort oder privaten Schlüssel . Bei diesem Token kann es sich um ein proprietäres Gerät, ein Mobiltelefon oder ein ähnliches mobiles Gerät handeln, auf dem proprietäre, kostenlose oder Open-Source - Software ausgeführt wird .
Mathematische Algorithmen
Jedes neue OTP leitet sich von dem zuvor verwendeten ab. Ein Beispiel dieses Algorithmus, der Leslie Lamport zugeschrieben wird, verwendet eine Einwegfunktion (im Folgenden als bezeichnet ), die wie folgt funktioniert:
- Ein Startwert wird ausgewählt (Anfangswert) .
- Eine Hash-Funktion wird wiederholt (z. B. 1000-mal) ( Hash-Kette ) auf den Seed angewendet, wodurch ein neuer Wert erzeugt wird. Dieser Wert wird im Beispiel so dargestellt, wie er auf dem Zielsystem gespeichert ist.
- Die erste Anmeldung des Benutzers verwendet ein Passwort , das durch 999-maliges Anwenden auf den Seed abgeleitet wird, also . Das Zielsystem kann authentifizieren, dass dies das richtige Passwort ist, da dies der gespeicherte Wert ist. Der gespeicherte Wert wird dann durch ersetzt und der Benutzer kann sich anmelden.
- Die nächste Anmeldung muss mit begleitet werden . Auch dies kann validiert werden, da die Anwendung dazu führt, dass es sich um den Wert handelt, der nach der vorherigen Anmeldung gespeichert wurde. Auch hier ersetzt der neue Wert von den alten und der Benutzer wird authentifiziert.
- Der Vorgang kann weitere 997 Mal wiederholt werden, danach muss ein neuer Seed ausgewählt werden, mit dem das Gerät initialisiert wird.
Hash - Funktionen sind so konzipiert, dass sie extrem schwer rückgängig zu machen sind, sodass ein Angreifer den anfänglichen Seed kennen müsste, um mögliche Passwörter zu berechnen, während das System umgekehrt jedes Mal bestätigen kann, dass das Passwort gültig ist, indem es den Hash einmal und einmal überprüft Funktion angewendet wird, ist der erhaltene Wert der zuvor für den Zugriff verwendete Wert.
Um das nächste Passwort in der Reihe aus den vorherigen Passwörtern zu erhalten, müssen Sie einen Weg finden, die Umkehrfunktion zu berechnen . Da es als Einbahnstraße gewählt wurde, ist dies äußerst schwierig. Handelt es sich um eine kryptographische Hash-Funktion , was der allgemeine Fall ist, ist es (soweit bekannt) eine rechnerisch unmögliche Aufgabe. Ein Eindringling, dem es gelingt, ein OTP zu erhalten, kann für einen bestimmten Zeitraum oder für eine Sitzung Zugriff haben, wird aber nach Ablauf dieses Zeitraums nutzlos. Das S/KEY -Einmalpasswortsystem und der daraus abgeleitete OTP-Token basieren auf dem Lamport-Schema.
Herausforderung
In den auf einer Challenge basierenden OTP-Systemen sendet der Server die Challenge an den Benutzer, der Benutzer fügt sie in sein OTP-Gerät ein und er verschlüsselt sie unter Verwendung seines eigenen privaten Schlüssels; in der Zwischenzeit verschlüsselt der Server auch die Abfrage mit dem dem Benutzer zugeordneten privaten Schlüssel , der Benutzer sendet die verschlüsselte Abfrage an den Server, und wenn der vom Benutzer berechnete Wert gleich dem vom Server berechneten Wert ist, wird die Authentifizierung autorisiert .
Verteilungsmethoden
Mobiltelefonie
Eine gängige Technologie für die OTP-Bereitstellung ist Textnachrichten . Da Textnachrichten ein allgegenwärtiger Kommunikationskanal sind, der direkt in fast jedem Mobiltelefon und durch Text-zu-Sprache-Konvertierung auf jedem Mobil- oder Festnetztelefon verfügbar ist, hat Textnachrichten ein großes Potenzial, alle Verbraucher mit geringen Gesamtkosten zu erreichen. Die Kosten für Textnachrichten per OTP sind jedoch für einige Benutzer möglicherweise nicht akzeptabel. Textnachrichten OTP können mit einem A5 / x -Standard verschlüsselt werden , von dem mehrere Hackergruppen berichten, dass er in Minuten oder Sekunden erfolgreich geknackt werden kann. [4] [5] [6] [7] Darüber hinaus können und wurden Sicherheitslücken im SS7 -Routing-Protokoll verwendet, um OTP-Textnachrichten an Angreifer umzuleiten; 2017 wurden mehrere O2 -Kunden in Deutschland auf diese Weise gehackt, um Zugriff auf ihre Mobile-Banking-Konten zu erhalten. Im Juli 2016 veröffentlichte das US-amerikanische NIST einen Entwurf einer Sonderveröffentlichung mit Richtlinien zu Authentifizierungspraktiken, die von der Verwendung von SMS als Methode zur Implementierung von Out-of-Band-Zwei-Faktor-Authentifizierung abraten, da SMS in großem Umfang abgefangen werden können . [8] [9]
Auf Smartphones können OTPs auch direkt über Apps bereitgestellt werden, einschließlich spezieller Authentifizierungs-Apps wie Authy , Duo und Google Authenticator , oder innerhalb einer Dienstanbieter-App, wie es bei Steam der Fall ist . Diese Systeme haben nicht die gleichen Sicherheitslücken wie SMS und erfordern nicht unbedingt eine Verbindung zu einem Mobilfunknetz, da sie auf dem Internet basieren. [10] [11] [12]
Proprietäre Tokens
EMV beginnt mit der Verwendung eines Challenge-Response-Algorithmus (genannt Chip Authentication Program ) für Kreditkarten in Europa. Andererseits sind bei der Zugangskontrolle für Computernetzwerke SecurID und HID Global von RSA Security Beispiele für zeitsynchronisierte Token. Die Hauptprobleme bei physischen Token sind, dass sie verloren gehen, beschädigt oder gestohlen werden können; Darüber hinaus besteht ein Nachteil in Bezug auf die Lebensdauer der Batterien, insbesondere bei Jetons ohne Wiederaufladefunktion oder austauschbarer Batterie. Eine Variante des proprietären Tokens wurde 2006 von RSA vorgeschlagen und als "allgegenwärtige Authentifizierung" beschrieben, bei der RSA mit Herstellern zusammenarbeitet, um Geräte wie Mobiltelefone mit physischen SecurID-Chips auszustatten.
Yubico bietet einen kleinen USB - Token mit eingebautem Chip an, der beim Drücken einer Taste ein OTP erstellt und eine Tastatur simuliert, um die Eingabe eines langen Passworts zu erleichtern. [13] Da es sich um ein USB-Gerät handelt, vermeidet es den umständlichen Batteriewechsel.
Webbasierte Methoden
Authentifizierungs-as-a-Service-Anbieter bieten verschiedene webbasierte Methoden zur Bereitstellung von OTPs an, ohne dass physische Token erforderlich sind. Google stellt einen OTP - Generierungsdienst namens Google Authenticator bereit , der als mobile Anwendung für Android , iOS und BlackBerry OS verfügbar ist .
Hardcopy
Beim Online -Banking einiger Länder sendet die Bank dem Benutzer eine auf Papier gedruckte nummerierte Liste von OTPs. Andere Banken versenden Plastikkarten mit einer Schicht, die der Benutzer abrubbeln muss, um ein nummeriertes OTP freizulegen. Für jede Online-Transaktion muss der Benutzer ein bestimmtes OTP aus dieser Liste eingeben. Einige Systeme fordern nacheinander nummerierte OTPs an, andere wählen pseudozufällig ein OTP zur Eingabe aus. In Deutschland und vielen anderen Ländern wie Österreich und Brasilien [14] werden diese OTPs üblicherweise als TAN ("Transaction Authentication Number") bezeichnet. Manche Banken schicken solche TANs sogar per SMS auf das Handy des Nutzers, dann heißen sie mTAN („mobile TAN“).
Vergleich von Technologien
Vergleich von OTP-Implementierungen
Die billigsten OTP-Lösungen sind diejenigen, die papierbasierte OTPs bereitstellen, und solche, die OTPs auf einem vorhandenen Gerät generieren, ohne die Kosten, die mit der (Neu-)Ausgabe proprietärer elektronischer Sicherheitstoken und SMS-Nachrichten verbunden sind.
Bei Systemen, die auf elektronische Token angewiesen sind, werden algorithmenbasierte OTP-Generatoren mit der Situation konfrontiert, dass ein Token mit seinem eigenen Server desynchronisiert wird, wenn das System die Eingabe des OTP innerhalb einer Frist erfordert. Dies ist mit zusätzlichen Entwicklungskosten verbunden. Andererseits vermeiden zeitsynchronisierte Systeme dies auf Kosten der Notwendigkeit, eine Uhr in den elektronischen Token (und einen Offset-Wert, um die Frequenzdifferenz zwischen der Geräteuhr und der Serveruhr zu berücksichtigen) aufrechtzuerhalten. Dass das OTP im Laufe der Zeit synchronisiert wird, ist für die Schwachstelle im Wesentlichen irrelevant, vermeidet jedoch die Notwendigkeit, Passwörter erneut einzugeben, falls der Server und das OTP so weit desynchronisiert sind, dass der Server davor oder danach nach einem Passwort fragt eine, nach der Sie fragen sollten.
Die Verwendung eines vorhandenen Mobilgeräts vermeidet die Beschaffung und den Transport eines zusätzlichen OTP-Generators. Der Akku kann wieder aufgeladen werden; Ab 2011 haben die meisten kleinen Geräte keine wiederaufladbaren oder austauschbaren Batterien. Die meisten proprietären Token verfügen jedoch über manipulationssichere Funktionen.
OTP im Vergleich zu anderen Datenschutzmethoden
OTPs sind anfällig für Social-Engineering- Angriffe, bei denen Phisher OTPs stehlen, indem sie Kunden dazu verleiten, ein oder mehrere OTPs bereitzustellen, die sie in der Vergangenheit verwendet haben. Ende 2005 wurden Kunden einer schwedischen Bank dazu verleitet, ihr nächstes OTP offenzulegen. [15] Im Jahr 2006 wurde diese Art von Angriff gegen die Kunden einer US-Bank eingesetzt. [16] Zeitsynchronisierte OTPs sind ebenfalls anfällig für Phishing, und zwar mit zwei Methoden: Das Passwort kann vom Angreifer als legitimer Benutzer schneller verwendet werden, wenn der Angreifer das OTP schnell genug erhalten kann. Die andere Art von Angriff – die von OTP-Systemen abgewehrt werden kann, die die Hash-Kette wie oben beschrieben implementieren – besteht darin, dass der Phisher die erhaltenen Informationen (übergebene OTP-Codes, die nicht mehr gültig sind) mit dieser Social-Engineering-Methode verwendet, um vorherzusagen, welche OTPs wird in Zukunft verwendet werden. Beispielsweise könnte ein Pseudo-Zufalls- statt zufälliger OTP-Passwortgenerator kompromittiert werden, da Pseudo-Zufallszahlen im Gegensatz zu echten Zufallszahlen oft vorhersehbar sind, sobald Sie die OTP-Codes übergeben haben. Ein OTP-System kann nur wirklich zufällige OTPs verwenden, wenn das OTP vom Authentifikator generiert und (vermutlich außerhalb des Bandes) an den Benutzer übertragen wird; Andernfalls muss das OTP von jeder Partei unabhängig generiert werden, was einen wiederholbaren und daher einfach pseudozufälligen Algorithmus erfordert.
Obwohl OTPs etwas sicherer sind als ein gespeichertes statisches Passwort, sind Benutzer von OTP-Systemen immer noch anfällig für Man-in-the-Middle-Angriffe . OTPs sollten daher nicht an Dritte weitergegeben werden, und die Verwendung eines OTP als zusätzlichen Authentifizierungsfaktor ist sicherer als die Verwendung von OTP als alleinigem Authentifizierungsfaktor. Eine Möglichkeit, eine mehrstufige Authentifizierung zu implementieren, besteht darin, ein OTP in Kombination mit einem Passwort zu verwenden, das vom Benutzer gespeichert wird (und niemals an den Benutzer weitergegeben wird, wie dies häufig bei OTPs der Fall ist).
Standardisierung
Viele OTP-Technologien sind patentiert. Dies erschwert die Standardisierung in dieser Branche, da jedes Unternehmen versucht, seine Technologie voranzutreiben. Allerdings gibt es Standards wie RFC 1760 ( S/KEY ), RFC 2289 (OTP), RFC 4226 ( HOTP ) und RFC 6238 ( TOTP ).
Notizen
- ^ http://www.cartedipagamento.com/codice-otp.htm
- ^ Eintrags- ID 920996 , auf iate.europa.eu , Interaktive Terminologie für Europa . Abgerufen am 21. Mai 2022 .
- ^ Jürgen Haas, Einmalpasswort ( S / Key) .... , bei linux.about.com , about.com. Abgerufen am 21. Mai 2012 .
- ^ Elad Barkan, Eli Biham und Nathan Keller, Instant Ciphertext-Only Cryptanalysis of GSM Encrypted Communication , 2003, S. 600–16 (archiviert vom Original am 7. Oktober 2015) .
- ^ Elad Barkan, Eli Biham und Nathan Keller, Instant Ciphertext-Only Cryptanalysis of GSM Encrypted Communication von Barkan und Biham von Technion (Vollversion) ( PDF ), unter cs.technion.ac.il .
- ^ Tim Gueneysu, Timo Kasper, Martin Novotný, Christof Paar und Andy Rupp, Cryptanalysis with COPACOBANA ( PDF ), in Transactions on Computers Nov. 2008 , vol. 57, 2008, S. 1498–1513.
- ^ Karsten Nohl und Chris Paget, GSM: SRSLY? , 26. Chaos Communication Congress (26C3): 27. Dezember 2009. Abgerufen am 30. Dezember 2009 .
- ^ John Fontana , NIST-Blog, klärt SMS-Ablehnung im Zuge des Medienschwunds , in ZDNet . Abgerufen am 14. Juli 2017 .
- ^ David Meyer, Die Zeit läuft ab für SMS-basierte Login-Sicherheitscodes , auf Fortune . Abgerufen am 14. Juli 2017 .
- ^ Natt Garun, How to set up two-factor authentication on all your online accounts , auf The Verge , 17. Juni 2017. Abgerufen am 14. Juli 2017 .
- ^ Russell Brandom, Zwei-Faktor-Authentifizierung ist ein Durcheinander , The Verge , 10. Juli 2017. Abgerufen am 14. Juli 2017 .
- ^ Michael McWhertor, Valve fügt Zwei-Faktor-Anmeldeauthentifizierung zur mobilen Steam-App hinzu , polygon.com , Polygon , 15. April 2015. Abgerufen am 8. September 2015 .
- ^ Yubico AB , in Bloomberg Businessweek . Abgerufen am 13. Juli 2011 .
- ^ BRB - Banco de Brasília - BRB Banknet Archiviert am 12. Dezember 2017 im Internetarchiv .. Portal.brb.com.br.
- ^ Der Registerartikel . Der Register-Artikel (2005-10-12).
- ^ Sicherheitsblog der Washington Post . blog.washingtonpost.com.