DE60211008T2 - Authentifizierung eines entfernten benutzers zu einem host in einem datenkommunikationssystem - Google Patents

Authentifizierung eines entfernten benutzers zu einem host in einem datenkommunikationssystem Download PDF

Info

Publication number
DE60211008T2
DE60211008T2 DE60211008T DE60211008T DE60211008T2 DE 60211008 T2 DE60211008 T2 DE 60211008T2 DE 60211008 T DE60211008 T DE 60211008T DE 60211008 T DE60211008 T DE 60211008T DE 60211008 T2 DE60211008 T2 DE 60211008T2
Authority
DE
Germany
Prior art keywords
host computer
subset
values
host
remote
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE60211008T
Other languages
English (en)
Other versions
DE60211008D1 (de
Inventor
Christopher John Egham MITCHELL
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Royal Holloway University of London
Original Assignee
Royal Holloway and Bedford New College
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Royal Holloway and Bedford New College filed Critical Royal Holloway and Bedford New College
Application granted granted Critical
Publication of DE60211008D1 publication Critical patent/DE60211008D1/de
Publication of DE60211008T2 publication Critical patent/DE60211008T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/12Transmitting and receiving encryption devices synchronised or initially set up in a particular manner
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3242Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Power Engineering (AREA)
  • Computer And Data Communications (AREA)
  • Storage Device Security (AREA)
  • Circuits Of Receivers In General (AREA)
  • Communication Control (AREA)
  • Lock And Its Accessories (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Description

  • Diese Erfindung betrifft die Authentifizierung eines entfernten Benutzers an einem Host-Computer in einem Datenkommunikationssystem.
  • Eine solche Authentifizierung erfordert normalerweise die Verwendung des geheimen Passwortsatzes des Benutzers, der in eine entfernte Computervorrichtung eingegeben wird, um eine Benutzung des Systems zu ermöglichen. Eine kryptographische Funktion des Passworts wird dann durch die entfernte Computervorrichtung erzeugt und an den Host-Computer geschickt. Das Passwort kann durch hochentwickelte asymmetrische kryptographische Techniken unter Verwendung von Paaren aus einem öffentlichen Schlüssel und einem privaten Schlüssel verarbeitet werden. Dies bietet eine hohe Sicherheit, benötigt aber eine erhebliche Computerleistung bei der entfernten Computervorrichtung und ist somit nicht geeignet, wenn diese Vorrichtung eine eingeschränkte Computerleistung hat, zum Beispiel wenn sie eine Smart Card ist. In einer solchen Situation kann eine symmetrische kryptographische Technik verwendet werden, die viel weniger Computerleistung erfordert, um ein einmaliges Passwort zu verarbeiten, das an den Host gesendet wird. Ein solches System ist als S/KEY bekannt, dessen Details als Internet RFC 1760 veröffentlicht wurden. In dem S/KEY-System ist ein Angreifer, der das Passwort abhört, nicht in der Lage, es zu verwenden, weil jedes Passwort nur einmal verwendet wird, außer bei einem „Host-Impersonations"-Angriff, bei dem ein falscher Host-Computer Information von dem entfernten Benutzer erhält, die verwendet werden kann, um bei einer späteren Gelegenheit den entfernten Benutzer gegenüber dem echten Host-Computer zu verkörpern (engl.: „to impersonate"). Jedoch hat das S/KEY-System den wichtigen Vorteil, dass der Host keine geheime Information über die entfernte Benutzervorrichtung speichern braucht. Die Information, die gespeichert wird (be kannt als öffentliche Information), ist in sich selbst nicht ausreichend, um einen Angreifer in die Lage zu versetzen, sich als entfernter Benutzer zu maskieren.
  • Die WO 00/10286 (Cloakware Corp.) offenbart ein Authentifizierungssystem, das nicht-reversible Funktionen verwendet, um eine Folge von Codes bei dem Benutzer zu berechnen, und bei dem jedes Passwort einmal verwendet wird. Der abschließende Code in der Folge und der vorhergehende Code werden an einen Server gesendet, um einen Zugang zu erhalten.
  • Ein Ziel der Erfindung ist, ein Authentifizierungsverfahren bereitzustellen, das die Vorteile des S/KEY-Systems beibehält, während es einen verbesserten Widerstand gegen Host-Impersonations-Angriffe bietet.
  • Gemäß eines ersten Aspekt der vorliegenden Erfindung umfasst ein Verfahren zur Authentisierung eines entfernten Benutzers an einem Host-Computer in einem Datenkommunikationssystem, wobei der entfernte Benutzer eine entfernte Computervorrichtung verwendet, ein Speichern einer Menge von Verifikationswerten in dem Host-Computer und während eines Authentifizierungsprozesses ein Senden von Daten von der entfernten Computervorrichtung an den Host-Computer, um eine Authentifizierung des entfernten Benutzers durch den Host-Computer zu ermöglichen, unter Verwendung der Menge von Verifikationswerten zusammen mit Daten, die eine nächste Menge von Verifikationswerten umfassen, die von der entfernten Computervorrichtung berechnet werden.
  • Mit diesem Verfahren speichert der Host-Computer die Verifikationswerte und keine geheime Information über den entfernten Benutzer oder die entfernte Computervorrichtung. Weil während eines Authentifizierungsprozesses die entfernte Computervorrichtung dem Host-Computer die Menge von Verifikationswerten für den nächsten Authentifizierungsprozess sendet, muss desweiteren jeder Host-Impersonations-Angriff imstande sein, zwei Mengen von Verifikati onswerten erfolgreich abzuhören oder abzuleiten. Dies bietet eine erhöhte Sicherheit.
  • Vorzugsweise verifiziert der Host-Computer die nächste Menge von Verifikationswerten, bevor sie anstelle der vorhergehenden Menge gespeichert wird.
  • Vorzugsweise speichert der Host-Computer eine aktuelle Datenfolge und eine aktuelle Menge von Verifikationswerten, die von der entfernten Computervorrichtung unter Verwendung der aktuellen Datenfolge und einer aktuellen Menge von geheimen Schlüsseln berechnet werden, die von der entfernten Computervorrichtung ausgewählt und gespeichert werden, und wobei das Verfahren umfasst:
    Auswählen einer nächsten Datenfolge und einer nächsten Menge von geheimen Schlüsseln, Berechnen der nächsten Menge von Verifikationswerten unter Verwendung der nächsten Datenfolge und der nächsten Menge von geheimen Schlüsseln und Berechnen einer Menge von Prüfwerten unter Verwendung der nächsten Menge von Verifikationswerten und der aktuellen Menge von geheimen Schlüsseln bei der entfernten Computervorrichtung;
    die Übertragung der nächsten Datenfolge, der nächsten Menge von Verifikationswerten und der Menge von Prüfwerten in verschlüsselter Form von der entfernten Computervorrichtung an den Host-Computer;
    zufälliges Auswählen einer Untermenge der aktuellen Menge von Schlüsseln und Erhalten der Untermenge der aktuellen Menge von Schlüsseln in verschlüsselter Form von der entfernten Computervorrichtung bei dem Host-Computer;
    Verifizieren der korrespondierenden Untermenge der aktuellen Menge von Verifikationswerten unter Verwendung der aktuellen Datenfolge und der Untermenge der aktuellen Menge von Schlüsseln bei dem Host-Computer;
    dann die Verifikation der korrespondierenden Untermenge der Menge von Prüfwerten unter Verwendung der nächsten Datenfolge und der Untermenge der aktuellen Menge von Schlüsseln; und
    der Ersetzung der aktuellen Datenfolge und der aktuellen Menge von Verifikationswerten mit der nächsten Datenfolge und der nächsten Menge von Verifikationswerten.
  • In diesem Fall werden nur die Datenfolge und die Verifikationswerte bei dem Host-Computer gespeichert, der dennoch nicht irgendeine geheime Information über den entfernten Benutzer speichert.
  • Weil das Verfahren die aktuellen Schlüssel verwendet, um sowohl die aktuelle Menge von Verifikationswerten als auch die nächste Menge von Verifikationswerten zu verifizieren (über die Prüfwerte), wird desweiteren jedesmal wenn der entfernte Benutzer authentifiziert wird, der Host-Computer mit der nächsten Menge von Verifikationswerten der nächsten Authentifizierung ausgestattet und verifiziert diese. Obwohl geheime Schlüssel von der entfernten Computervorrichtung an den Host-Computer gesendet werden, wird nur eine Untermenge der Schlüssel gesendet, so dass, falls diese von einem Angreifer abgefangen werden, es unwahrscheinlich ist, dass der Angreifer die Untermenge hat, die erforderlich ist, wenn versucht wird, die entfernte Computervorrichtung gegenüber dem Host-Computer bei einer späteren Gelegenheit zu verkörpern, so dass die Verifikationsprozedur bei dem Host fehlschlägt. Deshalb bietet dies eine verbesserte Sicherheit.
  • Die Erfindung bietet dort besondere Vorteile, wo die Verschlüsselung symmetrisch ist, da sie keine erhebliche Rechenleistung erfordert. Desweiteren kann auch der von der entfernten Computervorrichtung benötigte Speicher minimiert werden, zum Beispiel auf einer Smart Card.
  • Normalerweise werden die Verifikationswerte unter Verwendung eines Nachrichten-Authentifizierungscode-Algorithmus (MAC) berechnet. Die Verwendung eines solchen Algorithmus zeigt, dass die Information, die verwendet wird, um die Werte zu berechnen, bekannt ist, während sie tatsächlich nicht offengelegt wird. Eine Verwendung eines solchen Algorithmus führt ebenfalls zu einer Minimierung des für die Werte benötigten Speichers.
  • Um die Sicherheit des Verfahrens zu erhalten, während die insbesondere von dem entfernten Benutzer gespeicherten Daten minimiert werden, muss die Anzahl der geheimen Schlüssel in einer Menge und die Anzahl in der Untermenge sorgfältig ausgewählt werden. In der Praxis ist die Anzahl der geheimen Schlüssel in einer Menge zwischen 35 und 200, wobei die Anzahl in der Untermenge geringer oder gleich der Hälfte der Anzahl in der Gesamtmenge ist.
  • Eine weitere Verbesserung des Widerstehens eines Host-Impersonations-Angriffs wird erreicht, falls die Untermenge der aktuellen Menge von geheimen Schlüsseln durch eine Prozedur ausgewählt wird, die sowohl die entfernte Computervorrichtung als auch den Host einschließt.
  • Das Verfahren kann auf verschiedene Arten implementiert werden, demgemäß, ob zu speichernde Daten oder die Menge an übertragenen Daten/die Anzahl der Datenübertragungen eingeschränkt werden soll.
  • In einer ersten Ausführungsform, bei der eine Datenspeicherung minimiert wird, speichert der Host-Computer eine Datenfolge und eine Menge von Verifikationswerten, während die entfernte Computervorrichtung eine Menge von geheimen Schlüsseln und die Datenfolge speichert, und wobei es während des Authentifizierungsprozesses drei Datenübertragungen gibt, erstens ein Senden der nächsten Datenfolge, der nächsten Menge von Verifikationswerten und der Menge von Prüfwerten von der entfernten Computervorrichtung an den Host- Computer, zweitens ein Senden der zufällig ausgewählten Untermenge von dem Host an die entfernte Computervorrichtung und drittens ein Senden der Untermenge der aktuellen Menge an Schlüsseln von der entfernten Computervorrichtung an den Host.
  • In einer zweiten Ausführungsform, bei der die Anzahl von Datenübertragungen minimiert wird, speichert der Host-Computer die aktuellen und anhängigen Datenfolgen, die entsprechenden beiden Mengen von Verifikationswerten, wobei jede aus einer entsprechenden Menge von geheimen Schlüsseln berechnet wird, und eine Menge von Prüfwerten, während die entfernte Computervorrichtung die beiden Mengen von geheimen Schlüsseln und die aktuellen anhängigen Datenfolgen speichert, und wobei es während des Authentifizierungsprozesses zwei Datenübertragungen gibt, erstens ein Senden der zufällig ausgewählten Untermenge von dem Host an die entfernte Computervorrichtung und zweitens ein Senden der Untermenge der aktuellen Menge von Schlüsseln von der entfernten Computervorrichtung an den Host-Computer, zusammen mit der nächsten Datenfolge, der nächsten Menge von Verifikationswerten und der entsprechenden Menge von Prüfwerten.
  • In dieser Ausführungsform werden nach einer Verifikation der Untermenge der Verifikationswerte und der Prüfwerte die aktuelle Datenfolge, die aktuelle Menge von Verifikationswerten und die Menge von Prüfwerten verworfen, wobei der Host die anhängigen und nächsten Datenfolgen und Mengen von Verifikationswerten und die nächste Menge von Prüfwerten speichert.
  • In jeder Ausführungsform kann der Authentifizierungsprozess auch die Übertragung der aktuellen Datenfolge von dem Host-Computer an die entfernte Computervorrichtung umfassen, um die Synchronisation zwischen dem Host und dem entfernten Benutzer zu prüfen.
  • In der ersten Ausführungsform bildet diese Übertragung der aktuellen Datenfolge die erste Datenübertragung, was insgesamt vier Übertragungen ergibt.
  • In der zweiten Ausführungsform kann diese Übertragung mit der Übertragung der zufälligen Untermenge kombiniert werden, so dass es immer noch nur zwei Datenübertragungen gibt.
  • Falls die Untermenge der aktuellen Menge von geheimen Schlüsseln durch die entfernte Computervorrichtung und den Host ausgewählt wird, bleibt die Anzahl der Datenübertragungen bei der ersten Ausführungsform die gleiche, da die notwendigen Datentransfers in den ersten beiden Übertragungen integriert werden können. In der zweiten Ausführungsform erhöht sich die Anzahl der Datenübertragungen.
  • Gemäß eines zweiten Aspekts der Erfindung stellen wir ein Verfahren zum Authentifizieren eines entfernten Benutzers an einem Host-Computer gemäß des ersten Aspekts der Erfindung bereit.
  • Andere Aspekte der Erfindung betreffen den Host-Computer, der eingerichtet ist, um gemäß dem ersten Aspekt der Erfindung betrieben zu werden, eine entfernte Computervorrichtung, die eingerichtet ist, gemäß dem ersten Aspekt der Erfindung betrieben zu werden, ein Computernetzwerk, das eingerichtet ist, gemäß dem ersten Aspekt der Erfindung betrieben zu werden, und ein System, das wenigstens einen Host-Computer und einen entfernten Computer umfasst, die eingerichtet sind, gemäß dem Verfahren des ersten Aspekt der Erfindung betrieben zu werden.
  • Weitere Aspekte der Erfindung betreffen eine Einrichtung zum Implementieren der Anweisungen des Verfahrens des ersten Aspekts der Erfindung, umfassend ein Bereitstellen von Anweisungen auf einem computerlesbaren Medium, ein Bereitstellen von Anweisungen in Form eines computerlesbaren Signals und ein Bereitstellen von Anweisungen mittels eines computerverwendbaren Mediums, wobei die computerlesbare Programmcodeeinrichtung darin realisiert ist.
  • Noch ein weiterer Aspekt der Erfindung betrifft ein Computerprogramm, das Code zum Ausführen des Verfahrens des ersten Aspekts der Erfindung umfasst.
  • Ausführungsformen der Erfindung werden nun detailliert beschrieben. In der Beschreibung wird der Host-Computer durch H gekennzeichnet und die entfernte Computervorrichtung durch U, und es ist notwendig, ein Verfahren zum Authentifizieren eines Benutzers der entfernten Computervorrichtung U gegenüber dem Host-Computer H zu einzurichten.
  • Zu Beginn werden zwei Systemparameter t und r ausgewählt, wobei t und r positive Ganzzahlen sind, die r < t genügen. Die Auswahl dieser Werte beeinflussst die Sicherheit des Verfahrens. Ein Verfahren zum Berechnen von MACs (Nachrichtenauthentifizierungscodes) muss auch festgelegt werden; dies könnte HMAC (Hash-basierte MAC-Funktion) oder ein Blockchiffrierer basierend auf CBC-MAC („Cipher block chaining MAC") sein, so wie es zum Beispiel in ISO/IEC 9797 beschrieben wird. Welches Verfahren auch immer ausgewählt wird, es muss sowohl Schlüsselwiederherstellungs- als auch -fälschungsangriffen widerstehen. Tatsächlich ist ein Widerstehen gegenüber einer geringfügig generalisierten Version einer Schlüsselwiederherstellung erforderlich. Schlüsselwiederherstellungsangriffe umfassen normalerweise einen Angreifer, der eine Anzahl von (Nachricht, MAC) Paaren verwendet, um den Schlüssel zu finden, der verwendet wurde, um die MACs zu erzeugen. Hier sollte der Angreifer nicht in der Lage sein, irgendeinen Schlüssel zu finden, der eine vorgegebene Nachricht auf eine vorgegebene MAC abbildet, unabhängig davon, ob er der verwendete aktuelle Schlüssel war oder nicht. Durch sorgfältiges Auswählen des Algorith mus und von Algorithmusparametern sollte es möglich sein, das erwünschte Widerstehen gegen Angriffe zu erreichen.
  • Zum Zwecke der nachfolgenden Diskussion wird MK(X) verwendet, um den MAC anzugeben, der auf Daten X unter Verwendung des geheimen Schlüssels K berechnet wird.
  • Anfänglich haben der Host H und die entfernte Computervorrichtung U einen sicheren Informationsaustausch, wobei U H mit öffentlicher Information versorgt.
  • In einer ersten Ausführungsform wählt die entfernte Computervorrichtung U zum Aufsetzen des Systems eine Menge von t geheimen Schlüsseln für den MAC-Algorithmus aus, die mit K1, K2, ..., Kt bezeichnet werden. U wählt dann eine zufällige Datenfolge X aus und berechnet Vi = MKi(X)für jedes i (1 ≤ i ≤ t). U
    • – leitet dann die Werte V1, V2, ..., Vt und X an H weiter, und
    • – speichert K1, K2, ..., Kt und X sicher ab.
  • H speichert V1, V2, ..., Vt und X als die öffentliche Verifikationsinformation für U auf sichere Weise. Die Integrität dieser Information muss bewahrt werden, jedoch ist eine Geheimhaltung nicht erforderlich.
  • Bei einer Verwendung wünscht der entfernte Benutzer, sich selbst gegenüber dem Host H zu authentifizieren. Der Prozess läuft gemäß dem folgenden Protokoll ab.
    • 1. H sendet zunächst X an U.
    • 2. Im Falle eines Verlusts der Synchronisation zwischen U und H prüft U zunächst die Korrektheit von X. Falls X dann inkorrekt ist, kann U unter bestimmten Umständen der vorhergehende Wert von X prüfen, um zu sehen, ob eine Synchronisation wiederhergestellt werden kann (so wie es nachfolgend diskutiert wird). U wählt dann eine neue Menge von t geheimen Schlüsseln: K'1, K'2, ..., K't und wählt einen neuen zufälligen Wert X' aus. U berechnet auch zwei Folgen von t Werten: V'i = MK'i(X), W'i = MKi(V'1||V'2||...||V't), (1 ≤ i ≤ t)wobei hier, wie auch sonst || eine Konkatenation von Datenelementen bezeichnet. U sendet nun (W'1, W'2, ..., W't) an H.
    • 3. H wählt dann zufällig eine r-Untermenge aus {1, 2, ..., t} aus und sendet diese Untermenge an U. U wählt r geheime Schlüssel Ki1, Ki2, ..., Kir gemäß der von H gesendeten r-Untermenge aus.
    • 4. U sendet nun die r geheimen Schlüssel Ki1, Ki2, ..., Kir an H, sowie die Menge von t Werten V'1, V'2, ..., V't und den Wert X'.
    • 5. H verifiziert nun die r MAC-Werte Vi1, Vi2, ..., Vir unter Verwendung der Menge von r Schlüsseln, die von U bereitgestellt werden, und des gespeicherten Werts von X. Falls alle diese Werte korrekt sind, verifiziert H dann auch die r MAC-Werte W'i1, W'i2, ..., W'ir unter Verwendung der Menge von r Schlüsseln, die von U bereitgestellt werden, und der Werte V'1, V'2, ..., V't, die von U vorher bereitgestellt wurden. Falls alle diese MACs auch korrekt sind, akzeptiert H dann U als gültig und ersetzt X, V1, V2, ..., Vt durch X', V'1, V'2, ... V't.
  • Unter Berücksichtigung, wie t und r gewählt werden sollten, um bestimmte Angriffe zu vermeiden, werden diese Werte zunächst so gewählt, dass die Wahrscheinlichkeit, dass eine dritte Partei die Untermenge {i1, i2, .., ir} im vorhinein erfolgreich schätzen kann, vernachlässigbar ist. Das heißt, wir ordnen die Dinge so an, dass
    Figure 00110001
    vernachlässigbar ist.
    Figure 00110002
    bezeichnet die Anzahl der Möglichkeiten, r aus t auszuwählen, das heißt t!/r!(t – r)!.
  • Unter der Voraussetzung, dass t minimiert werden soll (um die Speicher- und Bandbreitenanforderung zu minimieren), dann wird diese Wahrscheinlichkeit minimiert durch Wählen von r = [t/2] (wobei r gleich der ganzzahlige Anteil von t/2 ist), weil
    Figure 00110003
    für alle i. Auch weil
    Figure 00110004
    gilt, ergibt dies
    Figure 00110005
    wenn t > 1.
  • Falls es somit notwendig ist, zu garantieren, dass die Wahrscheinlichkeit einer erfolgreichen Schätzung der Untermenge höchstens 10–9 ist, dann ist eine Auswahl von t ≥ 35 ausreichend.
  • Im Hinblick auf Host-Impersonations-Angriffe wird als nächstes angenommen, dass eine dritte Partei, zum Beispiel E, H gegenüber U verkörpern möchte, um genug zu lernen, um zu einem beliebigen späteren Zeitpunkt U gegenüber H zu verkörpern. In Schritt 3 des Protokolls kann E nur eine zufällige r-Untermenge {1, 2, ..., t} auswählen und E lernt dann eine Menge von r der geheimen Schlüssel. Jedoch wenn E in einem späteren Stadium U gegenüber H verkörpert, wird E nur erfolgreich sein, falls er/sie alle Schlüssel in der durch H ausgewählten Untermenge kennt. Die Lücken hiervon sind akzeptabel gering, solang t und r wie oben diskutiert geeignet ausgewählt werden.
  • Eine „Mann-in-der-Mitte"-Angriff muss ebenfalls bedacht werden. So wie bei jedem Authentifizierungsprotokoll ist es immer möglich, dass eine dritte Partei E einfach in dem Kommunikationskanal zwischen U und H sitzt und Nachrichten zwischen den beiden weiterleitet. Dies wird nur dann eine wirkliche Gefahr, falls E in der Lage ist, einen Teil der Nachrichten zu verändern und/oder sie in irgendeiner Weise neu zu ordnen. Wir schauen uns nun nacheinander die verschiedenen Nachrichten an, um zu sehen, ob dies möglich ist.
    • – In Schritt 2 könnte E einige oder alle MAC-Werte W'i ändern. Unter der Voraussetzung, dass in diesem Stadium E keinen der Schlüssel Ki kennt, ist jedoch die Wahrscheinlichkeit, dass die modifizierten Werte korrekt sind, vernachlässigbar gering (weil angenommen wird, dass Fälschungsangriffe nicht handhabbar sind).
    • – In Schritt 3 könnte E die Untermenge ändern, dann ist jedoch die Menge der Schlüssel, die in Schritt 4 zurückgegeben werden, nicht korrekt.
    • – In Schritt 4 könnte E einige oder alle der geheimen Schlüssel Kij ändern und/oder einige oder alle der MAC-Werte V'i. Ein erfolgreiches Ändern der Werte V'i würde die Kenntnis der Schlüssel K'i erfordern, jedoch wurde noch keiner von ihnen von U preisgegeben. Ein Verändern der geheimen Schlüssel Kij wird durch die Tatsache verhindert, dass H sie unter Verwendung der Werte Vij prüfen kann. (Ein Verändern dieser Verifikations-MACs würde die Kenntnis der vorhergehenden Menge von Schlüsseln erfordern und ein Verändern dieser vorhergehenden Schlüssel würde ein Verändern der vorhergehenden Verifikations-MACs erfordern usw.).
  • Es gibt natürlich einen einfachen und effektiven „Denial-of-Service"-Angriff gegen das Protokoll. Eine dritte Partei E kann einfach in das Protokoll mit U eingreifen durch Verkörpern von H. Wenn U versucht, sich gegenüber dem wirkli chen H zu authentifizieren, wird U einen verschiedenen X-Wert gegenüber demjenigen haben, der von H in dem ersten Schritt des Protokolls gesendet wurde.
  • Es gibt zwei Hauptmöglichkeiten, mit welchen hiermit umgegangen werden kann. Erstens kann U einfach den Versuch, sich gegenüber H zu authentifizieren, abbrechen und dafür sorgen, dass das System neu gestartet wird. Zweitens kann U „alte" X-Werte beibehalten (zusammen mit der entsprechenden Menge an Schlüsseln) und diese verwenden, um das Authentifizierungsprotokoll abzuschließen. Jedoch hat ein solcher Prozess abhängig von der Wahl von t und r sehr ernste Gefahren.
  • Wenn r auf [t/2] gesetzt wird, würde selbst ein zweimaliges Durchführen des Prozesses die Systemsicherheit vollständig zerstören. Eine böswillige dritte Partei E kann H gegenüber U unter Verwendung zweier disjunkter r-Untermengen von {1, 2, ..., t} zweimal verkörpern. Dies würde bedeuten, dass E alle der Schlüssel K1, K2, ... Kt erhält (oder alle bis auf einen von ihnen, falls t ungerade ist). Im Ergebnis würde E imstande sein, U gegenüber H beliebige oft zu verkörpern.
  • Falls demnach der gleiche gesetzte Schlüssel mehr als einmal verwendet werden kann, müssen r und t geeignet gewählt werden. Auch muss U einen Zähler implementieren, um die Häufigkeit einzuschränken, mit der jede bestimmte Schlüsselmenge für den Authentifizierungsprozess verwendet wird. Die Grenze für diesen Zähler wird durch die Wahl von t und r bestimmt, so wie es nachfolgend detailliert beschrieben wird.
  • Somit ist eine Möglichkeit des Einschränkens der Folge von „Denial-of-Service"-Angriffen durch böswillige dritte Parteien, die den Host-Computer verkörpern, einer Schlüsselmenge zu erlauben, mehr als einmal verwendet zu werden. Dies kann auch notwendig sein, falls der Authentifizierungsprozess zwischen Benut zer und Host-Computer auf halbem Wege fehlschlägt, zum Beispiel aufgrund eines Kommunikationsfehlers.
  • Falls eine Schlüsselmenge bis maximal c mal verwendet wird (dies wird durch den von U gehaltenen Zähler erzwungen), dann sollte es der Fall sein, dass jede Partei mit einer Kenntnis von c verschiedenen zufälligen r-Untermengen der Menge von t Schlüsseln K1, K2, ..., Kt mit einer vernachlässigbaren Wahrscheinlichkeit alle Mitglieder einer weiteren zufällig ausgewählten r-Untermenge von Schlüsseln kennen sollte.
  • Um die notwendigen Wahrscheinlichkeiten zu berechnen, werden vereinfachende Annahmen gemacht (pessimistisch aus der Sicht eines legitimierten Benutzers). Angenommen, dass durch Pech oder durch eine Host-Verkörperung alle der c verschiedenen r-Untermengen wechselseitig disjunkt sind. Dies erfordert, dass die Wahrscheinlichkeit gering ist, dass eine zufällig ausgewählte r-Untermenge von {1, 2, ..., t} nicht irgendein Element einer speziellen Untermenge der Größe t – cr enthält.
  • Angenommen, dass c, r und t positive Ganzzahlen sind, die r (c + 1) < t genügen. Falls S eine Untermenge von {1, 2, ..., t} der Größe cr ist, dann ist die Wahrscheinlichkeit, dass R, eine zufällig ausgewählte r-Untermenge von {1, 2, ..., t}, eine Untermenge von S ist, gleich
    Figure 00140001
  • Dann ist die Anforderung, dass c, r und t so zu wählen sind, dass
    Figure 00140002
    klein ist, was nach oben durch (cr/t)r begrenzt ist. Beispielsweise garantiert ein Setzen von r = 32 und t = 64c, dass die Wahrscheinlichkeit eines erfolgreichen Angriffs geringer als 2–32 ist.
  • Die erste Ausführungsform des Protokolls minimiert den Speicher, der benötigt wird, um die notwendigen Daten zu speichern, benötigt jedoch vier Datenübertragungen zwischen der entfernten Computervorrichtung und dem Host. In der zweiten Ausführungsform können die Schritte 1 und 2 mit jeweils den Schritten 3 und 4 verschmolzen werden, um ein zweischrittiges Protokoll zu erhalten. Dies geht auf Kosten einer Erhöhung von langfristigen Speichererfordernissen. Das zweite Protokoll wird wie folgt betrieben.
  • In der Aufbauphase wählt die entfernte Computervorrichtung U zwei Mengen von t geheimen Schlüsseln für den MAC-Algorithmus, die aktuelle Menge, die mit K1, K2, ..., Kt bezeichnet wird, und die anhängige Menge, die durch K1, K2, ..., Kt angegeben wird, aus. U wählt zwei zufällige Datenfolgen, die als Schlüsselmengenindikatoren verwendet werden, aus, die durch X und X' bezeichnet werden (für die aktuellen und anhängigen Schlüsselmengen). U berechnet nun Verifikations-MACs sowohl für die aktuellen als auch für die anhängigen Schlüsselmengen als Vi = MKi(X) und V'i = MK'i(X')für jedes i (1 ≤ i ≤ t). U berechnet dann auch eine weitere Menge von t MACs W'i = MKi(V'1|| ...||V't), (1 ≤ i ≤ t).
    • U
    • – leitet dann die beiden Mengen von Verifikationswerten und die entsprechenden Schlüsselmengenindikatoren (V1, V2, ..., Vt, X) und (V'1, V'2, ..., V't, X') an H weiter,
    • – leitet die t MACs (W'1, W'2, ..., W't) an H weiter, und
    • – speichert die beiden Schlüsselmengen mit deren entsprechenden Indikatoren auf sichere Weise, d.h. (K1, K2, ..., Kt, X) und (K'1, K'2, ..., K't, X').
  • H speichert die von U empfangene Information auf sichere Weise. Die Integrität dieser Information muss bewahrt werden, eine Geheimhaltung ist jedoch nicht erforderlich.
  • In Verwendung wünscht der entfernte Benutzer sich gegenüber dem Host-Computer H zu authentisieren. Der Prozess wird wie folgt durchgeführt.
    • 1. H wählt eine zufällige r-Untermenge von {1, 2, ..., t}, zum Beispiel {i1, i2, ..., ir} und sendet diese Untermenge zusammen mit dem aktuellen Schlüsselmengenindikator X an U.
    • 2. Im Falle des Verlusts der Synchronisation zwischen U und H prüft U zunächst die Korrektheit von X. Falls dann X inkorrekt ist, kann U unter besonderen Umständen den vorhergehenden Wert von X prüfen, um zu sehen, ob die Synchronisation wiederhergestellt werden kann (wie bereits diskutiert).
  • U wählt dann eine neue Menge von t geheimen Schlüsseln: K''1, K''2, ..., K''t aus und wählt einen neuen zufälligen Schlüsselmengenindikator X'' aus. U berechnet auch zwei Sequenzen von t Werten: V''i = MK''i(X''), W''i = MK'i(V''1||V''2||...||V''t), (1 ≤ i ≤ t).
  • U sendet nun X'', (V''1, V''2, ..., V''t) und (W''1, W''2, ..., W''t) an H.
  • U sendet auch die r geheimen Schlüssel Ki1, Ki2, ..., Kir an H.
    • 3. H verifiziert nun die r MAC-Werte Vi1, Vi2, ..., Vir unter Verwendung der Menge von r Schlüsseln, die von U bereitgestellt wurden, und der gespeicherten Werte von X. Falls alle diese Werte korrekt sind, verifiziert dann H auch die r MAC-Werte W'i1, W'i2, ..., W'ir unter Verwendung der Menge von r Schlüsseln, die von U bereitgestellt wurden, und der gespeicherten Werte V'1, V'2, ..., V't. Falls alle diese MACs auch korrekt sind, akzeptiert dann H U als gültig und ersetzt:
    • • X, V1, V2, ..., Vt mit X', V'1, V'2, ..., V't,
    • • X', V'1, V'2, ..., V't mit X'', V''1, V''2, ..., V''t,
    • • W'1, W'2, ..., W't mit W''1, W''2, ..., W''t.
  • Es ist auch wesentlich, die Speicher-, Berechnungs- und Kommunikationskomplexität der Ausführungsformen des Protokolls zu berücksichtigen.
    • • Speicher: für die erste Ausführungsform sind die Anforderungen an den Host, t MACs und einen zufälligen Wert zu speichern; die Anforderungen an den Benutzer sind, t Schlüssel zu speichern. Während einer Ausführung des Protokolls müssen sowohl der entfernte Benutzer als auch der Host weitere 2t MACs speichern und der Benutzer muss auch zusätzliche t Schlüssel temporär speichern. Für die zweite Ausführungsform erhöhen sich die langfristigen Speicheranforderungen für den Host und den Benutzer jeweils auf 3t MACs und 2t geheime Schlüssel. Falls der Benutzer „alte" Schlüsselmengen zum Zwecke einer Resynchronisation behält, geschieht dies weiterhin auf Kosten von t Schlüsseln, einem zufälligen Wert und einem Benutzungszähler für jede beibehaltene alte Menge.
    • • Berechnung: für beide Ausführungsformen verifiziert der Host-Computer 2r MACs und wählt eine zufällige r-Untermenge von {1, 2, ..., t} aus und der Benutzer erzeugt 2t MACs.
    • • Kommunikation: der Benutzer sendet dem Host insgesamt 2t MACs, einen zufälligen Wert und r geheime Schlüssel und der Host-Computer sendet dem Benutzer eine r-Untermenge von {1, 2, ..., t}.
  • Um zu sehen, was dies in der Praxis bedeuten kann, wird angenommen, dass die erste Ausführungsform in einer solchen Weise verwendet wird, dass eine bestimmte Schlüsselmenge bis zu c = 3 mal verwendet werden kann und dass der Benutzer eine „alten" Schlüsselmenge zum Zwecke einer Resynchronisation behält. Wir wählen somit r = 32 und t = 196. Angenommen, dass der verwendete MAC ein HMAC basierend auf SHA-1 ist („Secure Hash Algorithm" – vgl. ISO/IEC 9792-2 und 10118-3) mit MACs und Schlüsseln von jeweils 160 Bit, und weiterhin angenommen, dass X 128 Bit enthält. Dann muss der Benutzer 2t Schlüssel, zwei zufällige Werte und einen Zähler (den wir ignorieren, da er einen vernachlässigbaren Platz benötigt) speichern – dies ergibt 392 × 20 + 32 Byte, d.h. weniger als 8 kByte, mit zusätzlichen 12 kByte an kurzfristigem Speicher, der während einer Protokollausführung benötigt wird. Der Host muss ungefähr 4 kByte an MACs speichern mit zusätzlichen 8 kByte an kurzfristigem Speicher, der während einer Ausführung des Protokolls benötigt wird. Während einer Verwendung des Protokolls muss der Benutzer 392 MACs und der Host 64 MACs berechnen. Die zwischen dem Host und dem Benutzer während des Protokolls insgesamt auszutauschenden Daten betragen ungefähr 8,5 kByte.
  • Eine weitere Modifikation an beiden Ausführungsformen kann verwendet werden, um die Sicherheit zu verbessern. In Fällen, in welchen c > 1, d.h. in welchen Schlüsselmengen mehr als einmal verwendet werden können, kann eine böswil lige Entität, die den Host verkörpert, die Untermengen {1, 2, ..., r} disjunkt frei auswählen, um eine maximale Anzahl an geheimen Schlüsseln zu lernen. Dies maximiert die (geringe) Wahrscheinlichkeit, dass diese böswillige Entität den Benutzer gegenüber dem wirklichen Host verkörpert. Um dies zu vermeiden, d.h., um die Schwierigkeit eines Aufsetzens eines Host-Impersonations-Angriffs zu erhöhen, können wir das Protokoll so modifizieren, dass weder der entfernte Benutzer noch der Host die r-Untermenge {i1, i2, ..., ir} aus {1, 2, ..., t} auswählt. Dies kann erreicht werden, durch Voranstellen der zweiten Ausführungsform von zwei zusätzlichen Nachrichten und auch durch Verwenden einer geeigneten kollisionsresistenten Einwege-Hash-Funktion, d.h. eine, bei der die Eingabe in die Hash-Funktion nicht aus der Ausgabe rekonstruiert werden kann, und bei der es berechnungsmäßig nicht zu handhaben ist, zwei verschiedene Eingaben zu finden, die die gleiche Ausgabe produzieren. Diese beiden zusätzlichen Nachrichten können mit den ersten beiden Nachrichten der ersten Ausführungsform verschmolzen werden.
  • Das revidierte Protokoll der zweiten Ausführungsform ist wie folgt:
    • 1. H wählt eine zufällige Menge rH, einer Länge aus, die mit der verwendeten Schlüssellänge vergleichbar ist, berechnet h(rH) (wobei h eine vorbestimmte Hash-Funktion ist) und sendet h(rH) an U.
    • 2. U wählt einen zufälligen Wert rU der gleichen Länge wie rH aus und sendet ihn an H.
    • 3. H berechnet h(rH||rU) und verwendet dies als Ausgangswert eines Pseudo-Zufallszahlengenerators (PRNG) einer geeigneten Charakteristik, um eine r-Untermenge {i1, i2, ..., ir} aus {1, 2, ..., t} zu erzeugen – dieser PRNG kann zum Beispiel auf h basieren. H sendet nun rH und X an U.
    • 4. U prüft zunächst rH unter Verwendung des Wertes h(rH) der vorher gesendet wurde. U berechnet nun die r-Untermenge {i1, i2, ..., ir} neu und fährt fort, wie in Schritt 2 der zweiten Ausführungsform.
  • Es ist anzumerken, dass durch ein Senden von h(rH) in dem ersten Schritt H an den zufälligen Wert rH gebunden ist, ohne ihn zu offenbaren. Dies verhindert, dass irgendeine Partei die Zufallswerte der anderen Parteien lernt, bevor sie ihre eigenen auswählt. Dies wiederum verhindert, dass irgendeine Partei selbst einen kleinen Teil der r-Untermenge auswählt. Obwohl dieses Schema das Protokoll verlängert, reduziert es weiterhin geringfügig die Kommunikationskomplexität, da die r-Untermenge nicht länger übertragen werden muss.
  • Die beschriebenen Authentifizierungsprotokolle haben den Vorteil, eine symmetrische Kryptographie zu verwenden und nur ein Speichern von öffentlicher Information bei dem verifizierenden Host zu erfordern. Die Berechnungs- und Speicheranforderungen sind nicht-trivial, können aber dennoch für Entwickler von preisgünstigen Authentifizierungsvorrichtungen für entfernte Benutzer potentiell attraktiv sein, die die Komplexität der Implementierung von digitalen Signaturen vermeiden wollen.

Claims (16)

  1. Verfahren zum Authentisieren eines entfernten Benutzers an einem Host-Computer in einem Datenkommunikationssystem, wobei der entfernte Benutzer eine entfernte Computervorrichtung verwendet, in der der Host-Computer eine aktuelle Datenfolge und eine aktuelle Menge von Verifikationswerten speichert, die von der entfernten Computervorrichtung unter Verwendung der aktuellen Datenfolge und einer aktuellen Menge von geheimen Schlüsseln berechnet werden, die von der entfernten Computervorrichtung ausgewählt und gespeichert werden, dadurch gekennzeichnet, dass das Verfahren umfasst: Auswählen einer nächsten Datenfolge und einer nächsten Menge von geheimen Schlüsseln, Berechnen der nächsten Menge von Verifikationswerten unter Verwendung der nächsten Datenfolge und der nächsten Menge von geheimen Schlüsseln und Berechnen einer Menge von Prüfwerten unter Verwendung der nächsten Menge von Verifikationswerten und der aktuellen Menge von geheimen Schlüsseln bei der entfernten Computervorrichtung; die Übertragung der nächsten Datenfolge, der nächsten Menge von Verifikationswerten und der Menge von Prüfwerten in verschlüsselter Form von der entfernten Computervorrichtung an den Host-Computer; zufälliges Auswählen einer Untermenge der aktuellen Menge von Schlüsseln und Erhalten der Untermenge der aktuellen Menge von Schlüsseln in verschlüsselter Form von der entfernten Computervorrichtung bei dem Host-Computer; Verifizieren der korrespondierenden Untermenge der aktuellen Menge von Verifikationswerten unter Verwendung der aktuellen Datenfolge und der Untermenge der aktuellen Menge von Schlüsseln bei dem Host-Computer; dann die Verifikation der korrespondierenden Untermenge der Menge von Prüfwerten unter Verwendung der nächsten Datenfolge und der Untermenge der aktuellen Menge von Schlüsseln; und der Ersetzung der aktuellen Datenfolge und der aktuellen Menge von Verifikationswerten mit der nächsten Datenfolge und der nächsten Menge von Verifikationswerten.
  2. Verfahren zum Authentisieren eines entfernten Benutzers an einem Host-Computer nach Anspruch 1, wobei der Host-Computer die nächste Menge von Verifikationswerten verifiziert, bevor sie anstelle der vorherigen Menge gespeichert werden.
  3. Verfahren zum Authentisieren eines entfernten Benutzers an einem Host-Computer nach einem der vorherigen Ansprüche, wobei jede Menge von Verifikationswerten unter Verwendung eines Nachrichtenauthentisierungscodealgorithmus berechnet wird.
  4. Verfahren zum Authentisieren eines entfernten Benutzers an einem Host-Computer nach Anspruch 1 oder 3, wobei die Anzahl an geheimen Schlüsseln in einer Menge zwischen 35 und 200 liegt und die Anzahl an geheimen Schlüsseln in der Untermenge kleiner oder gleich der Hälfte der Anzahl in der Gesamtmenge ist.
  5. Verfahren zum Authentisieren eines entfernten Benutzers an einem Host-Computer nach einem der Ansprüche 1 bis 4, wobei die Untermenge der aktuellen Menge von geheimen Schlüsseln durch eine Prozedur ausge wählt wird, die sowohl die entfernte Computervorrichtung als auch den Host-Computer einbindet.
  6. Verfahren zum Authentisieren eines entfernten Benutzers an einem Host-Computer nach einem der Ansprüche 1 bis 5, wobei der Host-Computer eine Datenfolge und eine Menge von Verifikationswerten speichert, während die entfernte Computervorrichtung eine Menge von geheimen Schlüsseln und die Datenfolge speichert, und es während des Authentisierungsprozesses drei Datenübertragungen gibt, erstens ein Senden der nächsten Datenfolge, der nächsten Menge von Verifikationswerten und der Menge von Prüfdaten von der entfernten Computervorrichtung zu dem Host, zweitens ein Senden der zufällig ausgewählten Untermenge von dem Host an die entfernte Computervorrichtung und drittens ein Senden der Untermenge der aktuellen Menge von Schlüsseln von der entfernten Computervorrichtung an den Host.
  7. Verfahren zum Authentisieren eines entfernten Benutzers an einem Host-Computer nach einem der Ansprüche 1 bis 5, wobei der Host-Computer aktuelle und anhängige Datenfolgen, die korrespondierenden beiden Mengen von Verifikationswerten, die jeweils aus einer korrespondierenden Menge von geheimen Schlüsseln berechnet werden, und eine Menge von Prüfwerten speichert, während die entfernte Computer-Vorrichtung die beiden Mengen von geheimen Schlüsseln und die aktuellen und anhängige Datenfolgen speichert, und es während des Authentisierungsprozesses zwei Datenübertragungen gibt, erstens ein Senden der zufällig ausgewählten Untermenge von dem Host an die entfernte Computervorrichtung und zweitens ein Senden der Untermenge der aktuellen Menge von Schlüsseln zusammen mit der nächsten Datenfolge, der nächsten Menge von Verifikationswerten und der korrespondierenden Menge von Prüfwerten von der entfernten Computervorrichtung an den Host.
  8. Verfahren zum Authentisieren eines entfernten Benutzers an einem Host-Computer nach Anspruch 7, wobei die aktuelle Datenfolge, die aktuelle Menge von Verifikationswerten und die Menge von Prüfwerten nach einer Verifikation der Untermenge von Verifikationswerten und Prüfwerten verworfen werden, wobei der Host die anhängigen und nächsten Datenvektoren und Mengen von Verifikationswerten und die nächste Menge von Prüfwerten speichert.
  9. Verfahren zum Authentisieren eines entfernten Benutzers an einem Host-Computer nach einem der Ansprüche 6 bis 8, wobei der Authentifikationsprozess auch die Übertragung der aktuellen Datenfolge von dem Host-Computer an die entfernte Computervorrichtung umfasst, um die Synchronisation zwischen dem Host-Computer und dem entfernten Benutzer zu prüfen.
  10. Verfahren zum Authentisieren eines entfernten Benutzers an einem Host-Computer nach Anspruch 6 und 9, wobei die Übertragung der aktuellen Datenfolge eine weitere Datenübertragung bildet, die den drei Datenübertragungen vorangeht.
  11. Verfahren zum Authentisieren eines entfernten Benutzers an einem Host-Computer nach Anspruch 7 und 9, wobei die Übertragung der aktuellen Datenfolge mit der Übertragung der zufälligen Untermenge kombiniert wird.
  12. Computernetzwerk, in dem Computer, die mit dem Netzwerk verbunden sind, angeordnet sind, um als der Host-Computer und die entfernte Computervorrichtung gemäß dem Verfahren nach einem der Ansprüche 1 bis 11 betrieben zu werden.
  13. Computerlesbares Signal, umfassend Anweisungen, um zu ermöglichen, dass ein entfernter Benutzer an einem Host-Computer gemäß dem Verfahren nach einem der Ansprüche 1 bis 11 authentisiert wird.
  14. Computerverwendbares Medium mit einer darin verwirklichten computerlesbaren Programmcodeeinrichtung, um zu ermöglichen, dass ein entfernter Benutzer an einem Host-Computer gemäß dem Verfahren nach einem der Ansprüche 1 bis 11 authentisiert wird.
  15. System zum Authentisieren eines entfernten Benutzers an einem Host-Computer, wenigstens umfassend einen entfernten Computer mit einem Prozessor und einen Host-Computer mit einem Prozessor, wobei jeder Prozessor Anweisungen ausführt, um den entfernten Computer in die Lage zu versetzen, sich an dem Host-Computer gemäß dem Verfahren nach einem der Ansprüche 1 bis 11 zu authentisieren.
  16. Computerprogramm, um einen entfernten Benutzer in die Lage zu versetzen, an einem Host-Computer gemäß dem Verfahren nach einem der Ansprüche 1 bis 11 authentisiert zu werden.
DE60211008T 2001-11-03 2002-11-01 Authentifizierung eines entfernten benutzers zu einem host in einem datenkommunikationssystem Expired - Lifetime DE60211008T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GBGB0126426.6A GB0126426D0 (en) 2001-11-03 2001-11-03 Authentication of a remote user to a host in a data communication system
GB0126426 2001-11-03
PCT/GB2002/004982 WO2003041357A1 (en) 2001-11-03 2002-11-01 Authentication of a remote user to a host in a data communication system

Publications (2)

Publication Number Publication Date
DE60211008D1 DE60211008D1 (de) 2006-06-01
DE60211008T2 true DE60211008T2 (de) 2006-12-07

Family

ID=9925091

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60211008T Expired - Lifetime DE60211008T2 (de) 2001-11-03 2002-11-01 Authentifizierung eines entfernten benutzers zu einem host in einem datenkommunikationssystem

Country Status (7)

Country Link
US (1) US7430666B2 (de)
EP (1) EP1440549B1 (de)
AT (1) ATE324738T1 (de)
DE (1) DE60211008T2 (de)
ES (1) ES2262855T3 (de)
GB (1) GB0126426D0 (de)
WO (1) WO2003041357A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102007012751A1 (de) * 2007-03-16 2008-09-18 Siemens Ag Vorrichtung, System, Konfigurationsverfahren und Konfigurationsvorrichtung

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080013721A1 (en) * 2005-11-30 2008-01-17 Jing-Jang Hwang Asymmetric cryptography with discretionary private key
CA2809144A1 (en) * 2010-07-23 2012-02-23 Emue Holdings Pty Ltd Encryption device and method
JP6393829B2 (ja) * 2016-06-17 2018-09-19 ヒューレット−パッカード デベロップメント カンパニー エル.ピー.Hewlett‐Packard Development Company, L.P. 交換可能なアイテムの認証
KR101934221B1 (ko) 2016-10-27 2018-12-31 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피. 교체가능 물품 인증

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5202921A (en) * 1991-04-01 1993-04-13 International Business Machines Corporation Method and apparatus for authenticating users of a communication system to each other
EP0673178B1 (de) 1994-03-17 2005-02-16 Kokusai Denshin Denwa Co., Ltd Authentifizierungsverfahren für mobile Kommunikation
FR2741465B1 (fr) * 1995-11-20 1997-12-19 Bull Sa Procede d'authentification d'un utilisateur travaillant dans un environnement distribue en mode client/serveur
JP3613929B2 (ja) * 1997-05-07 2005-01-26 富士ゼロックス株式会社 アクセス資格認証装置および方法
IL132877A (en) 1997-05-13 2003-12-10 Passlogix Inc Generalized user identification and authentication system
JP3799757B2 (ja) * 1997-07-18 2006-07-19 富士ゼロックス株式会社 被検証データ生成装置、及び被検証データ生成プログラムを記録したコンピュータ読み取り可能な記録媒体
US20020002678A1 (en) * 1998-08-14 2002-01-03 Stanley T. Chow Internet authentication technology
EP1026641B1 (de) * 1999-02-01 2013-04-24 International Business Machines Corporation Verfahren und System zur zuverlässigen Verbindungsherstellung zwischen einem Benutzer und einem Terminal
IL128609A0 (en) * 1999-02-18 2000-01-31 Nds Ltd Identification protocols
US20030033524A1 (en) * 2001-08-13 2003-02-13 Luu Tran Client aware authentication in a wireless portal system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102007012751A1 (de) * 2007-03-16 2008-09-18 Siemens Ag Vorrichtung, System, Konfigurationsverfahren und Konfigurationsvorrichtung
DE102007012751B4 (de) * 2007-03-16 2008-11-20 Siemens Ag Vorrichtung, System, Konfigurationsverfahren und Konfigurationsvorrichtung

Also Published As

Publication number Publication date
EP1440549A1 (de) 2004-07-28
ATE324738T1 (de) 2006-05-15
US7430666B2 (en) 2008-09-30
US20050050326A1 (en) 2005-03-03
EP1440549B1 (de) 2006-04-26
GB0126426D0 (en) 2002-01-02
WO2003041357A1 (en) 2003-05-15
ES2262855T3 (es) 2006-12-01
DE60211008D1 (de) 2006-06-01

Similar Documents

Publication Publication Date Title
DE60036112T2 (de) Serverunterstützte wiedergewinnung eines starken geheimnisses aus einem schwachen geheimnis
EP0472714B1 (de) Verfahren zur authentifizierung eines eine datenstation benutzenden anwenders
DE69633590T2 (de) Verfahren zur Unterschrift und zur Sitzungsschlüsselerzeugung
DE69333068T2 (de) Verfahren zur ausdehnung der gültigkeit eines kryptographischen zertifikats
DE60302276T2 (de) Verfahren zur ferngesteuerten Änderung eines Kommunikationspasswortes
DE102011011652B4 (de) Verfahren zum Verwenden eines ECDSA mit Winternitzeinmalsignatur
DE69636815T2 (de) Verfahren zur sitzungsschlüsselerzeugung mit impliziten unterschriften
DE69935913T2 (de) Leckresistente aktualisierung eines indexierten kryptographischen schlüssels
DE69433771T2 (de) Verfahren und Vorrichtung zur Geheimhaltung und Authentifizierung in einem mobilen drahtlosen Netz
DE69630331T2 (de) Verfahren zur gesicherten Sitzungsschlüsselerzeugung und zur Authentifizierung
DE60031304T2 (de) Verfahren zur authentifizierung von softwarebenutzern
DE60133266T2 (de) Verfahren und Vorrichtung zum Schutz der Datenintegrität
DE69937007T2 (de) Verfahren und vorrichtung zur verschlüsselung und entschlüsselung von daten
DE102005024725A1 (de) System und Verfahren für Chaotische Digitale Signatur, Verschlüsselung und Authentifizierung
WO1996032791A1 (de) Verfahren zum rechnergestützten austausch kryptographischer schlüssel zwischen einer benutzercomputereinheit u und einer netzcomputereinheit n
CH694601A5 (de) Verfahren zur Verifizierung der Echtheit von ausgetauschten Nachrichten.
DE69838258T2 (de) Public-Key-Datenübertragungssysteme
EP0477180A1 (de) Schlüsselverteilung in offenen kommunikationsnetzen unter berücksichtigung von sicherheitsabstufungen.
EP0903027B1 (de) Verfahren zum gruppenbasierten kryptographischen schlüsselmanagement zwischen einer ersten computereinheit und gruppencomputereinheiten
DE112012000971B4 (de) Datenverschlüsselung
EP1290905B1 (de) Verfahren zur kryptografischen identifikation einer physikalischen einheit in einem drahtlosen telekommunikationsnetzwerk
DE69734621T2 (de) Virtuelles Authentifizierungsnetzwerk für gesicherte Prozessoren
DE60202149T2 (de) Verfahren zur kryptographischen authentifizierung
DE69737806T2 (de) Datenverschlüsselungsverfahren
DE60211008T2 (de) Authentifizierung eines entfernten benutzers zu einem host in einem datenkommunikationssystem

Legal Events

Date Code Title Description
8364 No opposition during term of opposition