-
Die
vorliegende Erfindung betrifft die elektronische Authentifizierung
eines Benutzers auf dem Gebiet der Informatik, um zum Beispiel den
Benutzer dazu zu autorisieren oder nicht, aus der Ferne auf eine „Informatikfunktion", die von einem Server
bereitgestellt wird, zuzugreifen. Sie hat zur Aufgabe ein Verfahren
und ein elektronisches System zur Authentifizierung statischer Art,
das heißt
auf der Verwendung einer Einheit von statischen Paßwörtern basierend,
die für
die Überprüfung des
Paßwortes
voreingetragen sind, das von einem Benutzer während eines Authentifizierungsverfahrens
gesendet wird, wobei das Authentifizierungsverfahren und das Authentifizierungssystem
derart perfektioniert wurden, daß die Sicherheit des Authentifizierungsverfahrens
gegen Mißbrauch
verbessert wird.
-
Im
vorliegenden Text ist der Begriff „Informatikfunktion" sehr weit zu fassen.
Er bezeichnet jegliche Funktion, Anwendung, jeglichen Dienst, alle
Daten oder Dateneinheiten, auf die ein Benutzer aus der Ferne zugreifen
kann und deren Zugriff oder Verwendung eine Genehmigung erfordert,
welche zuvor am Ende eines Authentifizierungsverfahrens erteilt
worden ist. Die „Informatikfunktionen" können somit
von beliebiger Art sein. Beispielsweise – ohne als einschränkend zu
gelten – handelt
es sich um einen Dienst, der von einem speziellen Server (Nachrichtenserver,
Dateiserver, Druckserver, ...) bereitgestellt wird, eine Softwareanwendung,
die auf einem Server verfügbar
ist und von mehreren Benutzern genutzt werden kann, eine Informatikressource,
wie beispielsweise eine Datenbank, auf die aus der Ferne zugegriffen
werden kann, eine Funktion zur Bereitstellung eines Zugangs zu einem
Rechner oder einem Netzwerk.
-
Im
allgemeinen erfolgt die Authentifizierung durch eine Authentifizierungseinheit,
die allgemeiner als Authentifizierungsserver bezeichnet wird und
die je nach Anwendung derselbe Server sein kann wie jener, der die „Funktion" bereitstellt, auf
die der Benutzer zugreifen möchte,
oder es kann sich um einen anderen Server handeln.
-
Im
vorliegenden Text ist der Begriff „Server" sehr allgemein aufzufassen und bezeichnet
jegliche Ausrüstung,
Maschine oder jegliches Informatiksystem, das es ermöglicht,
eine oder mehrere „Informatikfunktionen" zu zentralisieren
und auf die ein Benutzer aus der Ferne über ein Netzwerk zugreifen
kann. Im vorliegenden Text ist der Begriff „Netzwerk" in seiner am weitest gefaßten Bedeutung
auszulegen und bezeichnet jegliches Kommunikationsmittel, das es ermöglicht,
Daten aus der Ferne zwischen einem Server und einem Benutzer auszutauschen.
Dabei kann es sich um ein lokales Netzwerk (LAN), beispielsweise
das Intranet eines Unternehmens, um ein Fernnetzwerk (WAN), beispielsweise
das Internet, oder um eine Einheit von untereinander verbundenen
Netzwerken handeln, die von unterschiedlicher Art sein können.
-
Üblicherweise
verfügt
ein Benutzer zum Auslösen
eines Authentifizierungsverfahrens über eine Clienteinheit, die
es ihm ermöglicht,
aus der Ferne mit dem Authentifizierungsserver zu kommunizieren. Im
vorliegenden Text bezeichnet der Begriff „Clienteinheit" jegliches elektronische
System oder jegliche elektronische Ausrüstung, die den Austausch von
Daten mit einem in der Ferne befindlichen Server ermöglichen.
Diese Clienteinheit kann sehr unterschiedliche Formen annehmen.
Es kann sich um einen fixen Arbeitsplatz vom Typ eines PC handeln oder
um eine fixe Informatikstation oder um eine mobile Einheit von der
Art eines Mobiltelefons oder etwas Ähnlichem.
-
Auf
dem Gebiet der elektronischen Authentifizierung eines Benutzers
können
die bekannten Authentifizierungsverfahren in zwei Hauptkategorien eingeteilt
werden: in jene, welche die Authentifizierungsverfahren statischer
Art zusammenfaßt,
und in jene, welche die Authentifizierungsverfahren dynamischer
Art zusammenfaßt.
-
Die
Kategorie der Verfahren zur statischen Authentifizierung faßt alle
Authentifizierungsverfahren zusammen, die auf der Verwendung einer
Einheit von voreingetragenen Paßwörtern (zum
Beispiel in einer Benutzerdatenbank des Authentifizierungsservers)
beruhen, wobei jedes Paßwort,
spezifisch einem bestimmten Benutzer zugeordnet wird. Zu diesem
Zweck wird jedem autorisierten Benutzer ein Identifikator zugeteilt,
der für
diesen Benutzer spezifisch ist, und in der Einheit für die voreingetragenen Paßwörter wird
jedes Paßwort
einem bestimmten Identifikator zugeordnet. Bei einem Authentifizierungsverfahren
sendet der Benutzer mit Hilfe einer Clienteinheit seinen Identifikator
und sein Paßwort, das
vorzugsweise verschlüsselt
ist, an den Authentifizierungsserver. Der Authentifizierungsserver überprüft die Gültigkeit
des erhaltenen Paßwortes,
indem er dieses mit dem Paßwort vergleicht,
das dem Identifikator zugeordnet ist, welcher in der Einheit für die voreingetragenen
Paßwörter erhalten
wurde. Falls die zwei Paßwörter übereinstimmen,
ist die Authentifizierung gültig.
Dieses statische Authentifizierungsverfahren ist heutzutage das
am weitesten verbreitete Verfahren und wird insbesondere bei Informatiknetzwerken
vom Typ LAN häufig
eingesetzt.
-
Die
Verfahren zur dynamischen Authentifizierung sind nach den Verfahren
zur statischen Authentifizierung aufgetaucht. Diese Verfahren zeichnen
sich im wesentlichen durch die Abfolge von aufeinanderfolgenden
Schritten aus. Wenn der Authentifizierungsserver eine Authentifizierungsanfrage
erhält,
die von einer Clienteinheit (Benutzer) abgeschickt wurde, erzeugt
der Server eine Zufallszahl (auch als „Challenge" bezeichnet) und sendet diese Zufallszahl
an die Clienteinheit, welche wiederum diese Zufallszahl nach einem
vorbestimmten Verschlüsselungsverfahren
verschlüsselt.
Dabei kann es sich um einen symmetrischen Algorithmus, beispielsweise
um DES („Data
Encryption Standard"),
3DES, RC4, ... oder um einen asymmetrischen Algorithmus handeln,
welcher auf einer Infrastruktur eines öffentlichen Schlüssels, der
allgemein als PKI bezeichnet wird, beruht und einen öffentlichen
Schlüssel
benutzt, der allen bekannt ist, sowie einen privaten Schlüssel, der
vertraulich ist. Die am weitesten verbreiteten Beispiele für asymmetrische
Algorithmen mit öffentlichem
Schlüssel
sind die Algorithmen RSA (Rivest-Shamir-Adleman), Diffie-Hellman, ElGamal etc. ...
Nach der Verschlüsselung
sendet die Clienteinheit die verschlüsselte Zufallszahl an den Authentifizierungsserver
zurück.
Dieser entschlüsselt
die ihm zugeschickte verschlüsselte
Zufallszahl und validiert, im Fall einer Übereinstimmung mit der Zufallszahl, die
er ursprünglich
ausgesendet hat, die Authentifizierung. Die Validierung der Authentifizierung
erfolgt beispielsweise dadurch, daß der Authentifizierungsserver
an die Clienteinheit, die authentifiziert worden ist, eine temporäre Marke
(auch als „Token" bezeichnet) sendet,
die alle Zugangsrechte der Einheit enthält.
-
Die
Verwendung eines Verfahrens zur dynamischen Authentifizierung ermöglicht es
zwar, ein höheres
Sicherheitsniveau gegenüber
Mißbrauchsfällen zu
erreichen als dies mit einem zuvor genannten Verfahren zur statischen
Authentifizierung möglich ist.
Dennoch zwingt seine Anwendung in einem bestehenden Netzwerk, das
ursprünglich
auf einem Verfahren zur statischen Authentifizierung beruhte, dazu,
das Netzwerk vollständig
zu modifizieren und insbesondere das Betriebssystem zu ändern, auf dem
die Funktionsweise des Netzwerkes aufbaut. Somit wurden, anstatt
ein Verfahren zur statischen Authentifizierung durch ein Verfahren
zur dynamischen Authentifizierung zu ersetzen, in der Vergangenheit
bereits unterschiedliche Lösungen
vorgeschlagen, welche es ermöglichen,
die Verfahren statischer Authentifizierung sicher zu gestalten.
-
Eine
erste Lösung
zur sicheren Gestaltung eines Verfahrens zur statischen Authentifizierung
besteht darin, die Einheit der voreingetragenen Paßwörter periodisch
und automatisch zu modifizieren. Dennoch bleibt in dem Zeitraum
zwischen zwei Aktualisierungen das Problem des widerrechtlichen
Kopierens von statischen Paßwörtern zur
Gänze aufrecht.
Die Wirksamkeit dieses Verfahrens hängt infolgedessen von der Häufigkeit
der Aktualisierung der statischen Paßwörter ab. Ebenfalls gilt, daß mit steigender
Benutzeranzahl eine steigende Anzahl an statischen Paßwörtern bei
jeder Aktualisierung geändert
werden muß,
wodurch das Interesse an diesem Verfahren geschmälert wird.
-
Eine
andere Lösung
zur sicheren Gestaltung eines Verfahrens zur statischen Authentifizierung
besteht im Allgemeinen darin, eine zusätzliche Sicherheitsschicht
zu verwenden, die von dem Verfahren zur statischen Authentifizierung
unterschiedlich ist. Während
eines Authentifizierungsverfahrens wird eine erste Authentifizierung
durch die zusätzliche
Sicherheitsschicht gewährleistet.
Wenn die erste Authentifizierung erfolgreich ist, kommt das übliche Verfahren
zur statischen Authentifizierung zum Einsatz.
-
Es
können
verschiedene Authentifizierungsverfahren eingesetzt werden, um die
zuvor genannte zusätzliche
Sicherheitsschicht auszuführen.
Zum Beispiel beruht ein bekanntes und häufig verwendetes Verfahren
auf einer synchronen Authentifizierung. Verschiedene Varianten der
Umsetzung einer synchronen Authentifizierung werden insbesondere
in den Patentschriften US-A-4,720,860, US-A-5,887,065, FR-A-2747814
und WO-A-9918546 vorgeschlagen. Eine synchrone Authentifizierung zeichnet
sich im allgemeinen durch die Verwendung von aufeinanderfolgenden
Schritten aus. Bei jedem Verfahren zur Authentifizierung eines Benutzers
erzeugt die Clienteinheit des Benutzers automatisch ein Paßwort zu
einmaliger Verwendung, das insbesondere ausgehend von einem Zeitparameter,
der durch den Taktgeber der Einheit bereitgestellt wird, und ferner
ausgehend von einem statischen Schlüssel berechnet wird, der dem
Benutzer eigen ist. Dieses Paßwort
zu einmaliger Verwendung wird zum Authentifizierungsserver übertragen,
der parallel auf ähnliche
Weise ausgehend von seinem eigenen Taktgeber das Paßwort berechnet.
Die Authentifizierung durch den Server erfolgt durch einen Vergleich
und eine Überprüfung der Übereinstimmung
des Paßwortes
zu einmaliger Verwendung, das an ihn gesendet wurde, mit dem Paßwort, das
er berechnet hat. Dieses Verfahren ist interessant, weil bei jeder
Authentifizierung ein Paßwort
zu einmaliger Verwendung für die
Authentifizierung verwendet wird, wodurch das Risiko eines Mißbrauchs
reduziert wird. Im Gegenzug dazu weist dieses Verfahren den Nachteil
auf, daß es
eine Synchronisierung des Taktgebers der Clienteinheit mit jenem
des Authentifizierungsservers erfordert.
-
Ferner
ist aus der Patentschrift US-A-4,672,533 ein Verfahren zur statischen
Authentifizierung bekannt, bei dem die Authentifizierung des Benutzers über ein
Endgerät
erfolgt, welches ein Modul zur Kontrolle des Zugangs zu einem entfernten
Rechner umfaßt.
Dieses Modul funktioniert auf zwei unterschiedliche Weisen.
-
Bei
der ersten Funktionsweise sendet das Endgerät über das Kontrollmodul einen
Endgeräte-Identifikator
TID an den entfernten Rechner. Dieser beschafft sich dann in einer
Tabelle T einen sogenannten Kupplungscode CC, der dem TID-Identifikator,
den er erhalten hat, zugeordnet ist. Der entfernte Rechner erzeugt
in der Folge einen speziellen Kontrollcode oder SCC und sendet diesen
an das Kontrollmodul. Das Kontrollmodul sendet nach Erhalt des SCC-Codes
an den entfernten Rechner den CC-Code
zurück,
der in seinem Speicher dem SCC-Code zugeordnet ist. Der entfernte
Rechner vergleicht dann den erhaltenen CC-Code mit jenem, den er
sich in der Tabelle bei einem der vorhergehenden Schritte beschafft
hat. Wenn die beiden CC-Codes
identisch sind, wird der Zugang zum Endgerät gestattet.
-
Die
zweite Funktionsweise, die als Kontrollmodus bezeichnet wird, wird
durch den entfernten Rechner vor dem Ende einer Kommunikationssitzung
zwischen dem Endgerät
und dem entfernten Rechner durch Senden eines zweiten Kontrollcodes des
entfernten Rechners an das Kontrollmodul aktiviert. Das Kontrollmodul
erzeugt dann in aufsteigender Weise einen neuen zufälligen CC-Code.
Dieser neue Code, der vor jedem Sitzungsende erzeugt wird, wird
einerseits im Speicher des Kontrollmoduls aufbewahrt und andererseits
an den entfernten Rechner gesendet, um dort in der Tabelle T aufbewahrt
zu werden.
-
Die
wesentlichsten Nachteile dieser Verfahrensart bestehen darin, daß es sich
auch hier um ein synchrones Verfahren handelt und daß das neue Paßwort am
Ende der Kommunikationssitzung zur Verwendung bei der darauffolgenden
Kommunikationssitzung erzeugt wird. Dadurch ist es notwendig, den
neuen Code im Bereich des Clients aufzuwahren, wodurch die Möglichkeiten
einer mißbräuchlichen
Verwendung erhöht
werden. Vor allem kann – wenn
das neue Codewort abgefangen wird – der Zeitraum einer potentiellen
mißbräuchlichen
Verwendung sehr lang sein, da der neue Code bis zum Ende der darauffolgenden
Sitzung aktiv ist.
-
Die
Erfindung betrifft das Gebiet der statischen Authentifizierung,
das heißt
von Authentifizierungsverfahren, die auf der Verwendung einer Einheit
für voreingetragene
Paßwörter beruht.
Auf diesem Gebiet schlägt
sie eine Perfektionierung vor, welche es ermöglicht, die Sicherheit gegenüber Mißbräuchen eines
Verfahrens zur statischen Authentifizierung zu erhöhen.
-
Somit
bestehen die Hauptaufgaben der Erfindung in der Bereitstellung eines
elektronischen Systems zur Authentifizierung eines Benutzers, welches
die Eigenschaften von Anspruch 1 aufweist, sowie eines Verfahrens
zur Authentifizierung eines Benutzers, welches die Eigenschaften
von Anspruch 10 aufweist.
-
Die
Erfindung ermöglicht
vorteilhafter Weise, die Einheit der voreingetragenen Paßwörter pseudo-dynamisch
zu machen, weil bei jeder Authentifizierung das statische Paßwort des
Benutzers zuvor modifiziert wird, was eine Erhöhung der Sicherheit vor Mißbräuchen ermöglicht.
-
Andere
Eigenschaften und Vorteile der Erfindung werden deutlicher hervorgehen
aus der folgenden Beschreibung einer Ausführungsform der Erfindung, wobei
die Beschreibung beispielhaften, aber nicht einschränkenden,
Charakter hat, und unter Bezugnahme auf die beiliegenden Zeichnungen,
in welchen:
-
1 eine
Gesamtübersicht
einer bevorzugten Ausführungsform
eines Authentifizierungssystems der Erfindung ist, wobei die Ausführungsform auf
der Verwendung einer Mikroprozessorkarte in Verbindung mit der Verwendung
eines asymmetrischen Verschlüsselungsalgorithmus
beruht,
-
2 die
wichtigsten Schritte des anfänglichen
Verfahrens zur Authentifizierung des Trägers der Mikroprozessorkarte
zeigt, wobei die Schritte lokal im Bereich der Clienteinheit (Benutzer)
durchgeführt
werden, und
-
3 die
wichtigsten Schritte sowie die wichtigsten Daten zeigt, die im Laufe
eines Authentifizierungsverfahrens gemäß der Erfindung erzeugt und/oder
ausgetauscht werden.
-
Unter
Bezugnahme auf 1 umfaßt das Authentifizierungssystem
der Erfindung eine Authentifizierungseinheit 1, die im
folgenden als Authentifizierungsserver bezeichnet wird, und mindestens
eine Clienteinheit 2, die geeignet ist, Daten mit dem Authentifizierungsserver 1 aus
der Ferne über
ein lokales Netzwerk 3 auszutauschen. In dem speziellen dargestellten
Beispiel ist das Netzwerk 3 ein lokales Netzwerk vom Typ
LAN, und der Austausch von Daten in diesem Netzwerk 3 erfolgt
unter Verwendung des Kommunikationsprotokolls TCP/IP. Wobei jedoch die
Art des Netzwerkes und das Kommunikationsprotokoll, das für den Datenaustausch
zwischen dem Authentifizierungsserver 1 und der Clienteinheit 2 verwendet
wird, für
die Erfindung ohne Bedeutung sind. Die Erfindung könnte insbesondere
in einem Netzwerk vom Typ WAN und/oder mit einem anderen Kommunikationsprotokoll
umgesetzt werden.
-
Im
dem speziellen, in 1 dargestellten Beispiel sind
im Netzwerk 3 auch zwei andere Server angeschlossen, beispielsweise
ein Nachrichtenserver 4, der auch als E-Mail-Server bezeichnet wird, und ein
Dateiserver 5. Das Authentifizierungssystem, das nun im
Detail beschrieben wird, ermöglicht
es einem bestimmten Benutzer, mit Hilfe der Clienteinheit 2 eine
Authentifizierungsanfrage an den Server 1 zu richten. Für den Fall,
daß die
Authentifizierung des Benutzers durch den Server 1 akzeptiert
wird (eine von einem autorisierten Benutzer abgeschickte Authentifizierungsanfrage),
wird eine Sitzung im Netzwerk 3 eröffnet, wodurch es dem autorisierten
Benutzer nach der Authentifizierung ermöglicht wird, ebenfalls unter
Verwendung der Clienteinheit 2 und in Abhängigkeit
vom Umfang seiner Zugangsrechte auf alle oder einen Teil der „Informatikfunktionen" des Netzwerkes zuzugreifen.
-
Authentifizierungsserver
(1)
-
Der
Authentifizierungsserver 1 umfaßt im wesentlichen eine programmierbare
Bearbeitungseinheit 101 und eine Benutzerbank 104.
Im Beispiel von 1 übernimmt der Server 1 auch
die Funktion der Domainkontrollvorrichtung und ist daher dazu autorisiert,
die Daten der Benutzerbank 104 zu ändern. Die Aspekte in Bezug
auf die Verwaltung des Betriebs des Netzwerkes und der Domainnamen
des Netzwerkes sind im übrigen
bekannt und für
das Verständnis
der Erfindung ohne Bedeutung. Infolgedessen werden im folgenden
in der Beschreibung aus Gründen
der Vereinfachung der Darstellung diese zusätzlichen technischen Aspekte,
die ausschließlich mit
der Verwaltung des Betriebs des Netzwerkes im Zusammenhang stehen,
nicht beschrieben.
-
Um
die vorliegende Erfindung umzusetzen ist die Bearbeitungseinheit 101 des
Authentifizierungsservers 1 so ausgelegt, daß sie hauptsächlich zwei
Softwaremodule 102 und 103 ausführt, die
jeweils als „LOGON" bzw. „S-DYNAMIQUE" in 1 bezeichnet
sind.
-
So
wie üblich,
umfaßt
die Benutzerbank 104 im Speicher eine Einheit für voreingetragene
Paßwörter (MdP'TRANS),
wobei jedes Paßwort
einem Identifikator (ID) zugeordnet ist, welcher einen Benutzer kennzeichnet,
wobei jedem autorisierten Benutzer ein spezifischer Identifikator
zugeordnet ist. Vorzugsweise ist jedes Paßwort (MdP'TRANS), das
in der Benutzerbank aufbewahrt wird, ein komplexes Paßwort, das
auf übliche
Weise durch Transformation (zum Beispiel durch Hashen) eines anfänglichen
Paßwortes
(MdP') erhalten
wird, wodurch Mißbräuche erschwert
werden. Dennoch könnte
in einer anderen Ausführungsform
die Benutzerbank die Paßwörter in „klarem
Zustand" (MdP') enthalten. Die
Benutzerbank 104 wird vorzugsweise in Form einer Datenbank
ausgeführt,
die von der Bearbeitungseinheit 1 abgefragt werden kann und
welche – nachdem
die Bearbeitungseinheit 1 eine Anfrage abgesendet hat, die
insbesondere als Parameter einen bestimmten Identifikator ID) enthält, und
in Abhängigkeit
von der Art der Anfrage – ermöglicht,
an die Bearbeitungseinheit 1 das Paßwort (MDP'TRANS), das
dem Identifikator (ID) zugeordnet ist, zurückzusenden (Lesen) oder zu modifizieren
(Schreiben). Diese bevorzugte Anwendung stellt jedoch keinerlei
Einschränkung
der Erfindung dar. In einer anderen Ausführungsform könnte die
Benutzerbank eine Tabelle oder eine sequentielle Datei sein.
-
Clienteinheit (2)
-
In
dem bevorzugten Ausführungsbeispiel von 1 umfaßt eine
Clienteinheit eine fixe Informatikstation (oder einen Informatikarbeitsplatz) 201 in
Form eines Personal Computers oder ähnlichem. Die Erfindung ist
jedoch nicht auf die Verwendung einer fixen Station beschränkt; in
einer anderen Anwendung könnte
die Clienteinheit tragbar und/oder mobil sein.
-
Insbesondere
ist für
die Funktionsweise einer Station 201 die Verwendung einer
auswechselbaren Mikroprozessorkarte 208 erforderlich (die
im allgemeinen als Chipkarte bezeichnet wird).
-
Die
fixe Station 201 umfaßt üblicherweise eine
Zentraleinheit 202, eine Tastatur 203 und einen Bildschirm 204.
Für die
Umsetzung des Authentifizierungsverfahrens der Erfindung wird die
Zentraleinheit 202 so programmiert, daß sie ein Softwaremodul 206,
das als „C-DYNAMIQUE" in 1 und 3 bezeichnet
ist, ausführt.
Die Clienteinheit 2 umfaßt ebenfalls eine Lesevorrichtung 207,
die an einen Eingangsanschluß/Ausgangsanschluß 205 der
Zentraleinheit 202 angeschlossen ist und welche es der Zentraleinheit 202 ermöglicht,
mit einer Mikroprozessorkarte 208 zu kommunizieren, die
in die Lesevorrichtung 207 eingeführt ist.
-
In
der Praxis ist jeder Benutzer, der autorisiert ist, eine Sitzung
im Netzwerk zu eröffnen
(allgemeiner formuliert, jeder Benutzer, der geeignet ist, vom System
gemäß der Erfindung
authentifiziert zu werden) im Besitz einer Karte 208, die
so parametriert worden ist, daß sie
für ihn
spezifisch ist und die er in die Lesevorrichtung 207 einer Clienteinheit 2 einfügen muß, um sich
vom System der Erfindung automatisch authentifizieren zu lassen.
-
Mikroprozessorkarte (208)
-
Nun
wird ein bevorzugtes Beispiel der Mikroprozessorkarte 208 im
Detail beschrieben.
-
Eine
Karte 208 umfaßt
für gewöhnlich einen Mikroprozessor 209,
der durch einen Taktgeber (nicht dargestellt) getaktet ist, und
einen flüchtigen und
einen wiederbeschreibbaren Speicher, wie zum Beispiel EEPROM.
-
Im
Speicher der Karte 208 ist ein speicherresidentes Programm
aufbewahrt, welches die Inbetriebnahme des Mikroprozessors 209 ermöglicht und insbesondere
ein Softwaremodul 210 umfaßt. Dieses Modul 210 ermöglicht in
allgemeiner Weise die Ausführung
eines Verschlüsselungsalgorithmus
(oder Dechiffrieralgorithmus). In einer Ausführungsform der Erfindung könnte es
sich dabei um einen symmetrischen Algorithmus vom Typ eines DES-Algorithmus
handeln. Vorzugsweise handelt es sich bei dem nachstehend dargestellten
und beschriebenen Beispiel um einen asymmetrischen Algorithmus vom
Typ RSA, der auf einem doppelten Schlüssel (KPR,
KPUB) beruht, wobei KPR ein
vertraulicher, einem Benutzer eigener privater Schlüssel und
KPUB ein öffentlicher Schlüssel ist,
der ebenfalls vom Authentifizierungsserver 1 für die Verschlüsselung
der Paßwörter verwendet
wird.
-
Im
Speicher der Karte 208 werden auch mehrere Parameter gespeichert,
von denen die wichtigsten ein vertraulicher „PIN-Code", ein numerisches Zertifikat 211 und
der private Schlüssel
KPR (vertraulich und nicht lesbar) sind.
In einer auf dem Gebiet der asymmetrischen Verschlüsselungs-/Entschlüsselungsalgorithmen üblichen
Weise wird das numerische Zertifikat 211 ausgehend vom öffentlichen Schlüssel (KPUB) erzeugt und umfaßt als Hauptfelder eine Seriennummer,
welche das Zertifikat 211 kennzeichnet, einen Identifikator
(D) des Benutzers der Karte, den öffentlichen Schlüssel (KPUB), einen Domainnamen (DMN), Gültigkeitsdaten
(DATEN) und eine Signatur der Einheit der Felder, die im numerischen
Zertifikat vorhanden sind.
-
"LOGON"-Modul 102 und bekannter Stand
der Technik
-
Das
zuvor erwähnte
Modul „LOGON", das vom Authentifizierungsserver 1 ausgeführt werden kann,
ist ein an sich bekanntes Softwaremodul. Wenn es aktiviert ist,
führt dieses
Modul 102 in einer üblichen
Weise ein einfaches statisches Authentifizierungsverfahren (3/Schritt 701 und 702)
ausgehend von einem Identifikator (ID) und einem Paßwort (MdPTRANS) aus, die ihm am Eingang bereitgestellt
werden, und im Falle einer gültigen
Authentifizierung eröffnet
das Modul „LOGON" im Netzwerk für den autorisierten
Benutzer, der authentifiziert worden ist (3/Schritt 703),
eine Sitzung. Im Grunde genommen besteht das einfache Verfahren
zur statischen Authentifizierung (3/Schritt 701 und 702), das
vom Modul 102 ausgeführt
wird, darin, das Paßwort
(MdPTRANS), das am Eingang zu dem Modul 102 bereitgestellt
wird, mit dem Paßwort
(MdP'TRANS)
zu vergleichen, das in der Benutzerbank 104 dem Identifikator
(ID) zugeordnet ist, der ebenfalls am Eingang vom Modul 102 bereitgestellt
wird, und die Authentifizierung zu validieren oder abzulehnen, je
nachdem, ob die zwei Paßwörter (MdPTRANS) und (MdP'TRANS) übereinstimmen
oder nicht.
-
Bei
den meisten der heute bekannten Systeme zur statischen Authentifizierung
erfolgt das Auslösen
eines Authentifizierungsverfahrens mit Hilfe einer Clienteinheit
auf Anhieb durch das Senden eines Paares (ID, MdPTRANS)
durch die Clienteinheit an den Authentifizierungsserver und durch
Aktivierung des „LOGON"-Moduls 102 zur
Ausführung
des zuvor genannten einfachen statischen Authentifizierungsverfahrens.
-
Die
Erfindung ermöglicht
eine Erhöhung
der Sicherheit gegenüber
Mißbrauch
dieser einfachen Authentifizierung, indem sie bei jeder Authentifizierung
ein zusätzliches
und vorhergehendes Authentifizierungsverfahren ausführt, das
durch starke Sicherheitsvorkehrungen geschützt ist und welches im allgemeinen
dadurch ausgeführt
wird, daß bei
jeder Authentifizierung ein neues Paßwort zu einmaliger Verwendung
erzeugt und die Benutzerbank 104 mit diesem neuen Paßwort dynamisch
aktualisiert wird.
-
Im
speziellen Ausführungsbeispiel
des Authentifizierungssystems der Erfindung, das in den beiliegenden
Figuren dargestellt ist, stützt
sich dieses zusätzliche
und vorhergehende Authentifizierungsverfahren, das für die Erfindung
kennzeichnend ist, auf die Verwendung der zwei zuvor genannten Softwaremodule 102 („S- DYNAMIQUE") und 206 („C-DYNAMIQUE)
und auf die Verwendung der zuvor genannten Mikroprozessorkarte 208.
Ein besonderes Beispiel für
den Ablauf dieses für
die Erfindung kennzeichnenden Authentifizierungsverfahrens wird
nun im Detail unter Bezugnahme auf 2 und 3 beschrieben.
In diesem Beispiel wird das Verfahren in zwei aufeinanderfolgenden
Hauptphasen ausgeführt: in
einer ersten Authentifizierungsphase des Trägers der Karte 208,
dargestellt durch die Schritte des Organigramms von 2,
und in einer zweiten Phase, die durch das Diagramm von 3 dargestellt
wird.
-
2/erste
Phase: Trägerauthentifizierung
-
Schritt 601:
Zunächst
zeigt das Modul „C-DYNAMIQUE" der Clienteinheit 2 auf
dem Bildschirm 204 eine Nachricht an, die den Benutzer
dazu auffordert, seine Karte 208 in die Lesevorrichtung 207 einzuführen.
-
Schritt 602:
Sobald die Karte 208 eingefügt ist, löst das Modul „C-DYNAMIQUE" ein Verfahren zum
Lesen des Identifikators (ID) aus, der in dem Speicher der eingefügten Karte
aufbewahrt ist, und beschafft sich somit den Identifikator (ID),
wodurch eine manuelle Eingabe des Identifikators (ID) durch den
Benutzer vermieden wird.
-
Schritt 603:
Sobald der Identifikator (ID) beschafft wurde, zeigt das Modul „C-DYNAMIQUE" eine Nachricht auf
dem Bildschirm 204 an, mit welcher der Benutzer aufgefordert
wird, seinen PIN-Code einzugeben.
-
Schritt 604:
Sobald der Benutzer mit Hilfe der Tastatur 203 seinen PIN-Code
eingegeben und validiert hat, sendet das Modul „C-DYNAMIQUE" den eingegebenen
PIN-Code an den Mikroprozessor 209 der Karte 208.
-
Schritt 605:
Nach dem Erhalt des eingegebenen Codes löst der Mikroprozessor einen
Vorgang zum Überprüfen dieses
Codes aus, indem dieser mit dem in dem Speicher der Karte 208 eingetragenen PIN-Code
verglichen wird.
-
Test 606 und 607:
Wenn die Codes nicht identisch sind, informiert der Mikroprozessor 209 der Karte
das Modul „C-DYNAMIQUE" der Clienteinheit 2 darüber, daß der Authentifizierungsversuch
des Trägers
fehlgeschlagen ist, und der Benutzer erhält durch das Modul „C-DYNAMIQUE" die Möglichkeit, die
Eingabe seines PIN-Codes eine begrenzte Anzahl von Malen (im Beispiel
von 2 drei Mal) zu wiederholen. Nach dem dritten erfolglosen
Versuch (durch die Eingabe eines falschen PIN-Codes seitens des
Benutzers) wird das Authentifizierungsverfahren verworfen (Schritt 608),
und der Mikroprozessor 209 führt eine Softwaresperre der
Karte 208 durch, durch welche diese unbrauchbar gemacht wird.
-
Wenn
der vom Benutzer eingegebene Code mit dem PIN-Code, der in der Karte
aufbewahrt ist, identisch ist (Test 606 positiv), informiert
der Mikroprozessor 209 der Karte das Modul „C-DYNAMIQUE" der Clienteinheit 2 darüber, daß die Authentifizierung
des Trägers
der Karte erfolgreich war, und das Modul „C-DYNAMIQUE" löst
eine Authentifizierungsanfrage (Start der zweiten zuvor genannten Phase)
aus, die an den Authentifizierungsserver 1 gerichtet ist.
-
Schritt 609:
Im Rahmen dieser Authentifizierungsanfrage beschafft sich das Modul „C-DYNAMIQUE" zuvor in der Karte 208 das
numerische Zertifikat 211 und überträgt dieses an den Authentifizierungsserver 1.
-
3/zweite
Phase: Bearbeitung einer Authentifizierungsanfrage
-
In 3 findet
sich wieder Schritt 609 (Authentifizierungsanfrage) von 2,
wobei die nachfolgenden Schritte der zweiten Phase von (610)
bis (619) numeriert sind.
-
Die
Authentifizierungsanfrage, die der Authentifizierungsserver 1 erhalten
hat, wird anfangs durch das Modul „S-DYNAMIQUE" bearbeitet.
-
Schritt 610:
Das Modul „S-DYNAMIQUE" führt eine Überprüfung der
Gültigkeit
des numerischen Zertifikats 211 durch (insbesondere eine Überprüfung der
Dauer der Gültigkeit
des numerischen Zertifikats und eine Überprüfung, ob das Zertifikat nicht
vorzeitig widerrufen wurde). Der Vorgang zur Überprüfung der Gültigkeit eines numerischen
Zertifikats ist im übrigen
an sich bekannt und wird daher nicht mehr näher beschrieben. Im Fall der
Ungültigkeit
des Zertifikats wird die Authentifizierungsanfrage abgelehnt.
-
Wenn
das numerische Zertifikat gültig
ist, entnimmt das Modul „S-DYNAMIQUE" diesem Zertifikat
den öffentlichen
Schlüssel
(KPUB), um ihn in Folge für den Vorgang
der Verschlüsselung
(nachfolgender Schritt 613) des Paßwortes zu einmaliger Verwendung
zu verwenden, das beim folgenden Schritt (611) erzeugt
wird.
-
Schritt 611:
Das Modul „S-DYNAMIQUE" erzeugt in automatischer
und an sich bekannter Weise ein zufälliges oder pseudo-zufälliges Paßwort (MdP), vorzugsweise
mit einer großen
Länge,
um das Sicherheitsniveau gegenüber
einer mißbräuchlichen Verwendung
zu erhöhen.
Dieses Paßwort
(MdP) ist ein Paßwort
zu einmaliger und vorübergehender
Verwendung (dieses Paßwort
wird ausschließlich
während
des laufenden Authentifizierungsverfahrens verwendet).
-
Schritt 612:
Das Modul „S-DYNAMIQUE" transformiert das
Paßwort
MdP (zum Beispiel gemäß einem
bekannten Verfahren, das als Hashen bezeichnet wird) und aktualisiert
die Benutzerbank 104 mit dem Paßwort MdPTRANS (das
ebenfalls als „Hash" des Paßwortes
MdP bezeichnet wird), das aus dieser Transformation hervorgeht.
-
In
einer anderen Ausführungsform
könnte die
Transformation des Paßwortes
MdP durch ein Softwaremodul erfolgen, das sich vom „S-DYNAMIQUE"-Modul unterscheidet
und zum Beispiel in das Betriebssystem der Clienteinheit 2 integriert
ist.
-
Die
zuvor erwähnte
Aktualisierung der Benutzerbank 104 besteht darin, in dieser
Bank 104 das Paßwort
MdPTRANS, das dem Identifikator (ID) des
numerischen Zertifikats zugeordnet ist, durch das neue Paßwort MdPTRANS zu ersetzen. Das Ziel der zuvor erwähnten Transformation
besteht darin, die Sicherheit des Systems zu erhöhen, indem in der Benutzerbank Paßwörter aufbewahrt
werden, die nicht direkt nutzbar sind. Dieser Transformationsschritt
wird vorzugsweise bereitgestellt, ist jedoch nicht erforderlich,
da das Authentifizierungssystem der Erfindung auch mit einer aufbewahrenden
Benutzerbank umgesetzt werden kann, die direkt bei jedem neuen Paßwort MdP, das „im Klaren" erzeugt wird, aktualisiert
wird.
-
Schritt 613:
Das Modul „S-DYNAMIQUE" verschlüsselt das
Paßwort
(MdP) mit Hilfe des öffentlichen
Schlüssels
KPUB, der zuvor bei Schritt (610) dem
Zertifikat entnommen wurde, und unter Verwendung eines vorbestimmten
asymmetrischen Algorithmus, wie zum Beispiel eines RSA-Algorithmus,
der dem Entschlüsselungsalgorithmus
(210) der Karte (208) entspricht.
-
Schritt 614:
Das verschlüsselte
Paßwort (MdPCHIF) wird an das Modul „C-DYNAMIQUE" der Clienteinheit 2 übermittelt,
welche die Authentifizierungsanfrage ausgesendet hat.
-
Schritt 615:
Das Modul „C-DYNAMIQUE" überträgt das verschlüsselte Paßwort (MdPCHIF) an den Mikroprozessor 209 der
Karte 208, die in die Lesevorrichtung 207 eingeführt wurde.
-
Schritt 616:
Der Mikroprozessor 209 der Karte entschlüsselt das
verschlüsselte
Paßwort
(MdPCHIF) mit Hilfe des asymmetrischen Algorithmus 210 und
unter Verwendung des privaten Schlüssels KPR, der
in der Karte aufbewahrt ist.
-
Schritt 617:
Das Paßwort
(MdP), das entschlüsselt
worden ist, wird an das Modul „C-DYNAMIQUE" der Clienteinheit 2 gesendet.
-
Schritt 618:
Das Modul „C-DYNAMIQUE" transformiert das
Paßwort
(MdP), indem auf dieses Paßwort
dieselbe Transformationsfunktion angewendet wird, die vom Modul „S-DYNAMIQUE" bei dem zuvor genannten
Schritt (612) verwendet wurde. In einer anderen Ausführungsvariante
könnte
die Transformation des Paßwortes
MdP durch ein Softwaremodul erfolgen, das sich vom Modul „C-DYNAMIQUE" unterscheidet und
zum Beispiel in dem Betriebssystem des Authentifizierungsservers 1 integriert
ist.
-
Schritt 619:
Das Modul „C-DYNAMIQUE" sendet das Paßwort (MdPTRANS), das aus dem vorhergehenden Schritt 618 hervorgeht,
an den Authentifizierungsserver 1, gemeinsam mit dem Identifikator (ID),
damit diese vom zuvor genannten Modul „LOGON" 102 bearbeitet werden, das
bekannt ist und die üblichen
Schritte (701 bis 703) des zuvor beschriebenen
LOGON-Verfahrens ausführt
(siehe oben: Modul „LOGON" 102 und
bekannter Stand der Technik).
-
Anhand
der zuvor angeführten
Beschreibung wird verstanden werden, daß die Sicherheit der Authentifizierung
im Authentifizierungsverfahren der vorliegenden Erfindung in allgemeiner
Weise aufgrund der Verwendung eines vorübergehenden Paßwortes
zu einmaliger Verwendung erhöht
wird, welches erzeugt und in der Benutzerbank bei jeder neuen Authentifizierung
aktualisiert wird und das über
einen sicheren Weg (Verschlüsselung
des Paßwortes MdP
vor dem Senden an die Clienteinheit/Entschlüsselung des Paßwortes
durch die Clienteinheit) an die Clienteinheit gesendet wird, um
von der Clienteinheit für
seine Authentifizierung verwendet zu werden.
-
Am
Ende der Netzwerkssitzung zieht der Benutzer seine Karte 208 aus
der Lesevorrichtung 207 heraus. Das Modul „C-DYNAMIQUE" der Clienteinheit
erfaßt
das Herausziehen der Karte und informiert in üblicher Weise den Server 1 über das
Ende der Sitzung, wodurch ein gewöhnliches Verfahren zum Beenden
der Netzwerksitzung (Abbruch der Verbindung des Benutzers) ausgelöst wird.
-
Gemäß einer
anderen zusätzlichen
Eigenschaft der Erfindung wiederholt das Modul „S-DYNAMIQUE" die zuvor genannten
Schritte 611 und 612, um in der Benutzerbank 104 das
Paßwort
zu einmaliger Verwendung, das im Laufe der Sitzung verwendet wurde,
durch ein neues Paßwort
auszutauschen. Diese zusätzliche
Eigenschaft ermöglicht
eine Erhöhung
der Sicherheit des Authentifizierungssystems für den Fall, daß ein mißbräuchlicher
Benutzer während
der Dauer der Sitzung in der Lage war, das Paßwort MdPTRANS,
das von der Clienteinheit an den Authentifizierungsserver übermittelt
wurde (Schritt 619), abzufangen und das ursprüngliche
Paßwort
(MdP) zu finden.
-
Insbesondere
weist die bevorzugte Ausführungsform,
die unter Bezugnahme auf die beiliegenden 1 bis 3 beschrieben
wurde, zahlreiche zusätzliche
Vorteile auf, von denen die wichtigsten im folgenden angeführt werden.
-
Die
Verwendung einer auswechselbaren Karte 208 bringt vorteilhafter
Weise Mobilität
für den Benutzer
mit sich.
-
Die
Sicherheit des Authentifizierungssystems wird dadurch erhöht, daß:
- – die
Verschlüsselung/Entschlüsselung
der Paßwörter auf
einem asymmetrischen Algorithmus beruht;
- – der
Algorithmus, der die Entschlüsselung (1/Modul 210)
jedes neuen Paßwortes
ermöglicht,
das von einer Clienteinheit erhalten wurde, auf die auswechselbare
Karte (208) übertragen
wird und nicht im Speicher der Station 201 der Clienteinheit
zugänglich
ist;
- – der
private Schlüssel
(KPR), der vertraulich und einem bestimmten
Benutzer eigen ist, niemals außerhalb
der Karte übertragen
oder erzeugt wird;
- – zum
Entsperren der Entschlüsselungsfunktion der
Träger
der Karte zuvor mit Hilfe eines vertraulichen PIN-Codes authentifiziert
werden muß,
der auf der Karte aufbewahrt ist und der niemals außerhalb
der Karte übertragen
wird, wobei die Funktion zur Überprüfung des
PIN-Codes, der vom Benutzer eingegeben wird, auf die Karte übertragen
wird;
- – die
Gültigkeit
des numerischen Zertifikats durch den Authentifizierungsserver überprüft wird,
wodurch es insbesondere möglich
ist, bei Verdacht der mißbräuchlichen
Verwendung eines Zertifikats dieses Zertifikat im Bereich des Authentifizierungsservers
vorzeitig zu widerrufen.
-
Ferner
besteht ein weiterer Vorteil der Erfindung in dem Umstand, daß sie leicht
und schnell in einem bestehenden Netzwerk umgesetzt werden kann,
das anfangs ein einfaches Authentifizierungsverfahren (wie jenes
in den zuvor genannten Schritten 701 bis 703)
verwendet, wobei das „LOGON"-Verfahren nicht
geändert
wird.
-
Die
Erfindung ist nicht auf die bevorzugte Ausführungsform beschränkt, die
oben unter Bezugnahme auf 1 bis 3 beschrieben
wurde. Insbesondere wird das Softwaremodul („S-DYNAMIQUE") nicht unbedingt
auf demselben Server wie das „LOGON"-Modul (das heißt auf dem
Authentifizierungsserver 1) umgesetzt, sondern könnte auf
einen anderen Rechner übertragen
werden, der an das Netzwerk 3 angeschlossen ist und mit
dem Authentifizierungsserver kommunizieren kann. In dieser anderen
Variante können
sich zwei Szenarien ergeben: (i) die Maschine, welche das Softwaremodul
(„S-DYNAMQIUE") implementiert und
betreibt, ist autorisiert, direkt auf die Benutzerbank 104 zuzugreifen und
diese zu modifizieren (entsprechende Konfiguration der Zugangsrechte
dieses Rechners durch den Netzwerkadministrator), wobei in diesem
Fall die Aktualisierung der Benutzerbank direkt durch das Modul
(„S-DYNAMIQUE") erfolgen kann;
(ii) die Maschine ist nicht berechtigt, die Benutzerbank 104 zu
lesen und/oder zu modifizieren, wobei in diesem Fall die Aktualisierung
der Benutzerbank mit dem neuen Paßwort zu einmaliger Verwendung,
das durch das Modul („S-DYNAMIQUE") erzeugt wurde,
indirekt über
den Server 1 erfolgt, welcher die erforderlichen Zugangsrechte
besitzt.
-
Allgemeiner
kann ein Authentifizierungssystem bereitgestellt werden, das – anstatt
auf der zuvor beschriebenen Mikroprozessorkarte 208 – auf der Verwendung
jeglichen auswechselbaren Speicherträgers beruht, der geeignet ist,
in eine Clienteinheit 2 eingefügt zu werden und der, sobald
er in eine Clienteinheit 2 eingefügt ist, Daten mit der Clienteinheit austauschen
kann. Wenn ein solcher Speicherträger ausschließlich einen
Speicher umfaßt
und keine Bearbeitungsmittel vom Typ eines Mikroprozessors oder
von ähnlichem
Typ, werden die Funktionen, die von dem Mikroprozessor (insbesondere
die Entschlüsselung/Überprüfung der
Gültigkeit
des vom Benutzer eingegebenen PIN-Codes) durch die Zentraleinheit 202 der
Clienteinheit 2 übernommen,
wobei der Speicherträger
lediglich dazu dient, die Übertragbarkeit
der wichtigsten Funktionsparameter (insbesondere des PIN-Codes,
des privaten Schlüssels KPR, des numerischen Zertifikats 211)
zu bewahren und zu gewährleisten.
Ferner gilt in noch allgemeinerer Weise, daß ein Authentifizierungssystem
der vorliegenden Erfindung nicht unbedingt einen auswechselbaren
Speicherträger
verwendet. In einer anderen Ausführungsform
kann es in der Tat sein, daß alle
auf der zuvor beschriebenen Karte 208 aufbewahrten Daten
und alle durch diese Karte 208 gewährleisteten Funktionen nicht übertragen
werden, sondern im Gegenteil in der Station 201 (Clienteinheit 2)
bleiben, wobei die Daten zum Beispiel auf einem Massespeicherträger der
Zentraleinheit 202, vom Typ einer Festplatte, aufbewahrt
und die Funktionalitäten
(Programme) in einem Direktzugriffsspeicher (RAM) der Zentraleinheit 202 aufbewahrt
werden können.