DE69213062T2 - Authentisierungsprotokolle für Kommunikationsnetzwerke - Google Patents

Authentisierungsprotokolle für Kommunikationsnetzwerke

Info

Publication number
DE69213062T2
DE69213062T2 DE69213062T DE69213062T DE69213062T2 DE 69213062 T2 DE69213062 T2 DE 69213062T2 DE 69213062 T DE69213062 T DE 69213062T DE 69213062 T DE69213062 T DE 69213062T DE 69213062 T2 DE69213062 T2 DE 69213062T2
Authority
DE
Germany
Prior art keywords
user
request
response
answer
equation
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 - Fee Related
Application number
DE69213062T
Other languages
English (en)
Other versions
DE69213062D1 (de
Inventor
Raymond Frederick Bird
Inder Sarat Gopal
Philippe Arnaud Janson
Shay Kutten
Refik Ahmet Molva
Marcel Mordechai Yung
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Application granted granted Critical
Publication of DE69213062D1 publication Critical patent/DE69213062D1/de
Publication of DE69213062T2 publication Critical patent/DE69213062T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • G06F21/445Program or device authentication by mutual authentication, e.g. between devices or programs
    • 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/002Countermeasures against attacks on cryptographic mechanisms
    • 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/3218Cryptographic 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 proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
    • 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/3271Cryptographic 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 challenge-response
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2103Challenge-response

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)
  • Computer And Data Communications (AREA)

