Was ist ein Einmalpasswort?
Ein Einmalpasswort (OTP) ist ein nur einmal verwendbarer, zufällig generierter Code mit kurzer Gültigkeitsdauer, der zur Authentifizierung oder Verifizierung eines Benutzers während einer einzelnen Anmeldesitzung oder Transaktion eingesetzt wird. Es stellt eine Komponente der Multi-Faktor-Authentifizierung (MFA) dar und verstärkt die Zugriffskontrolle, indem es eine zusätzliche Sicherheitsebene durch einen weiteren Verifizierungsschritt über herkömmliche statische Passwörter hinaus bietet.
Einmalpasswörter werden auf unterschiedliche Weise generiert. Einige Systeme nutzen Algorithmen, die zwischen Server und Client synchronisiert sind. Andere setzen auf Challenge-Response-Mechanismen, bei denen der Benutzer bestimmte Informationen bereitstellt und der Server daraufhin das OTP erzeugt. Darüber hinaus gibt es auch zeitbasierte OTPs, die nur für einen kurzen Zeitraum gültig sind.
Nach der Erstellung werden Einmalpasswörter über verschiedene Kanäle an die Benutzer übermittelt, beispielsweise per SMS, E-Mail oder über spezielle Authentifizierungsanwendungen.
Was ist ein zeitbasiertes Einmalpasswort (TOTP)?
Ein zeitbasiertes Einmalpasswort (TOTP) ist eine spezielle Form des Einmalpassworts, das nur für einen kurzen Zeitraum gültig ist – in der Regel zwischen 30 Sekunden und wenigen Minuten. Nach Ablauf dieser Zeit verfällt das Passwort und ein neues kann generiert werden. TOTPs werden mithilfe eines kryptografischen Algorithmus erstellt, der auf der HMAC-SHA1-Funktion (Hash-based Message Authentication Code – Secure Hash Algorithm) basiert. Dabei wird ein gemeinsamer geheimer Schlüssel mit dem aktuellen Zeitstempel kombiniert, sodass jedes Passwort eindeutig und nicht vorhersagbar ist. Der Algorithmus stellt sicher, dass sowohl der Authentifizierungsserver als auch das Token des Benutzers (z. B. eine mobile App oder ein Hardware-Token) im jeweiligen Zeitfenster das identische Passwort erzeugen, was eine sichere Verifizierung ermöglicht.
Die Implementierung zeitbasierter Einmalpasswörter erfordert eine präzise Synchronisation zwischen Server und Endgerät des Benutzers. Sind die Uhren nicht ausreichend synchronisiert, kann das vom Client generierte TOTP vom Server nicht verifiziert werden, was zu Authentifizierungsfehlern führen kann.
Zeitbasierte Einmalpasswörter werden in zahlreichen Anwendungen eingesetzt, darunter im Bankwesen, bei E-Mail-Diensten und auf Social-Media-Plattformen, um Benutzeranmeldungen und Transaktionen abzusichern.
Nutzer erhalten zeitbasierte Einmalpasswörter in der Regel über spezielle Authenticator-Apps auf ihren Mobilgeräten, die zur Generierung des Passworts keine Internetverbindung benötigen.
Warum Einmalpasswörter verwendet werden
Einmalpasswörter kommen bei einer Vielzahl von Online-Transaktionen und zur Zugriffskontrolle zum Einsatz. Ihre breite Einführung beruht auf mehreren entscheidenden Faktoren, unter anderem auf den folgenden:
Schwache Passwörter absichern
Solange Nutzer nicht zur Verwendung starker Passwörter gezwungen werden, erstellen und verwenden sie häufig einfache, leicht zu erratende Passwörter über mehrere Websites hinweg. Einmalpasswörter verhindern, dass dies zu einer kritischen Schwachstelle (Single Point of Failure) in der Zugriffskontrolle wird, indem sie automatisch nicht erratbare, nur einmal gültige Passwörter generieren.
Erfüllung regulatorischer Anforderungen
Die Verwendung von Einmalpasswörtern als Teil der Multi-Faktor-Authentifizierung unterstützt Unternehmen dabei, regulatorische Vorgaben zu erfüllen, die strenge Datenschutzmaßnahmen vorschreiben. OTPs bieten eine zusätzliche Sicherheitsebene zum Schutz sensibler, regulierter Daten wie personenbezogener Informationen (PII) und geschützter Gesundheitsdaten (PHI).
Sicherheit erhöhen
Einmalpasswörter ergänzen Zugriffskontrollen um einen weiteren Authentifizierungsschritt und erhöhen die Sicherheit durch ein einmalig gültiges Passwort. Aufgrund ihres dynamischen Charakters bieten OTPs zudem Schutz vor Replay-Angriffen – bei denen ein abgefangenes Passwort erneut verwendet wird – sowie vor Phishing-Angriffen, bei denen Benutzer zur Preisgabe ihrer Zugangsdaten verleitet werden.
Sichere Finanztransaktionen ermöglichen
Einmalpasswörter werden häufig eingesetzt, um Finanztransaktionen abzusichern. Sie fügen eine zusätzliche Identitätsprüfung hinzu, um die Identität des Nutzers zu bestätigen und Betrug oder Diebstahl wirksam zu verhindern.
Worin unterscheiden sich Einmalpasswörter, zeitbasierte Einmalpasswörter und statische Passwörter?
Einmalpasswörter, zeitbasierte Einmalpasswörter und statische Passwörter dienen alle der grundlegenden Absicherung der Benutzer-Authentifizierung, unterscheiden sich jedoch deutlich in ihrer Funktionsweise und ihren Anwendungsbereichen.
Einmalpasswörter (OTP)
Einmalpasswörter werden für eine einzelne Anmeldesitzung oder eine spezifische Transaktion generiert. Die Erstellung kann auf unterschiedliche Weise erfolgen, zum Beispiel algorithmisch auf Basis eines gemeinsamen Geheimnisses (shared secret) oder durch den direkten Versand an das Endgerät des Benutzers per SMS oder E-Mail, nachdem das Passwort von einer Authentifizierungsanwendung oder einem Hardware-Token erzeugt wurde.
Zeitbasierte Einmalpasswörter (TOTP)
Zeitbasierte Einmalpasswörter sind eine spezielle Form von Einmalpasswörtern, die nur für ein kurzes Zeitfenster gültig sind. Dieses Intervall wird vom Administrator festgelegt und beträgt in der Regel zwischen 30 Sekunden und wenigen Minuten.
Zeitbasierte Einmalpasswörter werden mithilfe eines kryptografischen Algorithmus erzeugt, der einen geheimen Schlüssel mit dem aktuellen Zeitstempel kombiniert. Dadurch ist jedes Passwort eindeutig und nur innerhalb seines festgelegten Zeitfensters gültig.
Statische Passwörter
Statische Passwörter – also feste Passwörter, die ein Benutzer festlegt und über mehrere Sitzungen hinweg verwendet – stellen die traditionelle Form der Authentifizierung dar. Sie bestehen aus einer festen Zeichenfolge, die sowohl dem Benutzer als auch dem System bekannt ist.
Der Hauptvorteil statischer Passwörter liegt in ihrer einfachen Handhabung und Implementierung. Sie sind weit verbreitet, da sie administrativ leicht zu verwalten und für Benutzer unkompliziert sind. Durch Sicherheitsrichtlinien wird die Verwendung starker Passwörter sowie deren regelmäßige Änderung durchgesetzt.
Wie ein Einmalpasswort generiert wird
Einmalpasswörter bieten eine temporäre und dynamische Möglichkeit zur Authentifizierung von Benutzeridentitäten. Ihre Generierung erfolgt auf verschiedene Arten. Dabei kommen kryptografische Algorithmen, geheime Schlüssel und häufig externe Faktoren wie Zeit oder Ereigniszähler zum Einsatz.
Zu den gängigen Methoden zur Generierung von Einmalpasswörtern zählen unter anderem die folgenden:
Mathematische Algorithmen
Eine grundlegende Methode basiert darauf, ein neues Passwort mithilfe eines mathematischen Algorithmus aus einem Anfangspasswort zu erzeugen. Dieses Anfangspasswort, auch als Seed bezeichnet, kann entweder zufällig generiert oder vom Administrator vorgegeben werden. Sowohl Server als auch Client kennen den Algorithmus und den Seed, wodurch sie dieselbe Abfolge von Passwörtern generieren können.
Challenge-Response-Verfahren
Bei diesem Verfahren sendet der Server eine eindeutige, nicht vorhersagbare Challenge an den Client. Der Client kombiniert diese Challenge mit einem geheimen Schlüssel, um ein Einmalpasswort zu generieren. Dieses Verfahren bietet ein hohes Maß an Sicherheit, erfordert jedoch einen direkten und sicheren Kommunikationskanal zwischen Server und Client.
Zeitbasiert
Das zeitbasierte Einmalpasswort (Time-based One-Time Password, TOTP) ist ein fortschrittlicheres Verfahren, bei dem ein OTP auf Grundlage der aktuellen Zeit generiert wird. Der Zeitstempel wird dabei in feste Intervalle unterteilt – typischerweise zwischen 30 Sekunden und wenigen Minuten. Für dieses Verfahren ist eine präzise Synchronisierung der Uhren zwischen Server und Client erforderlich.
Zeitbasierte Einmalpasswörter werden mithilfe eines geteilten geheimen Schlüssels und der aktuellen Zeit als Eingabe für eine kryptografische Hashfunktion generiert. Der Prozess ist im Standard RFC 6238 definiert.
Die zentralen Komponenten der zeitbasierten Einmalpasswort-Generierung sind:
- Geheimer Schlüssel (Shared Secret):
Ein eindeutiger Schlüssel, der bei der Ersteinrichtung sicher zwischen Server und Client geteilt wird. - Aktuelle Zeit:
Der aktuelle Zeitstempel (meist im Unix-Zeitformat) wird in Zeitschritte unterteilt, um sicherzustellen, dass jedes Passwort nur für einen spezifischen Zeitraum gültig ist. - Kryptografischer Algorithmus:
Ein Algorithmus berechnet den Hashwert basierend auf dem geheimen Schlüssel und dem aktuellen Zeitstempel.
Der resultierende Hashwert wird anschließend gekürzt und in ein lesbares Format umgewandelt – in der Regel ein 6- bis 8-stelliger Code, den der Benutzer zur Authentifizierung eingibt.
HMAC-basiert (HOTP)
Das HMAC-basierte Einmalpasswort (HMAC-based One-Time Password, HOTP) ist ein weiteres Verfahren, das einen hash-basierten Message-Authentication-Code (HMAC) verwendet. Hierbei wird ein geheimer Schlüssel mit einem Zähler kombiniert. Sowohl Server als auch Client verwalten diesen Zähler und nutzen ihn zusammen mit dem gemeinsamen Schlüssel zur Generierung des Einmalpassworts.
Bei jeder Generierung eines Einmalpassworts wird der Zähler erhöht, sodass jedes Passwort eindeutig bleibt. Wie das zeitbasierte Verfahren ist auch dieser Prozess standardisiert.
Die wesentlichen Komponenten der HMAC-basierten Einmalpasswort-Generierung sind:
- Geheimer Schlüssel:
Ein eindeutiger Schlüssel, der – wie beim zeitbasierten Verfahren – zwischen Nutzer und Authentifizierungssystem geteilt wird. - Zähler:
Ein fortlaufender Zähler, der zwischen Client und Server synchronisiert wird. Mit jeder Generierung oder Verwendung eines Einmalpassworts wird der Zähler erhöht. - Kryptografische Hashfunktion:
Der HMAC-Algorithmus kombiniert den geheimen Schlüssel mit dem Zähler, um einen Hashwert zu erzeugen. Dieser wird analog zum zeitbasierten Verfahren in einen numerischen Code umgewandelt.
Wichtige Aspekte bei zeitbasierten und HMAC-basierten Einmalpasswörtern
Zeitbasierte Einmalpasswörter bieten durch ihre zeitliche Begrenzung sowohl Komfort als auch zusätzliche Sicherheit, während HOTPs in Umgebungen mit schwieriger Zeitsynchronisation mehr Flexibilität ermöglichen. Beide Methoden verdeutlichen jedoch die zentrale Bedeutung eines sicheren Schlüsselmanagements und einer intakten Systemintegrität: Wird der geheime Schlüssel kompromittiert, kann ein Angreifer gültige Einmalpasswörter erzeugen.
Zudem setzen zeitbasierte Einmalpasswörter eine präzise Zeitsynchronisation zwischen Client und Server voraus, da bereits geringe Abweichungen zu Fehlern führen können. Einmalpasswörter können über verschiedene Kanäle wie SMS oder E-Mail übermittelt werden. Spezielle Authentifizierungs-Apps, die TOTPs generieren, benötigen für die Synchronisation oft eine Internetverbindung. HMAC-basierte Einmalpasswörter können hingegen auch ohne ständige Verbindung flexibel bereitgestellt werden.
Was ist Single-Factor-Authentifizierung?
Die Single-Factor-Authentifizierung (SFA oder 1FA) ist ein Sicherheitsverfahren, bei dem der Benutzer nur eine Verifizierungsmethode angeben muss, um Zugriff auf ein System oder eine Anwendung zu erhalten. In der Regel handelt es sich dabei um die Kombination aus Benutzername und Passwort – die gängigste Form der Authentifizierung.
Die weite Verbreitung der Single-Factor-Authentifizierung ist vor allem darauf zurückzuführen, dass sie relativ einfach zu implementieren, zu nutzen und zu warten ist. Über die einmalige Einrichtung des Passwortschutzes hinaus sind keine zusätzlichen Hard- oder Softwarekomponenten erforderlich, was sie für viele Unternehmen zu einer kosteneffizienten Option macht.
Diese Authentifizierung basiert auf Wissen, das nur dem Benutzer bekannt ist, und ist daher unkompliziert und benutzerfreundlich. Allerdings ist sie auch die am wenigsten sichere Form der Authentifizierung, da sie ausschließlich von der Stärke und Geheimhaltung des Passworts abhängt. Ist das Passwort schwach, leicht zu erraten oder durch eine Datenschutzverletzung offengelegt worden, kann unbefugter Zugriff leicht erfolgen.
Die ausschließliche Nutzung der Single-Factor-Authentifizierung macht Systeme anfällig für unterschiedliche Angriffsarten wie Phishing, Brute-Force-Angriffe oder Social-Engineering-Methoden, bei denen Angreifer Passwörter erlangen oder erraten können. Aufgrund dieser Schwachstellen setzen viele Organisationen zunehmend auf Multi-Factor-Authentifizierungsverfahren, die zusätzliche Sicherheitsmerkmale wie biometrische Faktoren oder Einmalpasswörter verlangen.
Trotz ihrer Schwächen wird die Single-Factor-Authentifizierung weiterhin für weniger kritische Systeme eingesetzt, bei denen der Komfort des schnellen Zugriffs das potenzielle Sicherheitsrisiko überwiegt. Sie stellt eine grundlegende Sicherheitsmaßnahme dar, wird jedoch zunehmend durch robustere Authentifizierungsmethoden ergänzt oder ersetzt, insbesondere dort, wo der Schutz sensibler Informationen im Vordergrund steht.
Was ist Zwei-Faktor-Authentifizierung?
Die Zwei-Faktor-Authentifizierung (2FA) ist ein Validierungsverfahren, das über das herkömmliche Single-Factor-Authentifizierungsmodell aus Benutzername und Passwort hinausgeht. Sie verlangt von Benutzern, zwei unterschiedliche Nachweise ihrer Identität zu erbringen, bevor sie Zugriff auf ihre Konten oder Systeme erhalten. Durch diese zusätzliche Schutzschicht wird ein deutlich höheres Maß an Sicherheit geschaffen, um unbefugten Zugriff auf Online-Konten, Systeme und Daten zu verhindern.
Bei den beiden Authentifizierungsfaktoren handelt es sich um etwas, das der Benutzer weiß (z. B. ein Passwort oder eine PIN), kombiniert mit einem zweiten Faktor, wie etwa etwas, das der Benutzer besitzt (z. B. ein Smartphone oder ein Sicherheitstoken), oder einer inhärenten Eigenschaft des Benutzers (z. B. biometrische Merkmale wie Fingerabdruck oder Gesichtserkennung).
Die Einführung der Zwei-Faktor-Authentifizierung wird maßgeblich durch die Schwächen der Ein-Faktor-Authentifizierung mit ihrem einzigen Schwachpunkt sowie durch die zunehmende Menge, Geschwindigkeit und Komplexität von Cyberbedrohungen vorangetrieben. Letztere haben sich als wirksam erwiesen, um Ein-Faktor-Authentifizierungsmechanismen zu überwinden.
Durch die Integration eines zweiten Authentifizierungsfaktors bietet die Zwei-Faktor-Authentifizierung selbst dann Schutz, wenn ein Passwort kompromittiert wurde.
Dennoch ist die Zwei-Faktor-Authentifizierung nicht frei von Nachteilen. Sie kann für Benutzer umständlich sein, da ein zusätzlicher Schritt für den Zugriff auf Ressourcen erforderlich ist. Wird als zweiter Faktor ein physisches Gerät verwendet, besteht stets das Risiko des Verlusts oder Verlegens. Trotz dieser Herausforderungen setzen viele Onlinedienste auf die Zwei-Faktor-Authentifizierung.
Sicherheit und Benutzerfreundlichkeit in Einklang bringen
Die breite Einführung von Einmalpasswörtern zeigt, dass IT- und Sicherheitsteams zunehmend verschiedene fortschrittliche Sicherheitsmaßnahmen in Betracht ziehen. Wie bei Einmalpasswörtern hat jede Methode ihre Vor- und Nachteile. Bei der Auswahl von Lösungen zum Identitätsschutz für einen sicheren Zugriff gilt es, einen Ausgleich zwischen Benutzerfreundlichkeit und strengen Sicherheitsvorgaben zu schaffen.