|
Authentication with PKI
|
Please note, that the Knowledge Base isn't translated to english completely at the moment. You will still find some german texts - we are translating permanently the outstanding parts! Thank you for understanding! |
One-Time-Pass - Systems |
| |
|
|
|
Einmalpasswort Systeme haben den Nachteil, dass die Passwörter über Listen verwaltet werden müssen. Dieser Aufwand kann erheblich verringert werden, wenn das Passwort errechnet werden könnte. One Time Pass - Systeme erfüllen dies, indem sie das notwendige Einmalpasswort errechnen, und diese Berechnung in einem vertrauenswürdigem Gerät stattfindet, dem "Authentication Token". Damit erfolgt eine Verlagerung vom "Besitz von Wissen" auf den "Besitz einer Sache"-Ansatz.
|
Challenge Response Token |
Ein Authentication Token teilt mit dem Authentication Server für gewöhnlich ein Geheimnis. Mit dieser Seed kann ein Challenge-Response Verfahren durchgeführt werden. Beispielsweise wird bei einem Logon eine Challenge gestellt, diese muss am Token eingegeben werden. Der resultierende, am Token angezeigte, Passcode muss danach als Identifikationsbeweis beim Logon eingegeben werden. Anhand dieses Wertes erkennt der Authentication Server, dass das manipulationssichere Token im Einsatz war.
Da eine Verschlüsselung der Challenge mit dem Seed nicht praktikabel ist - ein Chiffretext kann kaum fehlerlos in tolerierbarer Zeit manuell eingegeben werden - werden für den Response-Wert Seed und Challenge nach einem bestimmten Algorithmus kombiniert, möglicherweise ein kryptographischer Hash, und ein kürzer Code daraus generiert. Der Authentication Server führt mit seiner Kopie des Seed dieselbe Berechnung durch und vergleicht das Ergebnis mit dem eingegeben Wert.
Da diese Prozedur fehleranfällig ist, "lange" dauert und die Token durch die Eingabemöglichkeit eine gewisse Größe benötigen, stoßen diese Token auf weniger Benutzerakzeptanz. Eine Verbesserungsmöglichkeit ist, als Challenge die aktuelle Uhrzeit heranzuziehen.
|
|
|
Time-Based Token |
Bei diesem Verfahren benötigt der Token, anstatt eines Keypad, eine genau gehende Uhr. Die aktuelle Zeit wird mit dem Seed kombiniert und ein kürzerer Code generiert. Für gewöhnlich zeigen diese Token alle 60 Sekunden einen neuen Passcode an. Der Server führt mit der aktuellen Uhrzeit dieselbe Berechnung durch und vergleicht diesen Wert mit dem erhaltenen Passcode.
|
|
|
zusätzliche Parameter und Varianten |
Neben Seed und Challenge oder Zeit können zusätzliche Faktoren in die Berechnung miteinbezogen werden, die aber den Umgang nicht verkomplizieren sollten. Diese Faktoren sind häufig der letzte gültige Passcode, bzw. ein interner Zähler, oder eine eingegebene Benutzer-PIN. Zum Teil sind die Token-Mechanismen in Software realisiert, um PDAs oder Mobiltelefone in Token zu verwandeln zu können.
|
Token und PINs |
Da der alleinige Einsatz eines Token wiederum nur eine 1-Faktor-Authentifikation darstellt ist der Sicherheitsgewinn dadurch noch nicht sehr hoch - man merkt zumindest, wenn einem der Token gestohlen wurde. Um einen wirklichen Sicherheitsgewinn zu erzielen wird durch eine zusätzliche PIN eine 2-Faktor Authentifizierung modelliert.
Die PIN kann auf unterschiedliche Arten verwendet werden. Die PIN kann zusätzlich in das Eingabefeld für den "Passcode" einzugeben sein, wo der Server diese prüft, oder am Token, als Aktivierung und Authentifizierung gegenüber diesem. Die Eingabe am Token erfordert ein PIN-Management am Token und wiederum ein Keypad. Um die Gefahr von Trial-Error (Brute-Force) Angriffen auf die PIN zu erschweren, sollte der Token jede PIN akzeptieren, jedoch die PIN in die Berechnung des Passcodes integrieren.
|
Token zum Schutz von Geheimnissen |
Ein anderes Einsatzgebiet von Token ist die sichere Speicherung von herkömmlichen Passwörtern, diese Lösung bietet guten Schutz von Passwörtern an Systemen, die keine andere Authentifizierung ermöglichen.
Token können aber auch für den Schutz von privaten Schlüsseln eingesetzt werden, diese Token sind normalerweise Smart Cards.
Es existieren Ansätze, wo Passwortspeicher oder Schlüsselspeicher auf Serverseite gespeichert werden und der Zugriff auf diesen Speicher über eine Authentifizierung mittels Token abläuft.
|
|
|