Description

  • Die Erfindung bezieht sich im allgemeinen auf Verfahren, die für die nötige Sicherheit sorgen, damit unberechtigte Netzwerkbenutzer oder andere Netzwerkentitäten, zum Beispiel ein Programm, nicht eindringen können. Insbesondere bezieht sich die Erfindung auf Verfahren, um zu authentisieren, daß ein Benutzer, der versucht, Kommunikationen mit anderen Netzwerkbenutzern oder Netzknoten herzustellen, tatsächlich der Benutzer ist als den er sich selbst darstellt.
  • Die Authentisierung von Benutzern in einem Netz ermöglicht es einem Benutzerpaar, das kommunizieren möchte, seine Identitäten zu nachzuweisen. Es viele unterschiedliche Authentisierungsprotokolle, die in der Literatur erörtert wurden. Einige erfordern die Benutzung eines gemeinsamen Geheimnisses, zum Beispiel einen geheimen digitalen Schlüssel oder eine geheime mathematische Funktion, das auf einen passenden Parameter oder Parameter angewendet wird; andere benutzen öffentliche Schlüsselarten von Protokollen. Diese Erfindung befaßt sich primär mit Authentisierungsprotokollen, welche gemeinsame Geheimnisse benutzen, obwohl diese zur Benutzung in öffentlichen Schlüsselsystemen einfach angepaßt werden können.
  • Mit Bezug auf den Stand der Technik beschreibt die US Patentschrift 4,890,323, "Data Communication Systems and Methods", die am 26. Dezember 1989 von Beker veröffentlicht wurde, ein Datei- und Senderauthentisierungsverfahren, in dem eine verschlüsselte Kontrollsumme zu den Inhalten einer Nachricht addiert wird, die einen ersten privaten Schlüssel benutzt. Diese Prüf summe wird als "Aufforderung" an einen Benutzer ausgegeben, der ein Ergebnis mittels eines zweiten privaten Schlüssels berechnet. Das Ergebnis wird als Authentisierungscode vor Rückübertragung an die Antwort angehängt. Ein Empfänger der Antwort, der über die gleichen ersten und zweiten kryptographischen Schlüssel verfügt, kann deshalb sowohl die Inhalte der Nachricht als auch die Identität des Senders kontrollieren, indem ein erwarteter Authentisierungscode aus der empfangenen Antwort berechnet und mit dem empfangen Code verglichen wird.
  • Die US Patentschrift 4,919,545, "Distributed Security Procedure for Intelligent Networks", die am 24. April 1990 von C. Yu herausgegeben wurde, beschreibt ein Dateiauthentisierungsverfahren. Ein Ausführungsknoten überträgt eine Fähigkeit und eine Unterschrift an einen Aufrufknoten. Die Fähigkeit enthält einen Namen von der Datei und Zugriff srechte zu einer Datei. Die Unterschrift wird aus dem Ausführungsknoten durch Verschlüsselung der Fähigkeit mit einem Schlüssel gebildet, der in dem Aufrufknoten einmalig ist und nur in dem Ausführungsknoten gespeichert wird. Eine Anforderung zum Zugriff auf die Datei wird mit der Fähigkeit und der Unterschrift von dem Aufrufknoten zum Ausführungsknoten übertragen. In dem Ausführungsknoten wird die Aufforderung durch Verschlüsselung der Fähigkeit mit dem Chiffrierschlüssel, der zum Aufrufknoten gehört, authentisiert. Der Zugriff auf die Datei wird nur erlaubt, wenn die Unterschrift, die von dem Ausführungsknoten erzeugt wurde, mit der Unterschrift übereinstimmt, die von dem Aufrufknoten empfangen wurde.
  • US Patentschrift 4,193,131, mit dem Titel "Cryptographic Venfication of Operational Keys Used in Communication Networks", am 11. März 1980 von R. Lennon et al. herausgegeben. Dieses Patent beschreibt ein Verfahren zur Chiffrierschlüsselverteilung und Benutzerauthentisierung über einen gemeinsamen privaten Schlüssel. Eine erste Station chiffriert mit dem Schlüssel eine erste Prüfungsnummer, um Verschlüsselungstext zur Übertragung an die zweite Station zu liefern. In der zweiten Station wird der Verschlüsselungstext der ersten Station weiter mit dem Schlüssel chiffriert, um der zweiten Station Verschlüsselungstext zur Rückübertragung an die erste Station zu liefern. Die erste Station verschlüsselt wieder den ersten zur Prüfung dienenden Verschlüsselungstext und vergleicht diesen mit dem von der zweiten Station empfangenen Verschlüsselungstext, um zu überprüfen, daß die zweite Station die Quelle des Verschlüsselungstextes aus der zweiten Station ist. Diese Authentisierung ist nur möglich, wenn die Operationsschlüssel beider Stationen identisch sind.
  • Die US Patentschrift 4,386,233, "Cryptographic Key Notarization Methods and Apparatus", die am 31. Mai 1983 von M.E. Smid et al. herausgegeben wurde, beschreibt auch ein Schlüsselverteilungssystem und Benutzerauthentisierungsverfahren, in dem kryptographische Schlüssel durch Chiffrieren der Schlüssel mittels eines Beglaubigungsschlüssels, der von den Namen abgeleitet wird, die zu den fraglichen Benutzern gehören und eines Austauschschlüssels, der nur für berechtigte Benutzer der kryptographischen Funktion zugänglich ist, beglaubigt werden. Die Identität eines Benutzers der kryptographischen Funktion wird als eine Bedingung zum Zugriff auf einen Austauschschlüssel authentisiert. Diese Authentisierung wird durchgeführt, indem eine Paßwortbezeichnung, die von dem Benutzer mit einer vorgespeicherten Version des Paßwortes geliefert wird, die beglaubigt wurde, indem diese mit der Chiffrierfunktion mittels eines zu beglaubigenden, kryptographischen Schlüssels, der von dem Namen des entsprechenden berechtigten Benutzers und einem Austauschschlüssel abgeleitet wurde, verschlüsselt wird.
  • Die US Patentschrift 4,218,738, "Method for Authenticating the Identity of a User of an Information System", die am 19. August 1980 von M. Matyas et al. herausgegeben, beschreibt noch ein weiteres Verfahren, um zu versuchen, Benutzer in einem Netzwerk zu authentisieren. Eine Benutzerprüfungsnummer ist eine Funktion der Benutzeridentität, ein separat eingegebenes Paßwort, das zum Benutzer gehört, und ein gespeichertes Prüfmuster. Das Prüfmuster für einen Benutzer wird unter physischer Sicherheit von einem zentralen Rechner erzeugt, der eine Abweichung von einem Hauptschlüssel eines Hauptrechners ist.
  • US Patentschrift 4,549,075, "Method of Certifying the Origin of at Least One Item of Information Stored in the Memory of a First Electronic Device and Transmitted to a Second Electronic Device, and System for Carrying Out the Method", am 22. Oktober 1985 von Charles Saada herausgegeben. Dieses Patent beschreibt ein gemeinsam benutztes geheimes Authentisierungsprotokoll, das einige Probleme im Stand der Technik des darin zusammengefaßten Authentisierungsverfahrens überwinden soll. In diesem Stand der Technik authentisiert ein Benutzer B einen Benutzer A. Sowohl A als auch B benutzen gemeinsam ein Informationselement I, ein Geheimnis S und eine Funktion f(). Um eine Authentisierung zu beginnen, sendet A an B I. B antwortet mit einer Zufallszahl, einer Aufforderung, Nb. Sowohl A als auch B berechnen f(I,Nb,S). A sendet seine berechnete Antwort an B und B vergleicht diese Antwort mit seiner Berechnung. Es wird gesagt, daß A B auf ähnliche Weise authentisieren kann. Saada weist nicht darauf hin, daß dieses Protokoll des Stands der Technik in einer allgemeinen Netzwerkumgebung einfach gebrochen werden kann. Saada versucht vielmehr das Problem zu lösen, das durch das Verfahren im Stand der Technik gestellt wird, wenn A und B ein Informationselement I nicht gemeinsam benutzen sondern vielmehr ihre eigenen individuellen Informationselemente Ia und Ib haben. Saada wendet das zusammengefaßte Verfahren aus dem Stand der Technik in diesem neuen Szenario an und folgert, daß das resultierende Protokoll einfach gebrochen werden kann.
  • Somit besteht die Erfindung von Saada darin, den Benutzern zu erlauben, sich einander zu authentisieren, wenn jeder unterschiedliche Informationseinheiten Ia und Ib hat. A und B benutzen wiederum eine Funktion f () und ein Geheimnis S gemeinsam. A hat ein Informationselement Ia; B hat ein Informationselement Ib. A sendet Ia und eine Ankündigung Na an B. B schickt Element Ib und eine andere Ankündigung Nb an A zurück. A berechnet R1 = f (Na,S,p(Ia,Ib)) und K1 = f(Nb,S,p(Ia,Ib)) und sendet K1 an B. p() ist eine symmetrische Funktion, die sowohl A als auch B bekannt ist. Die Symmetrie bedeutet, daß p(Ia,Ib) p(Ib,Ia). B berechnet K2 = f(Na,S,p(Ib,Ia)) und R2 = f(Nb,S,p(Ib,Ia)) und sendet K2 an A. A vergleicht K2 mit dessen Ergebnis R1, um B zu authentisieren und B vergleicht K1 mit dessen Ergebnis R2, um A zu authentisieren. Es wird gesagt, daß dieses Protokoll sicherstellt, daß A und B aufgrund des Geheimnisses Teil der gleichen Gruppe sind, und daß A und B die sind, die sie sagen, weil die Elemente Ia und Ib gegenseitig über die symmetrische Funktion p() authentisiert werden. Es wird festgestellt, daß der Algorithmus von Saada ein Minimum von vier Nachrichtenflüssen benötigt. Es ist der vierte Fluß, der verhindert, daß dieses Verfahren durch Verfahren gebrochen wird, die nachstehend kurz beschrieben werden.
  • In noch keinem anderen bekannten Authentisierungsverfahren sendet Benutzer A zuerst eine Aufforderung Na in Form einer Ankündigung (Nachricht 1). B sendet einen verschlüsselten Wert von der Ankündigung mittels eines privaten, gemeinsam benutzten Schlüssels, um die Verschlüsselung durchzuführen, plus eine zweite Ankündigung Nb in Klartext (Nachricht 2). A schickt dann einen verschlüsselten Wert der zweiten Ankündigung an B (Nachricht 3), der überprüft, daß diese Antwort mit dem gemeinsam benutzten Schlüssel richtig verschlüsselt wurde. Dieses Protokoll verlangt drei Nachrichten. Dieses Protokoll kann jedoch, wie gezeigt werden wird, auch einfach gebrochen werden.
  • Wie aus der oben zusammengefaßten Technik ersichtlich ist, benutzen Authentisierungsverfahren verschiedene Formen von gemeinsam benutzten Geheimnissen und Datenverschlüsselung von Benutzern mittels eines gemeinsam benutzten Schlüssels, um sicherzustellen, daß die Benutzer die sind, die sie sagen. Die vorhandenen Verfahren leiden unter einer Anzahl von Problemen. In der Theorie authentisiert jeder Benutzer den anderen, da die korrekten Verschlüsselungen und/oder Entschlüsselungen nicht von einem Benutzer erzeugt werden können, der das gemeinsam benutzte Geheimnis nicht kennt. In der Praxis erfordern diese Authentisierungsverfahren jedoch entweder zu viele Nachrichtenflüsse oder zu viele Verschlüsselungs- und Entschlüsselungsoperationen oder unterliegen einer Vielzahl von erfolgreichen Angriffen.
  • Mittels des letztgenannten Authentisierungsverfahren ruft zum Beispiel in einer ersten erfolgreichen Anriffsart ein Eindringling X, der vorgibt A zu sein, den Angriff auf, indem die erste Aufforderung Na an B (Nachricht 1) gesendet wird. B sendet den verschlüsselten Wert der ersten Aufforderung E(Na) zurück, plus der zweiten Aufforderung Nb (Nachricht 2). X, der den Geheimschlüssel nicht kennt, erhält die korrekte Verschlüsselung von Nb durch Aufrufen einer anderen Verbindung (wird in der ganzen Beschreibung Referenzverbindung genannt) mit dem echten A oder einem anderen Benutzer C, der den Schlüssel kennt und überträgt Nb als erste Aufforderung der Referenzverbindung. A oder C sendet E(Nb) an X als Antwort zurück. X sendet E(Nb) an B als Antwort auf die zweite Aufforderung der anfänglichen Angriffsverbindung.
  • In einer zweiten Angriffsart als weiteres Beispiel fängt X die erste Nachricht ab, die Na von A erhält, die für B bestimmt ist. X, der vorgibt B zu sein, ruft eine Referenzverbindung mit A (oder C) auf und sendet Na als Nachricht 1 der Referenzverbindung. A (oder C) antwortet mit E(Na) und einer zweiten Ankündigung Nb. x beendet dann die Referenzverbindung und sendet E(Na) in der zweiten Nachricht an A in der Angriffsverbindung.
  • Es gibt eine Anzahl von Abweichungen bei dem oben genannten Aufruf und den Abfangangriffen. In allen diesen Angriffen jedoch sammelt der Eindringling X, der das Geheimnis, das von den berechtigten Benutzern gemeinsam benutzt wird, nicht kennt, Informationen aus anderen Verbindungen und nutzt diese Information, um die erforderlichen Antworten aus den von den angegriffenen Benutzern angebotenen Aufforderungen abzuleiten. Die Verbindungen, aus denen die gesammelten Informationen erhalten werden, können bei dem angegriffenen Benutzer sein oder nicht. Soweit festgestellt werden kann, können alle bekannten Verfahren aus dem Stand der Technik, die nur drei Nachrichtenflüsse enthalten, gebrochen werden oder sind unwirksam und unnötigerweise komplex, um diese zu benutzen oder auszuwerten. Andere bekannte Verfahren, die mehr als drei Flüsse enthalten, können sicher sein oder nicht. Sogar bei den sicheren Verfahren kann jedoch die steigende Anzahl von Nachrichtenflüssen, die erforderlich sind, eine starke Verkehrsbelastung in einem Netzwerk bedeuten. Diese zusätzliche Belastung ist sonst unproduktiv und begrenzt vom Gesichtspunkt der Benutzer die Kapazität des Netzwerkes.
  • Es besteht somit ein klarer Bedarf, ein Authentisierungsprotokoll und -verfahren zu erstellen, das ansonsten immun gegen erfolgreiche Angriffe von Eindringlingen ist, die das Authentisierungsgeheimnis nicht kennen. Außerdem ist es in einer praktischen Implementierung eines Protokolls wichtig, daß die Anzahl von Nachrichtenflüssen, die erforderlich sind, um die Authentisierung auszuführen, so klein wie möglich gehalten werden, vorzugsweise drei, mit dem Risiko ansonsten das Netzwerk zu überlasten.
  • Ein Ausführungsbeispiel der Erfindung enthält das Verfahren und Mittel, um einen Benutzer für eine Kommunikationsverbindung in einem Netzwerk zu authentisieren. Ein erster Benutzer A sendet eine Aufforderung N1 an einen zweiten Benutzer B. Benutzer B sendet eine Antwort auf die Aufforderung an Benutzer A, der überprüft, daß die Antwort korrekt ist. Die Antwort ist in der Mindestform
  • f(S1, N1, D1...), wobei S1 ein gemeinsam benutztes Geheimnis zwischen den Benutzern ist, D1 eine Angabe von der Richtung des Nachrichtenflußes, der f() enthält und f() eine ausgewählte Funktion ist, so daß
  • f'(S1, N1', D1',...) = f(S1, N1, D1,...) für N1' ohne Kenntnis von S1 nicht gelöst werden kann. f'(), N1' und D1' stellen Ausdrücke in einer Referenzverbindung dar. Ein Protokoll, das gemäß der oben genannten Erfindung konzipiert wurde, ist vor sogenannten Abfangattacken sicher. Abfangattacken sind solche, in denen ein Eindringling wartet und eine Nachricht abfängt, welche eine Aufforderung von einem Benutzer A enthält. Der Eindringling ruft dann eine Referenzverbindung mit einem anderen Benutzer als dem beabsichtigten Empfänger der abgefangenen Aufforderung auf und versucht, Informationen in der Referenzverbindung zu sammeln, um die richtige Antwort in der abgefangenen Aufforderung zu erzeugen.
  • Ein zweites Ausführungsbeispiel der Erfindung ist ein Verfahren und Mittel von sich gegenseitig authentisierenden Benutzern. Eine erste Aufforderung N1 wird von einem Benutzer A an einen zweiten Benutzer B übertragen. Als Reaktion auf die erste Aufforderung erzeugt B eine erste Antwort auf die Aufforderung und eine zweite Aufforderung N2 an A und sendet diese. A überprüft, daß die erste Antwort korrekt ist. A erzeugt dann eine zweite Antwort auf die zweite Aufforderung an B und sendet diese, wobei die zweite Antwort überprüft wird. Die erste Antwort muß in einer Mindestform sein von
  • f(S1, N1,...) und die zweite Antwort muß in der Mindestform
  • g(S2, N2,...) sein. S1 und S2 sind gemeinsam benutzte Geheimnisse zwischen A und B. Außerdem werden f() und g() ausgewählt, so daß die Gleichung f'(S1, N1',...) = g(S2, N2,...) für N1' ohne Kenntnis von S1 und S2 nicht gelöst werden kann. f'() und N1' stellen Ausdrücke in einer Referenzverbindung dar, die ein Eindringling benutzt, Informationen in einem Versuch zu sammeln, um das Protokoll in einer Angriffsverbindung zu brechen.
  • Ein spezifisches Authentisierungsprotokoll, das gemäß dem zweiten Ausführungsbeispiel konzipiert ist, ist vor sogenannten Aufrufangriffen sicher. Aufrufangriffe sind solche, bei denen ein Eindringling zuerst eine Verbindung mit einem Benutzer aufruft, indem er diesem die erste Aufforderung sendet und nachdem er die Antwort und die zweite Aufforderung erhalten hat, ruft der Eindringling eine zweite Referenzverbindung mit einem Benutzer auf, um Informationen zu erhalten, die ihm bei seiner Antwort auf die zweite Aufforderung helfen.
  • In einigen Protokollen, welche die oben genannten zusammengefaßten Anforderungen erfüllen, können die Geheimnisse in den spezifischen Funktionen f() und g() vorhanden sein, die benutzt werden. In anderen Protokollen kann die Datenverschlüsselung mit dem Geheimnis benutzt werden, das sich in dem verwendeten Chiffnerschlüssel oder den verwendeten Chiffnerschlüsseln befindet.
  • Beide Ausführungsbeispiele der Erfindung können in einem Protokoll kombiniert werden. In diesem Fall enthält die Funktion f() eine Richtungsangabe D1 des Nachrichtenflußes, der f() wie in f(S1, N1, D1,...) enthält. Diese Protokolle, die alle die oben genannten Bedingungen der kombinierten Ausführungsbeispiele erfüllen, sind sowohl vor Aufruf- als auch Abfangattacken sicher wie das darunterliegende Geheimnis oder gemeinsam benutzte Geheimnis von berechtigten Benutzern. Es sollte vermerkt werden, daß ggf. S1 gleich S2 sein kann. Ferner kann das Geheimnis oder können die Geheimnisse virtuell von irgendeiner Art sein. Somit könnte der besondere Schlüssel oder die besonderen Schlüssel ein Geheimnis sein, der bzw. die zur Verschlüsselung von Daten benutzt werden. Alternativ könnten die Geheimnisse die besonderen Funktionen f() und g() sein, die zwischen berechtigten Benutzern benutzt werden. Oder das Geheimnis könnte der besondere Algorithmus oder die Algorithmen sein, der bzw. die zum Verschlüsseln oder Entschlüsseln von Daten, usw. verwendet werden.
  • Das Verfahren zur Authentisierung von einer Vielzahl von Benutzern oder einem einzigen Benutzer gemäß der vorliegenden Erfindung enthält die Schritte, die in den Ansprüchen 1 und 5 ausgeführt sind.
  • Dieses Verfahren ist in Verbindung mit einer Anordnung zu benutzen, die in Anspruch 12 ausgeführt ist und für die Authentisierung von einer Vielzahl von Benutzern bestimmt ist und in Anspruch 18 für die Authentisierung eines einzelnen Benutzers bestimmt ist.
  • In der Zeichnung,
  • Fig. 1 zeigt eine allgemeine Ansicht von einem Beispiel eines Datenkommunikationssystems, in dem die Erfindung praktisch umgesetzt werden kann;
  • Fig. 2 zeigt die allgemeine Form von Protokollen gemäß der Erfindung, die vor Aufrufangriffen von Eindringlingen schützt.
  • Fig. 3 zeigt Einzelheiten eines Aufrufsangriffs durch einen Eindringling;
  • Fig. 4 und Fig. 5 zeigen jeweils ein Beispiel eines Protokolls, das durch einen Aufrufangriff verletzt werden kann;
  • Fig. 6 zeigt ein spezifisches Protokoll, das sicher vor Aufrufen aber nicht sicher vor Abfangangriffen ist;
  • Fig. 7 zeigt Einzelheiten eines Abfangangriffs;
  • Fig. 8 zeigt die allgemeine Form der Protokolle, die vor Abfangangriffen sicher sind;
  • Fig. 9 zeigt Beispiel eines Protokolls, das sowohl vor Abfang- als auch vor Aufrufangriffen nicht sicher ist;
  • Fig. 10 und Fig. 11 zeigt ein Beispiel eines Protokolls, das sicher vor Abfangangriffen aber nicht sicher vor Aufrufangriffen ist;
  • Fig. 12 zeigt ein Beispiel eines Protokolls, das sowohl vor Aufruf- als auch vor Abfangangriffen sicher ist;
  • Fig. 13 zeigt eine alternative Darstellung einer allgemeinen Form des Protokolls gemäß der Erfindung, die sicher vor Aufruf- und Abrufangriffen ist;
  • Fig. 14 bis Fig. 16 zeigen Beispiele von spezifischen Protokollen, die sicher sind und welche die allgemeinen Formen aus Fig. 13, 8 und 2 anwenden; und
  • Fig. 17 bis Fig. 21 zeigen Beispiele von Flußdiagrammen der Programme, die in einem Mehrzweckrechner oder einem speziellen Computer verwendet werden können, um das Verfahren der Erfindung durchzuführen.
  • Fig. 1 zeigt eine allgemeine Ansicht von einem Beispiel eines Datenkommunikationssystems, in dem die Erfindung praktisch umgesetzt werden kann. Dieses Systembeispiel enthält eine Anzahl von datenverarbeitenden Benutzern 100, 102 und 104. Jeder Benutzer enthält oder hat Zugriff auf einen Computer oder eine Datenverarbeitungseinheit, zum Beispiel 106, und die entsprechenden Peripheneeinheiten 108, um mit anderen Benutzern des Systems über Kanäle, zum Beispiel 110, zu kommunizieren. Ein Computer bei einem Benutzer kann ein Mehrzweckrechner oder spezieller Computer sein, der gemäß den hier beschriebenen Grundsätzen programmiert werden kann. In dem bevorzugten Ausführungsbeispiel enthalten diese Computer System 370 Computer, die von der IBM Company vertrieben werden.
  • In Fig. 1, wenn ein Benutzer 100, versucht, eine logische Verbindung mit einem anderen Benutzer 102 herzustellen, ist es erforderlich, daß beide Benutzer gemeinsam das Geheimnis S kennen und sich die Benutzer gegenseitig mittels eines geeigneten Authentisierungsprotokoll authentisieren können, bevor die verständliche Kommunikation über die logische Verbindung erlaubt wird.
  • Fig. 2, zeigt die allgemeine Form einer Protokollfamilie, die vor Angriffen durch einen Eindringling X sicher sein kann. Ein Benutzer A, der eine Verbindung aufruft, sendet eine Nachricht 1, die eine Aufforderung N1 enthält, an den Benutzer B, mit dem die Kommunikation erstellt wird. N1 und alle Aufforderungen sind vorzugsweise Zufallsnummern oder Ankündigungen. In jedem Fall sollten Aufforderungen neu erzeugt werden, so daß es für Eindringlinge keine Möglichkeit der Nutzung gibt, die auf historischen Ereignissen basiert. B sendet eine Nachricht 2 an A in der Form f(S, N1, N2, X2) zurück. N2; wobei f() eine Funktion ist, welche die Antwort auf die Aufforderung N1 ist, S stellt ein Geheimnis dar, das von den berechtigten Benutzern A und B gemeinsam benutzt wird, das erforderlich ist, um die Antwort zu erzeugen, und N2 ist eine Aufforderung von B an A. Die Variablen S und N1 in f() sind fett in Fig. 2 dargestellt, um anzugeben, daß diese Variablen in einer Form in Funktion f() vorhanden sein müssen. Die verbleibenden Variablen N2 und X2 können oder können nicht vorhanden sein. X2 ist eine allgemeine Variable, die hier verwendet wird, um irgendeine gewünschte Konstante oder irgendeinen Ausdruck darzustellen, der in f() enthalten sein könnte. X2 enthält zum Beispiel Zugriffsinformation, Namen, Zeitstempel, usw. Es wird angenommen, daß nichts, was in X2 enthalten ist, Teil des Geheimnisses S ist. Mit anderen Worten es wird angenommen, daß ein Eindringling X X2 kennt. Benutzer A sendet dann die Nachricht 3, welche die Antwort g(S, N2, N1, X3) enthält, an die Aufforderung N2. Die Variablen S und N2 in g() sind ähnlich fett dargestellt, um anzugeben, daß diese in einer Form in Funktion g() vorhanden sein müssen. X3 ist ähnlich wie X2, da diese irgendeine gewünschte Konstante oder irgendeinen Ausdruck darstellt, der in g() enthalten sein könnte. Es wird angenommen, daß X X3 kennt. Außerdem muß, damit das Protokoll vor Angriffen sicher ist, in denen ein Eindringling X versucht, Verbindungen aufzurufen, f() eine erste Bedingung erfüllen, die ein Eindringling nicht aus einer ersten Aufforderung N1' in einer Referenzverbindung auswählen kann, so daß f'() = g(), wobei f'() f() in einer Referenzverbindung darstellt. Wenn diese Bedingung erfüllt wird, dann ist das resultierende Protokoll sicher vor Aufrufangriffen wie dies das darunterliegende Geheimnis S ist.
  • Die Bedeutung der vorbereiteten Notation ( ' ) wie oben wird besser mit Bezug auf Fig. 3 ersichtlich, welche die Benutzung einer Referenzverbindung durch einen Eindringling zeigt, um Informationen zu sammeln, um eine wirkliche Verbindung anzugreifen. In Fig. 3 ruft der Eindringling X eine Verbindung mit Benutzer A auf, indem er die erste Aufforderung N1 in Nachricht 1 der Angriff sverbindung sendet. A sendet seine Antwort f() auf die Aufforderung zurück und eine Aufforderung N2 an X in Nachricht 2 der Angriff sverbindung. X kennt nicht das Geheimnis S, das benötigt wird, um die Antwort auf N2 zu erzeugen. Bei einem Versuch, diese Information zu erhalten, ruft X eine Referenzverbindung auf, indem er eine weitere erste Aufforderung N1' an einen Benutzer in 300 sendet. Dieser zweite Benutzer A oder ein anderer Benutzer B oder C sein. Dies spielt keine Rolle, solange der andere ausgewählte Benutzer das Geheimnis S kennt. Benutzer 300 beantwortet die Aufforderung N1' mit der Antwort
  • 1. Gleichung f'() = (S, N1', N2', x2').
  • X versucht nun, die von 300 empfangene Information zu manipulieren, um die Antwort g() in Nachricht der Angriffsverbindung zu erzeugen. Somit ist eine erforderliche Bedingung, diesen Angriff zu verhindern
  • C1: X kann nicht N1' wählen, so daß f'() = g() ist.
  • Fig. 4 zeigt ein spezifisches Protokoll, das sicher zu sein scheint, aber tatsächlich einfach gebrochen werden kann, da es nicht die Bedingung C1 erfüllt. Die Funktion f() in Nachricht 2 von Fig. 4 ist
  • 2. Gleichung f() = E[N1] + N2,
  • wobei E die Verschlüsselung mit einem Geheimschlüssel K darstellt. Das + Operationszeichen in der Gleichung ist anhand des Beispiels die Boolesche Operation EXKLUSIV-ODER. Somit erfüllt f() die Anforderungen, da es eine Funktion von N1 und S ist (S ist die Verschlüsselung E mit Schlüssel K). Um das Protokoll zu prüfen, legen wir mathematisch die Bedingung C1 an:
  • Bedingung C1:
  • 3. Gleichung f'() = g(), oder
  • 4. Gleichung E[N1] + N2' = E.
  • Fig. 5 zeigt eine Angriff sverbindung und eine Referenzverbindung, die ein Eindringling X benutzen könnte, um zu versuchen, das Protokoll zu brechen. Es ist zu bemerken, daß die Antwort in Nachricht 2 der Referenzverbindung
  • ist, die genau das gleiche Format wie die oben genannte Gleichung 4 hat. Somit, indem nur N1' = N2 ausgewählt wird, das aus Nachricht 2 von der Angriffsverbindung bekannt ist, empfängt X in Nachricht 2 der Referenzverbindung
  • E[N2] + N2', N2'.
  • N2' ist eine neue Aufforderung in der Referenzverbindung und nicht gleich N2. Nichtsdestoweniger kennt X jetzt E[N2] + N2'. Da N2' auch bekannt ist, weil dieses als Klartextaufforderung in der gleichen Nachricht 2 der Referenzverbindung empfangen wird, leitet X nur E[N2] durch EXLUSIV-ODER Operation N2' mit E[N2] + N2' ab.
  • 5. Gleichung E[N2] + N2' + N2' = E[N2]
  • und sendet diesen Wert als Antwort in Nachricht 3 der Angriffsverbindung.
  • Fig. 6 zeigt ein Beispiel eines Protokolls das sicher vor Aufrufangriffen ist. In diesem Protokoll
  • 6. Gleichung f() = E[N1 + E[N1]] und
  • 7.Gleichung g() = E[N2].
  • f() erfüllt die Bedingungen, d.h. ist eine Funktion der Aufforderung N1 und ein Geheimnis S und daß g() eine Funktion von Aufforderung N2 und Geheimnis S ist. Nun prüfen wir Bedingung C1, um zu bestimmen, ob das Protokoll tatsächlich vor Aufrufangriffen sicher ist.
  • Bedingung C1:
  • 8. Gleichung f'() = g(), oder
  • 9. Gleichung E[N1' + E[N1']] = E[N2].
  • Die Prüfung der Gleichung 9 zeigt, daß es keinen bekannten Wert von N1' gibt, der ersetzt werden kann, der in E[N2] resultiert, ohne den Chiffnerschlüssel K zu kennen. Durch Entfernen der Verschlüsselung, die auf beiden Seiten der Gleichung angelegt wurde, ergibt sich außerdem die
  • 10. Gleichung N1' + E[N1] = N2, oder
  • 11. Gleichung N1' = E[N1'] + N2.
  • Da X E nicht kennt, gibt es keinen Weg, daß X N1' ableiten kann. Deshalb ist dieses besondere Protokoll vor Aufrufangriffen sicher.
  • Es gibt jedoch einen zweiten Angriffsmodus, der sogar Protokolle, die sicher vor Aufrufangriffen sind, auch angreifbar machen kann. Wir bezeichnen diesen Angriffsmodus als Abfangangriffe. Fig. 7 zeigt einen solchen Angriff in Form einer Angriffsverbindung und einer Referenzverbindung. Bei dieser Art des Angriffs wartet X und fängt eventuell eine Aufrufaufforderung von Benutzer A ab, die für den Benutzer B bestimmt ist. X ruft dann eine Referenzverbindung mit einem dritten Benutzer auf. Der dritte Benutzer kann A oder C sein. Es ist für Analysezwecke bemerkenswert, daß der Referenzbenutzer nicht der ursprünglich beabsichtigte Empfänger sein kann. Abfangangriffe, bei denen ein Eindringling X nur Nachrichten von A abf ängt und diese an ihre beabsichtigte Bestimmung B sendet, sind äquivalent zu dem Eindringling X, der nur den Datenfluß von A nach B beobachtet. Diese Angriffe können niemals mit Benutzerauthentisierungsprotokollen geschützt werden. Wenn man von solchen Angriffen betroffen ist, weil zum Beispiel seine Datenleitungen physisch nicht vor Anzapfungen qeschützt werden können, dann muß man den in der Verbindung nachfolgenden Datenfluß durch zusätzliche Maßnahmen schützen, zum Beispiel durch Datenverschlüsselung.
  • Mit Bezug auf Fig. 7 wird festgestellt, daß, um erfolgreich in der Abfangangriffsverbindung zu sein, X die Antwort auf die Aufforderung N1 in der Nachricht 1 der Angriffsverbindung ableiten muß. Um versuchen, dies so zu machen, sendet X eine Aufforderung N1' an einen dritten Benutzer A oder C als erste Nachricht einer Referenzverbindung. X empfängt f'(S, N1',...) als Antwort auf seine Aufforderung und eine zweite Aufforderung N2' in der zweiten Nachricht der Referenzverbindung. Somit benötigt X, um die Gleichung zu lösen
  • 12. Gleichung f'(S, N1',...) = f(S, N1,...).
  • Eine notwendige Bedingung C2, welche ein Protokoll sicher vor Abfangangriffen machen würde, ist deshalb, daß X nicht in der Lage ist, eine Aufforderung N1' zu wählen, so daß
  • 13. Gleichung f'() = f().
  • Die bloße Überprüfung der Gleichung 13 ergibt jedoch, daß dies immer in dem Protokollformat von Fig. 7 gemacht werden kann. Somit ist das Brechen des Protokolls von Fig. 6 bei der Benutzung eines Abfangangriffs belanglos. Alles was ein Eindringling braucht, ist N1' = N1 zu wählen.
  • Um dieses Problem zu lösen, ist eine notwendige Anforderung, um die Abfangart des Angriffs zu verhindern, daß ein Anzeiger D in f() eingeschlossen wird, der die Richtung des Nachrichtenflußes anzeigt, wie dies in Fig. 8 abgebildet ist. Dies wird als f(S,N1,D,...) in Nachricht 2 dargestellt, wobei D der Flußrichtungsanzeiger ist. Es spielt keine Rolle, welche Form D an- nimmt, solange wie diese in einer bestimmten Richtung einmalig ist. D könnte zum Beispiel gleich mit der gesendeten Benutzerkennung sein, die in Fig. 8 B ist. Alternativ dazu, wenn A und B die fraglichen Benutzer sind, könnte A B als seinen Richtungsanzeiger benutzen und B könnte A benutzen. Alles, was in einer gegebenen Verbindung erforderlich ist, ist, daß der Flußanzeiger für jede Flußrichtung einer Nachricht einmalig ist.
  • Es ist erforderlich, daß D in f() wie oben gezeigt eingeschlossen wird. Dies ist jedoch noch nicht ausreichend. Es ist mathematisch noch erforderlich, die Bedingung C2 zu prüfen, wie dies dargestellt werden wird.
  • Nehmen wir das Beispiel von Fig. 9, in der f() genommen wird, um E[N1 + D], D = A als Fluß von A nach B und D = B als Fluß von B nach A zu sein. Zum Zwecke der Analyse sollte ausgeführt werden, daß die Werte von A und B, usw. einem Eindringling X bekannt sind. Es wird angenommen, daß der Eindringling X eine Referenzverbindung mit A erstellt. Anwendung von Bedingung C2,
  • 14. Gleichung f'() = f(),
  • 15. Gleichung E[N1' + A'] = E[N1 + B].
  • Es muß klar sein, daß die vorbereitete Notation in A' in den Gleichungen 14 und 15 und ähnliche Notation woanders nur bedeuten, daß die Variable in einer Referenzverbindung vorhanden ist. Mit anderen Worten A' = A. Gleichung 15 kann ohne Kenntnis des Chiffrierschlüssels K nicht gelöst werden, weil A' und B unterschiedlich und in den Daten codiert sind. Durch Entfernen des Chiffrieroperationszeichens E von beiden Seiten der Gleichung erhalten wir
  • 16. Gleichung N1' + A' = N1 + B oder
  • 17. Gleichung N1' = N1 + B + A'.
  • Da X sowohl B als auch A' kennt, muß X nur N1' in Nachricht 1 der Referenzverbindung auf N1 + B + A' setzen, wobei N1 aus Nachricht 1 der Angriffsverbindung erhalten wird. X wird
  • 18. Gleichung E[N1 + B + A' + A'] = E[N1 + B]
  • in Nachricht 2 der Referenzverbindung erhalten. Dies ist natürlich die Antwort, die in Nachricht 2 der Angriffsverbindung benötigt wird. Somit ist dieses Protokoll vor Abfangarten von Angriffen nicht sicher. Es ist zu bemerken, daß dieses Protokoll auch nicht vor Aufrufangriffen sicher ist. Dies kann einfach durch die Prüfbedingung C1 [f'() = g()], die zuvor erörtert wurde, überprüft werden.
  • Fig. 10 zeigt ein Beispiel eines Protokolls, das die Bedingung C2 durchläuft. D.h. es ist vor Abfangangriffen sicher. Es wird jedoch festgestellt, daß das Protokoll nicht vor Aufrufangriffen sicher ist. In diesem Protokoll
  • 19. Gleichung f() = E[D + E[N1]] und
  • 20. Gleichung g() = E[D + E[N2]],
  • wobei D der Flußrichtungsanzeiger ist. Es wird daran erinnert, daß D für f() und g() unterschiedlich ist, da die Flußrichtung für jede dieser Funktionen anders ist. X ruft die Nachricht 1 von Benutzer A ab, die für B bestimmt ist. X ruft dann eine Referenzverbindung mit C auf, um Informationen zu sammeln. Bei Anwendung von Bedingung C2 in Fig. 10
  • 21. Gleichung f'() = f()
  • 22. Gleichung E[C' + E[N1']] = E[B + E[N1] oder
  • 23. Gleichung C' + E[N1'] = B + E[N1].
  • Gleichung 23 kann in zwei unterschiedliche Gleichungen geteilt werden, um zu versuchen, diese zu lösen. Somit
  • 24. Gleichung C' = B und
  • 25. Gleichung E[N1'] = E[N1].
  • Da es für C' unmöglich ist, gleich B zu sein, ist dieses Protokoll vor Abfangangriffen sicher. Das Protokoll ist jedoch vor Aufrufangriffen noch nicht sicher. Fig. 11 zeigt den Aufrufangriff auf dieses Protokoll. Es wird daran erinnert, daß X sich als B ausgibt, somit ist der Richtungsanzeiger in Nachricht der Angriffsverbindung B. Bei Anwendung von C1:
  • 26. Gleichung f'() = g()
  • 27. Gleichung E[B' + E[N1']] = E[B + E[N2]] oder
  • 28. Gleichung B' + E[N1'] = B + E[N2].
  • Durch Teilung der Gleichung 28 Ergebnisse
  • 29. Gleichung E[N1'] = E[N2] oder
  • 30. Gleichung N1' = N2.
  • Somit kann X erfolgreich einen Angriff auf dieses Protokoll starten, indem er nur N1' in Nachricht 1 der Referenzverbindung gleich N2 setzt, die von A in Nachricht 2 der Angriffsverbindung empfangen wird.
  • Fig. 12 zeigt ein spezifisches Protokoll, das sowohl vor Aufruf- als auch Abfangattacken sicher ist. In diesem Protokoll
  • 32. Gleichung f() = E[B + E[N1]] und
  • 33. Gleichung g() = E[N2]].
  • Es ist zu bemerken, daß das Protokoll dem von Fig. 11 sehr ähnlich ist, das gezeigt wurde und vor Abfangangriffen nicht sicher ist. Dies zeigt sehr gut die Notwendigkeit der Prüfbedingungen C1 und C2 für irgendein spezifisches Protokoll, sogar obwohl das Protokoll den anderen, aufgezählten Anforderungen entspricht. Bei Anwendung von C1 (und angenommen, daß die Referenzverbindung mit A gehalten wird):
  • 34. Gleichung f'() = g(),
  • 35. Gleichung E[A' + E[N1']] = E[N2],
  • 36. Gleichung A' + E[N1'] = N2,
  • 37. Gleichung E[N1'] = N2 + A'.
  • Obowohl ein Eindringling X E[N1'] ableiten kann, bevor die Referenzverbindung aufgerufen wird, kann X N1' noch nicht für die Aufrufaufforderung in der Referenzverbindung ohne Kenntnis des Schlüssels K ableiten. Somit ist C1 erfüllt.
  • Bei Anwendung der Bedingung C2:
  • 38. Gleichung f'() = f(),
  • 39. Gleichung E[A' + E[N1']] = E[B + E[N1]].
  • Durch Entfernen des Operationszeichens von beiden Seiten der letzten Gleichung und Teilung des Ergebnisses in zwei Teile er gibt
  • 40. Gleichung A' = B und
  • 41. Gleichung N1' = N1.
  • A' kann jedoch niemals gleich B sein. Somit wird C2 erfüllt und das Protokoll ist sicher.
  • Die oben genannten Analysen sind nun ausreichend, um jedem Fachmann zu ermöglichen, Protokollfamilien auf völlige Authentisierungssicherheit zu konzipieren und zu analysieren. Die Bedingungen für völlige Sicherheit vor Aufruf- und Abfangangriffen kann in knappen Worten wie folgt angegeben werden:
  • 1. Die Antwort auf eine erste Aufforderung von A an B muß eine geheime Funktion der Aufforderung sein,
  • 2. Die Antwort auf eine zweite Aufforderung von B an A muß eine geheime Funktion der zweiten Aufforderung sein,
  • 3. Die Antwort auf die erste Aufforderung von A an B muß eine Angabe des Richtungsflußes der Antwort enthalten, und
  • 4. Beide Bedingungen C1 und C2 müssen erfüllt werden.
  • Fig. 13 zeigt das allgemeine Format einer Protokollfamilie, die den vier Forderungen entspricht, die oben bezüglich der Sicher- heit ausgeführt wurden. Einige der spezifischen Protokolle, die dieser allgemeinen Form entsprechen sind sicher und einige sind nicht sicher. Die Bedingungen C1 und C2 müssen für ein spezifisches Protokoll geprüft werden. Die Antwort auf die erste Aufforderung N1 ist in Form von
  • E[q op E[r]].
  • Die Antwort auf die zweite Aufforderung N2 ist in Form von
  • E[t].
  • In einer Familie, die in dieser allgemeinen Form definiert ist:
  • 42. Gleichung q = q(N1,...),
  • 43. Gleichung r = r(D,...), und
  • 44. Gleichung t = t(N2,...).
  • In einer anderen Familie
  • 45. Gleichung q = q(D,...),
  • 46. Gleichung r = r(N1,...), und
  • 47. Gleichung t = t(N2,...).
  • Wir prüfen nun einige Beispiele von Protokollen, welche das eine oder das andere dieser beiden allgemeinen Formate erfüllen und außerdem die Bedingungen C1 und C2 erfüllen.
  • Mittels einer Analyse, die ähnlich der ist, die für Fig. 12 benutzt wird, kann gezeigt werden, daß das Protokolldoppel von Fig. 12, nämlich
  • 48. Gleichung f() = E[N1 + E[D]] und
  • 49. Gleichung g() = E[N2]
  • völlig sicher ist. Der Schlüssel zu diesen letzten beiden Protokollen und eine Myriade von zugehörigen Protokollen, die als sicher gezeigt werden können, ist die Verschlüsselung des Richtungsanzeigers (oder der ersten Aufforderung), verbunden mit der verschachtelten Verschlüsselung der ersten Aufforderung (oder Richtungsanzeiger).
  • Fig. 14 zeigt ein bevorzugtes Ausführungsbeispiel eines Protokolls gemäß der Erfindung. In diesem bevorzugten Ausführungs beispiel
  • 50. Gleichung f() = E[j() + k()] und
  • 51. Gleichung g() = k() + E[N1], wobei
  • 52. Gleichung j() = N1 + B und
  • 53. Gleichung k() = E[N2 + E[N1]].
  • Das Folgende liefert die rationale Erklärung für die spezifischen Elemente der Funktionen f() und g(). Das erste Element von j() ist für die oben ausgeführten Bedingungen nicht unbedingt erforderlich. Dieses Element fügt zusätzliche Zufälligkeiten zu dem gesamten Ausdruck f() hinzu. Das Element kann weggelassen werden und das Protokoll wird noch zufriedenstellend arbeiten. Das Hinzufügen von Zufälligkeiten in f() erhlht die kryptographische Stärke des Protokolls und macht es einem Eindringlich schwerer, den codierten Algorithmus selbst mittels Techniken zum Brechen von Schlüsseln zu knacken.
  • Die inklusive-ODER Schaltung von Element B (der Name des aufgerufenen Benutzers) in j() wird von der Bedingung C2 benötigt und verhindert Abf angangriffe.
  • Das Element N2 in k() fügt weitere Zufälligkeiten zu der Antwort in Nachricht 2 hinzu. Dieses Element könnte auch entfernt werden, und das Protokoll wurde zufriedenstellend arbeiten. Das Element E(N1) in k() ist für die Bedingung C1 erforderlich. Es ist wichtig, die Aufforderung von Benutzer A in der Antwort von B zu haben. Da es nicht wichtig ist, daß dieses Element verschlüsselt wird, wird somit dem Protokoll eine zusätzliche Stärke hinzugefügt.
  • Ein letztes Beispiel für eine Protokollfamilie, welche das allgemeine Format und die Bedingungen erfüllt, die oben ausgeführt wurden, wird nur vorgestellt. Diese Familie enthält den Richtungsanzeiger des Nachrichtenflußes im Geheimschlüssel, der zu Verschlüsselung benutzt wird, als diesen vielmehr in die Daten zu integrieren, die zu verschlüsseln sind. Ein Mitglied der Familie ist in Fig. 16 dargestellt. Sowohl Benutzer A als auch B kennt einen Geheimschlüssel K. B bereitet seine Antwort in Nachricht 2 auf die Aufforderung N1 von A vor, indem diese mit K + B verschlüsselt wird, wobei B die Identität von B darstellt. Das '+' Operationszeichen wird wiederum als Boolesche EXKLUSIV-ODER Operation genommen, obwohl es irgendeine Art von Boolescher oder mathematischer Operation sein kann. A verschlüsselt seine Antwort in der Aufforderung N2 von B, indem er diese mittels des unveränderten Wertes von K verschlüsselt. Wie dies von der Erfindung verlangt wird, ist die Antwort von B auf die Aufforderung N1 eine Geheimfunktion der Aufforderung N1. Ähnlich ist die Antwort von A auf die Aufforderung N2 eine geheime Funktion von N2. Der Richtungsfluß einer Nachricht wird in die Antworten auf eine Weise integriert, die sowohl A als auch B ableiten können, indem verschiedene Chiffrierschlüssel verwendet werden, um die Antworten zu codieren. Nun lassen Sie uns das Ergebnis gemäß den Bedingungen C1 und C2 prüfen. C1:
  • 54. Gleichung f'() = g(), oder
  • 55. Gleichung Eb[N1'] = E[N2], wobei
  • E = die Verschlüsselung mit dem Geheimschlüssel K und Eb = Verschlüsselung mit K + B ist.
  • Das Schreiben der Bedingung spricht für sich selbst. Es gibt keinen Weg, um mathematisch Glieder zu löschen, um die benötigte N1' abzuleiten, da die Chiffnerschlüssel auf beiden Seiten der Gleichung unterschiedlich und einem Eindringling unbekannt sind. Jemand der K nicht kennt, kann die Gleichung nicht lösen.
  • 56. Gleichung f'() = f() oder
  • 57. Gleichung Eb[N1'] = Ea[N1].
  • Es ist zu bemerken, daß die rechte Seite der Gleichung mit Schlüssel Ea chiffriert wird. Dies bedeutet für Benutzer A oder irgendeinen anderen Benutzer, mit Ausnahme von B, daß ein Eindringling in eine Referenzverbindung gelangen könnte, um Informationen zu sammeln. Ea unterscheidet sich jedoch von Eb, das benutzt wird, um die linke Seite der Gleichung zu codieren. Wenn die Referenzverbindung bei A ist, dann ist KA = K + A. Somit kann ohne die Kenntnis des Schlüssels K die Gleichung für N1' nicht gelöst werden. Somit ist diese völlig sicher.
  • Flußdiagramme als Beispiele für das Authentisierungsverfahren sind in den Figuren 17 bis 21 dargestellt. Diese besonderen Beispiele für Flußdiagramme basieren auf dem Protokoll, das in Fig. 15 gezeigt wird und der Benutzung eines Chiffnerschlüsseis (Kab), der von A und B gemeinsam benutzt wird. Jedes dieser Verfahren aus den Figuren 17 bis 21 ist jedem Benutzer bekannt und wird zu der passenden Zeit ausgeführt, was von der besonderen Rolle des Benutzers abhängt, primär (Benutzer A) oder sekundär (Benutzer), und dem Punkt innerhalb des Protokollaustauschs. Fig. 17 wird von A ausgeführt, der versucht die Kommunikationen mit B aufzurufen. Schritt 1700 erzeugt eine Ankündigung N1 als Aufforderung an B. Schritt 1702 sendet die Aufforderung N1 an B, und das Verfahren wird beendet, indem auf das Eintreffen der Antwort auf N1 und eine neue Aufforderung N2 gewartet wird.
  • Fig. 18 wird von B ausgeführt, wenn dieser eine Aufrufanforderung N1 empfängt. Schritt 1800 erzeugt zuerst eine Aufforderung N2, die als neue Aufforderung an A benutzt wird. Schritt 1804 führt die Subroutine ENTSCHLÜSSELN aus, die in Fig. 21 dargestellt ist, indem diese an die Variablen N1, N2 und den entsprechenden Schlüssel Kab gegeben wird, der gemeinsam mit Benutzer A benutzt wird, um die Antwort auf die Aufforderung N1 vorzubereiten. Mit Bezug auf Fig. 21, verschlüsselt Schritt 2100 der Subroutine VERSCHLÜSSELN zuerst den Wert von N1 mittels des Schlüssels Kab und illustrativ den DES Algorithmus. Das verschlüsselte Ergebnis wird temporär in der Variablen S1 gespeichert. Schritt 2102 führt EXKLUSIV-ODER N2 mit S1 aus und speichert das Ergebnis temporär in der Variablen S2. Schritt 2104 führt EXKLUSIV-ODER N1 mit der Identität dieses Benutzers (B) aus und dann wird mittels EXKLUSIV-ODER das Ergebnis mit S2 ausgeführt, um einen verschlüsselten Wert R zu erhalten, der an das Aufrufverfahren in Fig. 18 zurückgegeben wird. Schritt 1806 von Fig. 18 ordnet den zurückgesendeten, verschlüsselten Wert R der Variablen R1 zu und sendet R1 zusammen mit der neuen Aufforderung N2 an Benutzer A in Schritt 1808 zurück.
  • Das Verfahren in Fig. 19 wird in A als Reaktion auf den Empfang von R1 und die Aufforderung N2 ausgeführt. N1, N2 und der gemeinsam benutzte Schlüssel Kab werden dann an die Subroutine VERSCHLÜSSELN gegeben. Wie zuvor erörtert, VERSCHLÜSSELN berechnet die richtige Antwort auf die Aufrufanforderung N1 und sendet die Antwort an Variable R. Schritt 1904 vergleicht die richtige Antwort in R mit der Antwort R1, die von Benutzer B empfangen wurde. Wenn R nicht gleich R1 ist, ist die Authentisierung fehlerhaft und Schritt 1906 beendet sofort diese Kommunikation. Wenn R gleich R1 dann hat sich B bei A jedoch selbst richtig authentisiert.
  • A muß sich jetzt selbst bei B authentisieren. Schritt 1907 ordnet den Wert von S2 aus der Subroutine VERSCHLÜSSELN der Antwort R2 zu, die an B als dritter Nachrichtenfluß zu senden ist. Wie in Fig. 14 gezeigt, ist diese Antwort
  • E[N2 + E[N1]].
  • Der Wert von R2 = E[N2 + E[N1]] wird von der Variablen S2 erzielt, ohne daß ein anderer Verschlüsselungsschritt durchzuführen ist und mittels Schritt 1908 an B gesendet.
  • Fig. 20 zeigt die Schritte, die von Benutzer B durchgeführt werden, wenn dieser Nachricht 3 erhält, die Antwort von Benutzer A auf die Aufforderung N2 von Benutzer B. Es wird daran erinnert, daß in diesem Ausführungsbeispiel diese Antwort die Form g() hat, wobei Nachricht 2 die Form f() = j() + g() hat. Der Wert von g() = E[N2 + E[N1]] ist in der Variablen S2 bei Benutzer B verfügbar, wobei dieser früher durch die Ausführung der Schritte in Fig. 18 erzeugt wurde. In Fig. 20 vergleicht Schritt 2000 die Variable S2 mit der Antwort R2 von A. Wenn dieser Vergleich nicht genau übereinstimmt, dann hat sich A bei B selbst nicht richtig authentisiert. In diesem Fall beendet Schritt 2002 sofort die Kommunikation. Wenn die Werte übereinstimmen, dann hat sich A richtig authentisiert. In diesem Fall dient das Verfahren in Fig. 20 nur dazu, daß die Benutzern weiter miteinander kommunizieren können.

Claims (18)

1. Ein Verfahren zur Authentisierung von Benutzern in einer Kommunikationsverbindung in einem Netzwerk, das Schritte enthält um
(a) eine erste Aufforderung N1 von einem ersten Benutzer A an einen zweiten Benutzer B zu übertragen,
(b) eine erste Antwort an die erste Aufforderung N1 und eine zweite Aufforderung N2 von dem zweiten Benutzer B an den ersten Benutzer A zu übertragen,
(c) bei dem ersten Benutzer A zu überprüfen, daß die erste Antwort richtig ist,
(d) eine zweite Antwort an die zweite Aufforderung N2 von dem ersten Benutzer A an den zweiten Benutzer B zu übertragen, und
(e) bei dem zweiten Benutzer B zu überprüfen, daß die zweite Antwort richtig ist,
wobei das Verfahren zur Authentisierung dadurch gekennzeichnet wird, daß
die erste und zweite Antwort jeweils von minimalen Formen sind
f(S1, N1, ...) und g(S2, N2, ...),
wobei S1 und S2 gemeinsame Geheimnisse zwischen dem ersten und zweiten Benutzer (A,B) sind und f() und g() ausgewählte Funktionen sind, so daß
f'(S1, N1', ...) = g(S2, N2, ...) für N1' ohne die Kenntnis von S1 und S2 nicht gelöst werden kann, wobei f'() und N1' Ausdrücke in einer Referenzverbindung mit einem Benutzer darstellen, der S1 oder S2 kennt und der die richtigen ersten oder zweiten Antworten überträgt.
2. Das Verfahren aus Anspruch 1, wobei das Geheimnis S1 die mathematische Funktion f() ist und S2 die mathematische Funktion g () ist.
3. Das Verfahren aus den Ansprüchen 1 oder 2, wobei S1 = S2 = S ist und S ein Datenchiffrierschlüssel ist.
4. Das Verfahren aus Anspruch 3, wobei in f() außerdem eine Angabe von der Richtung D1 des Nachrichtenflußes integriert ist, der f() enthält wie in
f(S1, N1, D1, ...) und f() ausgewählt wird, so daß f'(S, N1', D1', ...) = f(S, N2, D1, ...)
für N1' ohne die Kenntnis von S1 und S2 nicht gelöst werden kann, wobei D1' die Flußrichtungsanzeige der Nachricht ist, welche f'() in der Referenzverbindung mit einem Benutzer enthält, der S1 oder S2 kennt und der die richtige erste oder die richtige zweite Antwort überträgt.
5. Das Verfahren aus Anspruch 1, das auf ein Verfahren zur Authentisierung eines Benutzers in einer Kommunikationsverbindung in einem Netzwerk eingeschränkt werden kann, indem
- in Schritt (b) vergessen wird, diese zweite Aufforderung N2 von dem zweiten Benutzer B an den ersten Benutzer A zu übertragen;
- vergessen wird, diese zweite Antwort an die zweite Aufforderung N2 von dem ersten Benutzer A an den zweiten Benutzer B zu übertragen; und
- bei dem ersten Benutzer A nur überprüft wird, daß die erste Antwort richtig ist, wobei die erste Antwort von minimaler Form ist
f(S1, N1, D1...),
wobei S1 ein gemeinsames Geheimnis zwischen dem ersten und zweiten Benutzer (A,B) ist, D1 eine Flußrichtungsanzeige der Nachricht ist, die f() enthält und f() eine ausgewählte Funktion ist, so daß
f'(S1, N1', D1', ...) = f(S', N1, D',...)
für N1' ohne die Kenntnis von S1 nicht gelöst werden kann, wobei f'(), N1' und D1' Ausdrücke in einer Referenzverbindung mit einem Benutzer darstellen, der das Geheimnis S1 kennt und die richtige erste Antwort überträgt.
6. Das Verfahren aus Anspruch 5, wobei das Geheimnis S1 die mathematische Funktion f() ist und S1 ein Datenchiffnerschlüssel ist.
7. Das Verfahren wie in den Ansprüchen 4 bis 5 ausgeführt, wobei
f() = E[q op E[r]], und
g() = E[t], wobei
op eine mathematische oder logische Funktion ist,
q = q(N1, mm.),
r = r(D1, mm.),
t = t(N2, am.),
E = Datenverschlüsselung mit einem Chiffnerschlüssel.
8. Das Verfahren wie in den Ansprüchen 4 bis 5 ausgeführt, wobei
f() = E[q op E[r]], und
g() = E[t), wobei
op eine mathematische oder logische Funktion ist,
q = q(D1, mm.),
r = r(N1, mm.),
t = t(N2, mm.),
E = Datenverschlüsselung mit einem Chiffnerschlüssel.
9. Das Verfahren wie in den Ansprüchen 4, 5 oder 8 ausgeführt, wobei
f() = E[D1 op E[N1]] und
g() = E[N2].
10. Das Verfahren wie in den Ansprüchen 4, 5 oder 8 ausgeführt, wobei
f() = E[N1 op E[D1]] und
g() = E[N2].
11. Das Verfahren wie in den Ansprüchen 4, 5 oder 8 ausgeführt, wobei
f() = E[N1 op [D1 op E[N2 op E[N1]]]] und
g() = E[N2 op E[N1 op E[N1]]].
12. Das Verfahren wie in den Ansprüchen 4, 5 oder 8 ausgeführt, wobei
f() = E[N1 op [D1 op E[N2 op E[N1]]]] und
g() = E[N2 op E[N1]].
13. Das Verfahren wie in den Ansprüchen 4, 5 oder 8 ausgeführt, wobei
f() = Eb[N1] und
g() = E[N2].
wobei Eb = Verschlüsselung mit Datenchiffnerschlüssel K op D1.
14. Eine Anordnung in einem Netzwerkknoten zur Authentisierung von Netzwerkbenutzern mit
Mitteln, um eine erste Aufforderung N1 an einen Benutzer zu übertragen,
Mitteln, um eine erste Antwort auf die erste Aufforderung und eine zweite Aufforderung N2 von dem Benutzer zu empfangen,
Mitteln, um die erste Antwort zu überprüfen,
Mitteln, um eine zweite Antwort auf die zweite Aufforderung an den Benutzer zu übertragen, und
Mitteln, um die zweite Antwort bei dem Benutzer zu überprüfen, dadurch gekennzeichnet, daß die erste Antwort von minimaler Form ist
f(S1, N1, ...)
und die zweite Antwort von minimaler Form ist
g(S2, N2, ...),
wobei S1 und S2 gemeinsame Geheimnisse zwischen berechtigten Benutzern sind und f() und g() ausgewählte Funktionen sind, so daß
f'(S1, N1', ...) = g(S2, N2, ...)
für N1' ohne die Kenntnis von S1 und S2 nicht gelöst werden kann, wobei f'() und N1' Ausdrücke in einer Referenzverbindung mit einem Benutzer darstellen, der S1 oder S2 kennt und der die richtigen ersten oder zweiten Antworten überträgt.
.
15. Die Anordnung aus Anspruch 14, wobei das Geheimnis S1 die mathematische Funktion f() ist und S2 die mathematische Funktion g () ist.
16. Die Anordnung aus den Ansprüchen 14 oder 15, wobei S1 = S2 = S ist und S ein Datenchiffrierschlüssel ist.
17. Die Anordnung aus den Ansprüchen 14, 15 oder 16, wobei in f() außerdem eine Angabe von der Richtung D1 des Nachrichtenflußes integriert ist, der f() enthält wie in
f(S1, N1, D1, mm.)
und f() ausgewählt wird, so daß
f'(S, N1', D1', ...) = f(S, N2, D1, ...)
für N1' ohne die Kenntnis von S1 und S2 nicht gelöst werden kann, wobei f'() einen Ausdruck in der Referenzverbindung darstellt und D1' die Flußrichtungsanzeige der Nachricht ist, welche f'() in der Referenzverbindung mit einem Benutzer enthält, der S1 oder S2 kennt und der die richtige erste oder die richtige zweite Antwort überträgt.
18. Eine Anordnung in einem Netzwerkknoten zur Authentisierung eines Netzwerkbenutzers mit
Mitteln, um eine erste Aufforderung N1 an einen Benutzer zu übertragen, und
Mitteln, um eine Antwort auf die Aufforderung von dem Benutzer zu empfangen, und
Mitteln, um die Antwort zu überprüfen, dadurch gekennzeichnet, daß die Antwort von minimaler Form ist
f(S1, N1, D1...),
wobei S1 ein gemeinsames Geheimnis zwischen dem ersten und zweiten Benutzer ist, D1 eine Flußrichtungsanzeige der
Nachricht ist, die f() enthält und f() eine ausgewählte Funktion ist, so daß
f'(S1, N1', D1', mm.) = f(S1, N1, D1,...)
für N1' ohne die Kenntnis von S1 nicht gelöst werden kann, wobei f' (), N1' und D1' Ausdrücke in einer Referenzverbindung mit einem Benutzer darstellen, der S1 kennt und die richtige erste Antwort überträgt.
DE69213062T 1991-03-20 1992-02-11 Authentisierungsprotokolle für Kommunikationsnetzwerke Expired - Fee Related DE69213062T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US07/672,226 US5148479A (en) 1991-03-20 1991-03-20 Authentication protocols in communication networks

Publications (2)

Publication Number Publication Date
DE69213062D1 DE69213062D1 (de) 1996-10-02
DE69213062T2 true DE69213062T2 (de) 1997-03-13

Family

ID=24697681

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69213062T Expired - Fee Related DE69213062T2 (de) 1991-03-20 1992-02-11 Authentisierungsprotokolle für Kommunikationsnetzwerke

Country Status (5)

Country Link
US (1) US5148479A (de)
EP (1) EP0505302B1 (de)
JP (1) JP2823103B2 (de)
CA (1) CA2059172C (de)
DE (1) DE69213062T2 (de)

Families Citing this family (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL9101796A (nl) * 1991-10-25 1993-05-17 Nederland Ptt Werkwijze voor het authenticeren van communicatiedeelnemers, systeem voor toepassing van de werkwijze en eerste communicatiedeelnemer en tweede communicatiedeelnemer voor toepassing in het systeem.
US5276735A (en) * 1992-04-17 1994-01-04 Secure Computing Corporation Data enclave and trusted path system
US5369705A (en) * 1992-06-03 1994-11-29 International Business Machines Corporation Multi-party secure session/conference
US5596718A (en) * 1992-07-10 1997-01-21 Secure Computing Corporation Secure computer network using trusted path subsystem which encrypts/decrypts and communicates with user through local workstation user I/O devices without utilizing workstation processor
US5311596A (en) * 1992-08-31 1994-05-10 At&T Bell Laboratories Continuous authentication using an in-band or out-of-band side channel
US5491752A (en) * 1993-03-18 1996-02-13 Digital Equipment Corporation, Patent Law Group System for increasing the difficulty of password guessing attacks in a distributed authentication scheme employing authentication tokens
US5475763A (en) * 1993-07-01 1995-12-12 Digital Equipment Corp., Patent Law Group Method of deriving a per-message signature for a DSS or El Gamal encryption system
US5483598A (en) * 1993-07-01 1996-01-09 Digital Equipment Corp., Patent Law Group Message encryption using a hash function
US5351295A (en) * 1993-07-01 1994-09-27 Digital Equipment Corporation Secure method of neighbor discovery over a multiaccess medium
US5544246A (en) * 1993-09-17 1996-08-06 At&T Corp. Smartcard adapted for a plurality of service providers and for remote installation of same
DE69312328T2 (de) * 1993-09-20 1998-01-08 Ibm System und verfahren zur änderung des schlüssels oder des kennwortes in einem kommunikationsnetzwerk mit schlüssel- verteilung
US5381480A (en) * 1993-09-20 1995-01-10 International Business Machines Corporation System for translating encrypted data
EP0656708A1 (de) * 1993-12-03 1995-06-07 International Business Machines Corporation System und Verfahren zur Übertragung und Gültigkeitsprüfung eines aktualisierten kryptographischen Schlüssels zwischen zwei Benutzern
US5594921A (en) * 1993-12-17 1997-01-14 Object Technology Licensing Corp. Authentication of users with dynamically configurable protocol stack
US5491749A (en) * 1993-12-30 1996-02-13 International Business Machines Corporation Method and apparatus for entity authentication and key distribution secure against off-line adversarial attacks
US5491750A (en) * 1993-12-30 1996-02-13 International Business Machines Corporation Method and apparatus for three-party entity authentication and key distribution using message authentication codes
ATE362264T1 (de) 1994-05-24 2007-06-15 Sony Corp Datenbuskommunikation
USRE38898E1 (en) 1994-05-24 2005-11-29 Sony Corporation Video data bus communication system and method
EP0693836A1 (de) * 1994-06-10 1996-01-24 Sun Microsystems, Inc. Verfahren und Einrichtung für ein Schlüsselmanagementschema für Internet-Protokolle
GB9422389D0 (en) * 1994-11-05 1995-01-04 Int Computers Ltd Authenticating access control for sensitive functions
US5822431A (en) * 1996-01-19 1998-10-13 General Instrument Corporation Of Delaware Virtual authentication network for secure processors
GB9606593D0 (en) * 1996-03-29 1996-06-05 Symmetricom Inc An antenna system
US20060195595A1 (en) 2003-12-19 2006-08-31 Mendez Daniel J System and method for globally and securely accessing unified information in a computer network
US20020133412A1 (en) * 1997-03-07 2002-09-19 David M. Oliver System for management of transactions on networks
US7324972B1 (en) * 1997-03-07 2008-01-29 Clickshare Service Corporation Managing transactions on a network: four or more parties
US5953424A (en) * 1997-03-18 1999-09-14 Hitachi Data Systems Corporation Cryptographic system and protocol for establishing secure authenticated remote access
JP3864401B2 (ja) * 1997-04-23 2006-12-27 ソニー株式会社 認証システム、電子機器、認証方法、および記録媒体
US6591291B1 (en) * 1997-08-28 2003-07-08 Lucent Technologies Inc. System and method for providing anonymous remailing and filtering of electronic mail
US7328350B2 (en) * 2001-03-29 2008-02-05 Arcot Systems, Inc. Method and apparatus for secure cryptographic key generation, certification and use
US6263446B1 (en) * 1997-12-23 2001-07-17 Arcot Systems, Inc. Method and apparatus for secure distribution of authentication credentials to roaming users
US6151676A (en) * 1997-12-24 2000-11-21 Philips Electronics North America Corporation Administration and utilization of secret fresh random numbers in a networked environment
US6243811B1 (en) * 1998-07-31 2001-06-05 Lucent Technologies Inc. Method for updating secret shared data in a wireless communication system
US6941454B1 (en) 1998-10-14 2005-09-06 Lynn Spraggs System and method of sending and receiving secure data with a shared key
IL136746A0 (en) * 1998-10-14 2001-06-14 Aegis Systems Inc System and method of sending and receiving secure data using anonymous keys
US6349338B1 (en) * 1999-03-02 2002-02-19 International Business Machines Corporation Trust negotiation in a client/server data processing network using automatic incremental credential disclosure
US6507908B1 (en) 1999-03-04 2003-01-14 Sun Microsystems, Inc. Secure communication with mobile hosts
US7810152B2 (en) * 2002-05-08 2010-10-05 Broadcom Corporation System and method for securely controlling access to device functions
US6424953B1 (en) * 1999-03-19 2002-07-23 Compaq Computer Corp. Encrypting secrets in a file for an electronic micro-commerce system
US7549056B2 (en) 1999-03-19 2009-06-16 Broadcom Corporation System and method for processing and protecting content
US7257554B1 (en) 1999-03-19 2007-08-14 Hewlett-Packard Development Company, L.P. Anonymous purchases while allowing verifiable identities for refunds returned along the paths taken to make the purchases
US6826686B1 (en) * 2000-04-14 2004-11-30 International Business Machines Corporation Method and apparatus for secure password transmission and password changes
US7870599B2 (en) * 2000-09-05 2011-01-11 Netlabs.Com, Inc. Multichannel device utilizing a centralized out-of-band authentication system (COBAS)
US7596223B1 (en) 2000-09-12 2009-09-29 Apple Inc. User control of a secure wireless computer network
US6769060B1 (en) 2000-10-25 2004-07-27 Ericsson Inc. Method of bilateral identity authentication
JP4149126B2 (ja) 2000-12-05 2008-09-10 ジーイー・メディカル・システムズ・グローバル・テクノロジー・カンパニー・エルエルシー 画像処理方法、画像処理装置および画像撮影装置
US7116668B2 (en) * 2001-10-09 2006-10-03 Telefunaktiebolaget Lm Ericsson (Publ) Method for time stamp-based replay protection and PDSN synchronization at a PCF
ATE413060T1 (de) * 2002-04-05 2008-11-15 Abb Research Ltd Verfahren zur fernsteuerung eines systems
US7293284B1 (en) 2002-12-31 2007-11-06 Colligo Networks, Inc. Codeword-enhanced peer-to-peer authentication
US8108429B2 (en) 2004-05-07 2012-01-31 Quest Software, Inc. System for moving real-time data events across a plurality of devices in a network for simultaneous data protection, replication, and access services
US7565661B2 (en) 2004-05-10 2009-07-21 Siew Yong Sim-Tang Method and system for real-time event journaling to provide enterprise data services
US7680834B1 (en) 2004-06-08 2010-03-16 Bakbone Software, Inc. Method and system for no downtime resychronization for real-time, continuous data protection
US7979404B2 (en) 2004-09-17 2011-07-12 Quest Software, Inc. Extracting data changes and storing data history to allow for instantaneous access to and reconstruction of any point-in-time data
US7904913B2 (en) 2004-11-02 2011-03-08 Bakbone Software, Inc. Management interface for a system that provides automated, real-time, continuous data protection
KR100848541B1 (ko) * 2005-05-13 2008-07-25 삼성전자주식회사 이동 아이피 버전 6에서 재전송 공격을 방지하기 위한 방법
US7689602B1 (en) 2005-07-20 2010-03-30 Bakbone Software, Inc. Method of creating hierarchical indices for a distributed object system
US7788521B1 (en) 2005-07-20 2010-08-31 Bakbone Software, Inc. Method and system for virtual on-demand recovery for real-time, continuous data protection
US8059819B2 (en) 2007-01-17 2011-11-15 Panasonic Electric Works Co., Ltd. Systems and methods for distributing updates for a key at a maximum rekey rate
US8131723B2 (en) 2007-03-30 2012-03-06 Quest Software, Inc. Recovering a file system to any point-in-time in the past with guaranteed structure, content consistency and integrity
US8364648B1 (en) 2007-04-09 2013-01-29 Quest Software, Inc. Recovering a database to any point-in-time in the past with guaranteed data consistency
CN101447872B (zh) * 2007-11-27 2011-09-28 阿里巴巴集团控股有限公司 一种用户身份验证方法、***及验证码生成维护子***
KR20090067551A (ko) * 2007-12-21 2009-06-25 삼성전자주식회사 클러스터 기반의 컨텐츠 사용 제한 및 컨텐츠 사용 방법,컨텐츠 접근 권한 인증 방법, 장치, 및 기록매체

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4193131A (en) * 1977-12-05 1980-03-11 International Business Machines Corporation Cryptographic verification of operational keys used in communication networks
US4218738A (en) * 1978-05-05 1980-08-19 International Business Machines Corporation Method for authenticating the identity of a user of an information system
US4386233A (en) * 1980-09-29 1983-05-31 Smid Miles E Crytographic key notarization methods and apparatus
FR2530053B1 (fr) * 1982-07-08 1986-04-25 Bull Sa Procede pour certifier la provenance d'au moins une information enregistree dans une memoire d'un premier dispositif electronique et transmise a un deuxieme dispositif electronique, et systeme pour la mise en oeuvre d'un tel procede
US4723284A (en) * 1983-02-14 1988-02-02 Prime Computer, Inc. Authentication system
US4926480A (en) * 1983-08-22 1990-05-15 David Chaum Card-computer moderated systems
JPS619052A (ja) * 1984-06-25 1986-01-16 Toshiba Corp 通信ネツトワ−クシステム
US4649233A (en) * 1985-04-11 1987-03-10 International Business Machines Corporation Method for establishing user authenication with composite session keys among cryptographically communicating nodes
LU86203A1 (fr) * 1985-12-11 1987-07-24 Cen Centre Energie Nucleaire Procede et appareil verifiant l'authenticite de documents lies a une personne et l'identite de leurs porteurs
DE3763872D1 (de) * 1986-03-05 1990-08-30 Holger Sedlak Kryptographie-verfahren und kryptographie-prozessor zur durchfuehrung des verfahrens.
JPS62210791A (ja) * 1986-03-12 1987-09-16 Pioneer Electronic Corp Catvシステムの盗視聴防止方式
EP0246823A3 (en) * 1986-05-22 1989-10-04 Racal-Guardata Limited Data communication systems and methods
US4748668A (en) * 1986-07-09 1988-05-31 Yeda Research And Development Company Limited Method, apparatus and article for identification and signature
GB2194415B (en) * 1986-08-20 1990-10-17 Plessey Co Plc Improvements in or relating to methods of achieving key variable exchange with mutual authentication of participants
US4850017A (en) * 1987-05-29 1989-07-18 International Business Machines Corp. Controlled use of cryptographic keys via generating station established control values
US4933970A (en) * 1988-01-19 1990-06-12 Yeda Research And Development Company Limited Variants of the fiat-shamir identification and signature scheme
JP2521785B2 (ja) * 1988-02-08 1996-08-07 日本電信電話株式会社 端末認証処理システム
EP0407465B1 (de) * 1988-03-16 2000-11-15 DigiCash Incorporated Blindunterschriftensysteme mit einer einzigen vorlage
AU622915B2 (en) * 1988-05-19 1992-04-30 Ncr Corporation Method and device for authentication
IL87549A0 (en) * 1988-08-24 1989-01-31 Amos Fiat Rsa computation method for efficient batch processing
JPH082051B2 (ja) * 1988-08-31 1996-01-10 日本電信電話株式会社 資格認証方法
US4919545A (en) * 1988-12-22 1990-04-24 Gte Laboratories Incorporated Distributed security procedure for intelligent networks
US4932056A (en) * 1989-03-16 1990-06-05 Yeda Research And Development Company Limited Method and apparatus for user identification based on permuted kernels
DE69019593T2 (de) * 1989-04-27 1996-01-25 Ibm Sichere Handhabung von Schlüsseln unter Verwendung von Kontrollvektoren mit Mehrwegüberwachung.

Also Published As

Publication number Publication date
EP0505302B1 (de) 1996-08-28
CA2059172C (en) 1996-01-16
JPH07170257A (ja) 1995-07-04
DE69213062D1 (de) 1996-10-02
EP0505302A1 (de) 1992-09-23
CA2059172A1 (en) 1992-09-21
JP2823103B2 (ja) 1998-11-11
US5148479A (en) 1992-09-15

Similar Documents

Publication Publication Date Title
DE69213062T2 (de) Authentisierungsprotokolle für Kommunikationsnetzwerke
DE69230489T2 (de) Verfahren zur Aufstellung und Durchführung eines geheimen Netzwerksicherheitsverfahrens in einem Kryptosystem mit öffentlichem Schlüssel
EP0472714B1 (de) Verfahren zur authentifizierung eines eine datenstation benutzenden anwenders
DE69416809T2 (de) Verbesserungen der Sicherheit in Datenverarbeitungssystemen
DE60029722T2 (de) Verfahren und vorrichtungen zur sicheren verteilung von öffentlichen und privaten schlüsselpaaren
DE69311581T2 (de) Verfahren und system zur authentifizierten sicheren schlüsselverteilung in einem kommunikationssystem
DE69217428T2 (de) Auf Steuervektoren beruhendes Schlüsselverteilungsverfahren mit hybridem Public-Key/DES-Algorithmus
DE60036112T2 (de) Serverunterstützte wiedergewinnung eines starken geheimnisses aus einem schwachen geheimnis
DE69221017T2 (de) Verfahren und Vorrichtung zur gegenseitigen Authentifizierung von Benutzern in einen Kommunikationssystem
DE69230429T2 (de) Sicherung/Rückgewinnung der Umgebung einer Geheimübertragungseinrichtung und Vervielfältigung in einem Kryptosystem mit öffentlichem Schlüssel
DE69534192T2 (de) Verfahren zur gemeinsamen Nutzung einer geheimen Information, zur Erzeugung einer digitalen Unterschrift und zur Ausführung einer Beglaubigung in einem Kommunikationssystem mit mehreren Informationsverarbeitungseinrichtungen und Kommunikationssystem zur Anwendung dieses Verfahrens
DE69725659T2 (de) Verfahren und Einrichtung zur Ablage eines in einem RSA-Kryptosystem benutzten Geheimschlüssels
DE60001630T2 (de) Sichere gegenseitige Netzwerkauthenifizierung und Schlüselaustauschprotokoll
DE69629857T2 (de) Datenkommunikationssystem unter Verwendung öffentlicher Schlüssel
DE69328334T2 (de) Geschäftliche Datenmaskierung
EP0477180B1 (de) Schlüsselverteilung in offenen kommunikationsnetzen unter berücksichtigung von sicherheitsabstufungen
EP1777907B1 (de) Vorrichtungen und Verfahren zum Durchführen von kryptographischen Operationen in einem Server-Client-Rechnernetzwerksystem
DE10151277A1 (de) Verfahren zur Authentifizierung eines Netzwerkzugriffservers bei einem Authentifizierungsserver
DE69431426T2 (de) System und Verfahren zur Nachrichtenauthentisierung in einem nicht-schmiedbaren Kryptosystem mit öffentlichen Schlüssel
DE60203277T2 (de) Verfahren und system zur authentifizierung eines personal security device gegenüber mindestens einem fernrechnersystem
EP1368929B1 (de) Verfahren zur authentikation
DE102013221159B3 (de) Verfahren und System zum manipulationssicheren Bereitstellen mehrerer digitaler Zertifikate für mehrere öffentliche Schlüssel eines Geräts
DE112012000971B4 (de) Datenverschlüsselung
EP3672142A1 (de) Verfahren und system zur sicheren übertragung eines datensatzes
EP4097948B1 (de) Verfahren zur datenübermittlung und kommunikationssystem

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee