DE69630331T2 - Verfahren zur gesicherten Sitzungsschlüsselerzeugung und zur Authentifizierung - Google Patents

Verfahren zur gesicherten Sitzungsschlüsselerzeugung und zur Authentifizierung Download PDF

Info

Publication number
DE69630331T2
DE69630331T2 DE69630331T DE69630331T DE69630331T2 DE 69630331 T2 DE69630331 T2 DE 69630331T2 DE 69630331 T DE69630331 T DE 69630331T DE 69630331 T DE69630331 T DE 69630331T DE 69630331 T2 DE69630331 T2 DE 69630331T2
Authority
DE
Germany
Prior art keywords
correspondent
key
function
information
further characterized
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
DE69630331T
Other languages
English (en)
Other versions
DE69630331D1 (de
Inventor
Scott .A Vanstone
Alfred John Menezes
Minghua Qu
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.)
Certicom Corp
Original Assignee
Certicom 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 Certicom Corp filed Critical Certicom Corp
Application granted granted Critical
Publication of DE69630331D1 publication Critical patent/DE69630331D1/de
Publication of DE69630331T2 publication Critical patent/DE69630331T2/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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0841Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
    • H04L9/0844Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols with user authentication or key authentication, e.g. ElGamal, MTI, MQV-Menezes-Qu-Vanstone protocol or Diffie-Hellman protocols using implicitly-certified keys
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/60Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
    • G06F7/72Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic
    • G06F7/724Finite field arithmetic
    • G06F7/725Finite field arithmetic over elliptic curves

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)
  • Storage Device Security (AREA)

Description

  • Die vorliegende Erfindung betrifft Schlüsselabkommenprotokolle zur Übertragung und Authentisierung von Geheimschlüsseln.
  • Um während dem Austausch von Information Datenschutz zu bewahren, ist es gut bekannt, Daten durch Benutzung eines Schlüssels zu verschlüsseln. Der Schlüssel muss so gewählt werden, dass die Korrespondenten in der Lage sind, Nachrichten zu verschlüsseln und zu entschlüsseln, aber so, dass ein Abfänger die Inhalte der Nachricht nicht ermitteln kann.
  • In einem Geheimschlüssel-Chiffrierprotokoll teilen die Korrespondenten einen gemeinsamen Schlüssel, der ihnen geheim ist. Das erfordert, dass sich die Korrespondenten über den Schlüssel einigen und Vorkehrungen treffen, um die Geheimhaltung des Schlüssels aufrechtzuerhalten, und für den Austausch des Schlüssels sorgen, wenn die zugrunde liegende Sicherheit beeinträchtigt sein sollte.
  • Öffentliche Schlüsselchiffrierprotokolle wurden erstmals 1976 von Diffie-Hellman vorgeschlagen und benutzten einen öffentlichen Schlüssel, der sämtlichen potenziellen Korrespondenten verfügbar gemacht wurde und einen privaten Schlüssel, der nur dem vorgesehenen Empfänger bekannt war. Die öffentlichen und privaten Schlüssel stehen so in Beziehung, dass eine mit dem öffentlichen Schlüssel eines Empfängers verschlüsselte Nachricht ohne weiteres mit dem privaten Schlüssel entschlüsselt werden kann, der private Schlüssel aber aus der Kenntnis des Klartextes des verschlüsselten Textes und des öffentlichen Schlüssels nicht abgeleitet werden kann.
  • Schlüsseletablierung ist der Vorgang, durch welchen zwei (oder mehrere) Parteien einen gemeinsamen Geheimschlüssel einführen, der Sitzungsschlüssel genannt. wird. Anschließend wird der Sitzungsschlüssel benutzt, um einige Verschlüsselungsziele zu erreichen, wie z. B. Datenschutz. Es gibt zwei Sorten des Schlüsselabkommenprotokolls; Schlüsseltransportprotokolle, in welchen ein Schlüssel von einer Partei erzeugt und sicher zur zweiten Partei übermittelt wird; und Schlüsselabkommenprotokolle, in welchen beide Parteien Information beisteuern, die den gemeinsamen Geheimschlüssel gemeinsam etablieren. Die Anzahl der erforderlichen Austäusche von Nachricht zwischen den Parteien wird Anzahl von Durchläufen genannt. Man bezeichnet ein Schlüsseletablierungsprotokoll als eine implizite Schlüsselauthentisierung (oder einfach Schlüsselauthentisierung) vorsehend, wenn eine Partei sicher ist, dass abgesehen von einer speziell identifizierten zweiten Partei keine andere Partei den Wert des Sitzungsschlüssels erfahren kann. Die Eigenschaft einer impliziten Schlüsselauthentisierung bedeutet nicht unbedingt, dass die zweite Partei tatsächlich den Sitzungsschlüssel besitzt. Man bezeichnet ein Schlüsseletablierungsprotokoll als eine Schlüsselbestätigung vorsehend, wenn eine Partei sicher ist, dass eine speziell identifizierte zweite Partei tatsächlich im Besitz eines bestimmten Sitzungsschlüssels ist. Wenn die Authentifizierung für beide in das Protokoll einbezogene Parteien zur Verfügung gestellt ist, dann wird die Schlüsselauthentisierung als gegenseitig bezeichnet, falls sie nur einer Partei zur Verfügung steht, wird die Authentifizierung als einseitig bezeichnet.
  • Es gibt unterschiedliche frühere Ansätze, welche beanspruchen, für eine implizite Schlüsselauthentisierung zu sorgen.
  • Beispiele umfassen das Nyberg-Rueppel Ein-Durchlauf-Protokoll und die Matsumoto-Takashima-Imai (MTI) und die Goss und Yacobi Zwei-Durchlauf-Protokolle für Schlüsselabkommen.
  • Die früheren Ansätze stellen sicher, dass Übertragungen zwischen Korrespondenten, um einen gemeinsamen Schlüssel zu etablieren, sicher sind, und dass ein Eindringling den Sitzungsschlüssel nicht wieder auffinden und den verschlüsselten Text nicht entschlüsseln kann. Auf diese Weise wird die Sicherheit für vertrauliche Transaktionen, wie z. B. einen Transfer von Fonds, gewährleistet.
  • Zum Beispiel führt das MTI/A0 Schlüsselabkommenprotokoll einen den zwei Korrespondenten bekannten gemeinsam benutzten geheimen Schlüssel K in der folgenden Weise ein:
    • 1. Während der anfänglichen einmaligen Einrichtung wird die Schlüsselgenerierung und Veröffentlichung durch Auswählen und Veröffentlichen einer geeigneten Systemprimzahl p und eines Generators α ∊ Z*p in einer die Authentizität gewährleistenden Weise durchgeführt. Korrespondent A wählt als einen langfristigen privaten Schlüssel eine ganze Zufallszahl "a", 1 ≤ a ≤ p – 2 und berechnet einen langfristigen öffentlichen Schlüssel zA = αa mod p. B generiert analoge Schlüssel b, zB· A und B haben Zugriff auf authentisierte Kopien des jeweils anderen langfristigen öffentlichen Schlüssels.
    • 2. Das Protokoll erfordert den Austausch der folgenden Nachrichten: A → B: αx mod p (1) A ← B: αy mod p (2) Die Werte von x und y bleiben während solcher Übertragungen sicher, weil es unmöglich ist, den Exponenten zu bestimmen, sogar wenn der Wert von α und die Potenzierung bekannt sind, natürlich unter der Voraussetzung, dass p ausreichend groß gewählt ist.
    • 3. Jedes Mal, wenn ein gemeinsamer Schlüssel benötigt wird, werden die folgenden Schritte ausgeführt, um das Protokoll zu implementieren.
    • (a) A wählt eine ganze Zufallszahl x, 1 ≤ x ≤ p – 2 und sendet B Nachricht (1), d. h. αx mod p.
    • (b) B wählt eine ganze Zufallszahl y, 1 ≤ y ≤ p – 2 und sendet A Nachricht (2), d. h. αy mod p.
    • (c) A berechnet den Schlüssel K = (αy)azB x mod p.
    • (d) B berechnet den Schlüssel K = (αx)bzA y mod p.
    • (e) Beide benutzen gemeinsam den Schlüssel K = αbx+ ay.
  • Um den Schlüssel K zu berechnen, muss A seinen geheimen Schlüssel a und die ganze Zufallszahl x benutzen, von denen beide nur ihm bekannt sind. Gleichermaßen muss B ihren geheimen Schlüssel b und die ganze Zufallszahl y benutzen, um den Sitzungsschlüssel K zu berechnen. Ein Eindringling kann einen zum anderen Korrespondenten identischen Sitzungsschlüssel nicht generieren, vorausgesetzt die geheimen Schlüssel a, b bleiben unbeeinträchtigt. Dementsprechend wird ein beliebiger verschlüsselter Text durch beide Korrespondenten nicht entschlüsselbar sein.
  • An sich wurden diese und ähnliche Protokolle als zufrieden stellend für eine Schlüsseletablierung und als widerstandsfähig gegen konventionelles Lauschen oder man-in-the-middle-Angriffe erachtet.
  • Unter bestimmten Umständen kann es für einen Widersacher vorteilhaft sein, einen Korrespondenten bezüglich der wahren Identität des anderen Korrespondenten irrezuführen.
  • Bei einem derartigen Angriff modifiziert ein aktiver Widersacher oder Eindringling E zwischen A und B ausgetauschte Nachrichten mit dem Ergebnis, dass B glaubt, dass er einen Schlüssel K gemeinsam mit E benutzt, während A glaubt, dass sie den gleichen Schlüssel K gemeinsam mit B benutzt. Selbst wenn E den Wert von K nicht erfährt, kann die Fehlinformation bezüglich der Identität der Korrespondenten nützlich sein.
  • Ein praxisnahes Szenario, in dem ein solcher Angriff erfolgreich gestartet werden kann, ist das folgende. Angenommen, B ist eine Bankfiliale und A ist ein Kontoinhaber. Zertifikate werden von der Bankzentrale ausgegeben und in dem Zertifikat befindet sich die Kontoinformation des Inhabers. Angenommen, das Protokoll zur elektronischen Einzahlung von Fonds besteht aus dem Austausch eines Schlüssels mit einer Bankfiliale mittels eines gegenseitig authentisierten Schlüsselabkommens. Wenn B die übertragende Einheit authentisiert hat, werden verschlüsselte Fonds zur Kontonummer in dem Zertifikat eingezahlt. Wird keine weitere Authentisierung in der verschlüsselten Einzahlungsnachricht vorgenommen (was der Fall sein könnte, um Bandbreite zu sparen), erfolgt die Einzahlung auf dem Konto von E.
  • Daher ist es eine Aufgabe der vorliegenden Erfindung, ein Protokoll vorzusehen, in welchem die obigen Nachteile umgangen oder abgemildert werden.
  • Gemäß der vorliegenden Erfindung ist daher ein Verfahren zum Authentifizieren eines Paares von Korrespondenten A, B vorgesehen, um Informationsaustausch untereinander zu ermöglichen, wobei jeder der Korrespondenten jeweils einen von einem Generator α abgeleiteten entsprechenden privaten Schlüssel a, b und einen öffentlichen Schlüssel pa, pb besitzt, wobei das Verfahren die Schritte beinhaltet:
    • i) ein erster der Korrespondenten A wählt eine erste ganze Zufallszahl x aus und potenziert eine den Generator umfassende Funktion f(α) mit einer Potenz g(x), um eine erste potenzierte Funktion f(α)g(x) zu liefern;
    • ii) der erste Korrespondent A schickt an einen zweiten Korrespondenten B eine Nachricht ab, welche die erste potenzierte Funktion f(α)g(x) umfasst;
    • iii) der Korrespondent B wählt eine zweite ganze Zufallszahl y aus und potenziert eine den Generator umfassende Funktion f'(α) mit einer Potenz g(y), um eine zweite potenzierte Funktion f'(α)g(y) vorzusehen;
    • iv) der zweite Korrespondent B erstellt einen Sitzungsschlüssel K aus Information, die vom ersten Korrespondenten A öffentlich gemacht wurde, und aus Information, die privat für den zweiten Korrespondenten B ist, wobei der Sitzungsschlüssel K auch vom ersten Korrespondenten A aus Information, die von B öffentlich gemacht wurde, und aus Information, die für den ersten Korrespondenten A privat ist, erstellt werden kann;
    • v) der zweite Korrespondent B erstellt einen Wert h einer Funktion F[π, K], wobei F[π, K] eine kryptographische Funktion bezeichnet, die gemeinsam auf π und K angewandt wird, und wobei π eine Untermenge der öffentlichen Information ist, die von B geliefert wurde, um die Werte von π und K zu verbinden;
    • vi) der zweite der Korrespondenten B schickt eine Nachricht an den ersten Korrespondenten A ab, welche die zweite Exponentialfunktion f'(α)g(y) und den Wert h der kryptografischen Funktion F[π, K] umfasst;
    • vii) der erste Korrespondent empfängt die Nachricht und berechnet einen Sitzungsschlüssel K' aus Information, die vom zweiten Korrespondenten B öffentlich gemacht wurde, und aus Information, die privat für den ersten Korrespondenten A ist;
    • viii) der erste Korrespondent A berechnet einen Wert h' einer kryptografischen Funktion F[π, K']; und
    • ix) die Werte, die von den kryptografischen Funktionen F erhalten wurden, werden verglichen, um ihre Übereinstimmung zu bestätigen.
  • Weil der Sitzungsschlüssel K nur durch Benutzung von Information generiert werden kann, die entweder für A oder B privat ist, hindert E das Verbinden von K mit π mit der kryptographischen Funktion h daran, K zu extrahieren oder eine neue Wertfunktion einzuwerfen, die der entspricht, die A erhalten hat.
  • Ausführungsformen der Erfindung werden nun durch Beispiele nur unter Bezug auf die begleitenden Zeichnungen beschrieben, in denen:
  • 1 eine schematische Darstellung eines Datenkommunikationssystems ist.
  • Daher bezugnehmend auf 1 tauscht ein Paar von Korrespondenten 10, 12, als Korrespondent A und Korrespondent B bezeichnet, Information über einen Kommunikationskanal 14 aus. Eine Verschlüsselungseinheit 16, 18 ist zwischen jeden der Korrespondenten 10, 12 und dem Kanal 14 geschaltet. Mit jeder der Verschlüsselungseinheiten 16, 18 ist ein Schlüssel 20 verbunden, um Klartext, der zwischen jeder Einheit 16, 18 und dessen entsprechenden Korrespondenten 10, 12 übertragen wird, in verschlüsselten Text zu konvertieren, der auf dem Kanal 14 übertragen wird.
  • Im Betrieb wird eine von Korrespondent A, 10, generierte Nachricht durch die Einheit 16 mit dem Schlüssel 20 verschlüsselt und als verschlüsselter Text über den Kanal 14 zur Einheit 18 übertragen.
  • Der Schlüssel 20 wird auf den verschlüsselten Text in der Einheit 18 angewendet, um eine Klartextnachricht für den Korrespondenten B, 12 zu generieren. Unter der Voraussetzung, dass sich die Schlüssel 20 entsprechen, wird die von dem Korrespondenten 12 erhaltene Nachricht die von dem Korrespondenten 10 gesendete sein.
  • Damit das in 1 gezeigte System funktioniert, ist es notwendig, dass die Schlüssel 20 identisch sind, und deshalb wird ein Schlüsselabkommenprotokoll etabliert, welches den Informationstransfer auf eine öffentliche Art und Weise gestattet, um die identischen Schlüssel zu etablieren. Eine Anzahl von Protokollen ist für derartige Schlüsselgenerierung erhältlich und Ausführungsformen der vorliegenden Erfindung werden im Zusammenhang mit Modifikationen von existierenden Protokollen unten beschrieben.
  • Eine allgemein verwendete Gruppe von Protokollen sind gemeinsam bekannt als die Matsumoto-Takashima-Imai oder „MTI" Schlüsselabkommenprotokolle und sind Varianten des Diffie-Hellman Schlüsselaustausches. Ihr Ziel ist es, für Parteien A und B einen geheimen Sitzungsschlüssel K zu etablieren.
  • Die Systemparameter für diese Protokolle sind eine Primzahl p und ein Generator α der multiplikativen Gruppe Z*p. Korrespondent A besitzt einen privaten Schlüssel a und einen öffentlichen Schlüssel pA = αa. Korrespondent B besitzt einen privaten Schlüssel b und einen öffentlichen Schlüssel pB = αb. In allen vier unten beispielhaft erläuterten Protokollen bezieht sich textA auf eine Informationsfolge, welche Partei A identifiziert. Wenn der andere Korrespondent B eine authentische Kopie des öffentlichen Schlüssels von Korrespondent A besitzt, dann wird textA das von einer zuverlässigen Zentrale ausgegebene Zertifikat des öffentlichen Schlüssels von A enthalten; Korrespondent B kann seine authentische Kopie des öffentlichen Schlüssels der zuverlässigen Zentrale benutzen, um das Zertifikat von Korrespondent A zu verifizieren, und daher eine authentische Kopie des öffentlichen Schlüssels des Korrespondenten A erhalten.
  • In jedem Beispiel unten wird angenommen, dass ein Eindringling E wünscht, dass von A Nachrichten als von E selbst stammend identifiziert werden. Um das zu bewerkstelligen wählt E eine ganze Zufallszahl e, 1 ≤ e ≤ p – 2, berechnet pE = (pA)e = αae mod p und erhält dieses als seinen öffentlichen Schlüssel zertifiziert. E kennt den Exponenten ae nicht, obwohl ihr e bekannt ist. Durch Ersetzen von textA mit textE nimmt Korrespondent B an, dass die Nachricht eher von E als von A stammt und benutzt den öffentlichen Schlüssel von E, um den Sitzungsschlüssel K zu generieren. E fängt auch die Nachricht von B ab und benutzt seine geheime ganze Zufallszahl e, um dessen Inhalt zu modifizieren. A benutzt dann diese Information, um den gleichen Sitzungsschlüssel zu generieren, was A gestattet, mit B zu kommunizieren.
  • Die vorliegende Erfindung wird beispielhaft durch Modifikationen an vier Protokollen aus der MTI Familie erläutert, welche diesen neuen Angriff vereiteln, und dadurch die gewünschte Eigenschaft der gegenseitigen impliziten Authentisierung erreichen. In den unten beispielhaft erläuterten modifizierten Protokollen bezeichnet F(X, Y) eine auf eine von x und y abgeleitete Folge angewendete Verschlüsselungsfunktion. Üblicherweise und wie beispielhaft erläutert wird eine Hashfunktion wie z. B. NIST „Secure Hash Algorithmus" (SHA-1) auf die durch Verknüpfung von X und Y erhaltene Folge angewendet, gemeint ist jedoch, dass auch andere Verschlüsselungsfunktionen verwendet werden können.
  • Beispiel 1 – MTI/A0-Protokoll
  • Das vorhandene Protokoll arbeitet wie folgt:
    • 1. Korrespondent A generiert eine ganze Zufallszahl x, 1 ≤ x ≤ p – 2, berechnet αx und sendet {αx, textA} an Partei B.
    • 2. Korrespondent B generiert eine ganze Zufallszahl y, 1 ≤ y ≤ p – 2, berechnet αy und sendet {αy, textB} an Partei A.
    • 3. Korrespondent A berechnet K = (αy)a(pB)x = αay +bx.
    • 4. Korrespondent B berechnet K = (αx)b(pA)y = αay+ bx.
  • Dadurch wird ein gemeinsamer Schlüssel K erhalten. Mit dieser Vereinbarung kann jedoch Eindringling E in der folgenden Weise von Korrespondent A generierte Nachrichten als von E stammend identifiziert haben.
    • 1. E fängt die Nachricht {αx, textA} von A ab und ersetzt sie durch {αx, textE}. Die Entsendung der Nachricht textE identifiziert die Nachricht als von E stammend.
    • 2. B sendet {αy, textB} an E, der dann {(αy)e, textB} an A weiterleitet. Weil A textB empfängt, nimmt er an, die Nachricht stammt von B und, da er den Wert von y nicht kennt, nimmt er an, dass αye eine gültige Information ist.
    • 3. A berechnet K = (αey)a(pB)x = αaey+ bx.
    • 4. B berechnet K = (αx)b(pE)y = αaey+ bx.
    • 5. A und B benutzen nun gemeinsam den Schlüssel K, auch wenn B glaubt, er benutzt einen Schlüssel gemeinsam mit E.
  • Folglich wird von B jede weitere Transaktion von A zu B als von E stammend betrachtet. B wird entsprechend handeln und E Instruktionen zukommen lassen. Obwohl der Eindringling E den Wert des Sitzungsschlüssels K nicht kennt, kann trotzdem die Annahme, dass die Nachricht von E stammt, nützlich sein und den gewünschten Effekt erzielen.
  • Das Protokoll wird wie folgt modifiziert, um dieses Problem zu umgehen:
    • 1. A generiert eine ganze Zufallszahl x, 1 ≤ x ≤ p – 2, berechnet αx und sendet {αx, textA} an Partei B.
    • 2. B generiert eine ganze Zufallszahl y, 1 ≤ y ≤ p – 2 und berechnet αy, K = (αx)b(pA)y = αay+ bx und einen Wert h einer kryptographischen Hashfunktion F(αy, αay+ bx), welche eine Funktion der öffentlichen Information n und des Schlüssels K ist. B sendet {αy, h, textB} an Partei A.
    • 3. A berechnet K = (αy)a(pB)x = αay+ bx. A berechnet auch einen Wert h' der kryptographischen Hashfunktion F(αy, K) und verifiziert, dass dieser Wert gleich ist mit h.
  • Wenn E versucht, seine Identifikation, textE, zwischenzuschalten, schlägt der Angriff bei den modifizierten Protokollen fehl, weil B in jedem Fall den Hashwert F(π, K) sendet, wobei π der Zufallsexponent αy von B ist und dadurch die Werte von π und K verbindet. Folglich kann E den Wert von π mit πe nicht ersetzen und F (πe, K) berechnen, weil E K nicht kennt. Obwohl E αy kennt, ist es nicht ausreichend, um K aus dem Hashwert h zu extrahieren. Auch wenn E den Wert αye zwischenschaltet, so dass die Schlüssel 20 übereinstimmen werden, werden die Werte h, h' demgemäss nicht übereinstimmen.
  • Beispiel 2 – MTI/B0-Protokoll
  • In diesem Protokoll
    • 1. generiert A eine ganze Zufallszahl x, 1 ≤ x ≤ p – 2, berechnet (pB)x = αbx und sendet {αbx, textA} an Partei B.
    • 2. B generiert eine ganze Zufallszahl y, 1 ≤ y ≤ p – 2, berechnet (pA)y = αay und sendet {αay, textB} an Partei A.
    • 3. A berechnet K = (αay)(1/a)αx = αx+y,
    • 4. B berechnet K = (αbx)(1/b)αy = αx+y.
  • Dieses Protokoll ist durch den Eindringling E angreifbar falls,
    • 1. E die Nachricht {αbx, textA} von A durch {αbx, textE} ersetzt, um sich selbst als den Urheber der Nachricht zu identifizieren.
    • 2. B sendet {(pE)y, textB} an E, der dann ((pE)y)( 1/ e) = αay berechnet und {αay, textB} an A weiterleitet.
    • 3. A berechnet K = (αay)(1/ a)αx = αx+y.
    • 4. B berechnet K = (αbx)(1/b)αy = αx+y.
    • 5. A und B benutzen nun den Schlüssel K gemeinsam, obwohl B glaubt, dass er einen Schlüssel gemeinsam mit E benutzt.
  • Dieses Protokoll kann, um dem Angriff von E zu widerstehen, wie folgt modifiziert werden:
    • 1. A generiert eine ganze Zufallszahl x, 1 ≤ x ≤ p – 2, berechnet (pB)x = αbx und sendet {αbx, textA} an Partei B.
    • 2. B generiert eine ganze Zufallszahl y, 1 ≤ y ≤ p – 2 und berechnet (pA)y = αay, K = (αbx)(1/ b)αy = αx+y und den Wert h der Hashfunktion F(αay, αx+y). B sendet {αay, h, textB} zu A.
    • 3. A berechnet K = (αay)(1/a)αx = αx+y. A berechnet auch den Wert h' der Hashfunktion F (αay, K) und verifiziert, dass dieser Wert gleich ist mit h.
  • Wieder einmal kann E den Sitzungsschlüssel K nicht ermitteln und so keinen neuen Wert der Hashfunktion generieren, um die Irreführung aufrechtzuerhalten.
  • Beispiel 3 – MTI/C0-Protokoll
  • Dieses Protokoll arbeitet wie folgt:
    • 1. A generiert eine ganze Zufallszahl x, 1 ≤ x ≤ p – 2, berechnet (pB)x = αbx und sendet {αbx, textA} an Partei B.
    • 2. B generiert eine ganze Zufallszahl y, 1 ≤ y ≤ p – 2, berechnet (pA)y = αay und sendet {αay, textB} zu Partei A.
    • 3. A berechnet K = (αay)(x/ a) = αxy.
    • 4. B berechnet K = (αbx)(y/b) = αyx.
  • Der Eindringling E kann seine Identität wie folgt zwischenschalten:
    • 1. E ersetzt die Nachricht {αbx, textA} von A durch {αbx, textE}.
    • 2. B sendet {(pE)y, textB} an E, der dann ((pE)y)(1/e) = αay berechnet und {αay, textB} an A weiterleitet.
    • 3. A berechnet K = (αay)(x/a) = αxy.
    • 4. B berechnet K = (αbx)(y/b) = αxy.
    • 5. A und B benutzen nun den Schlüssel K gemeinsam, obwohl B glaubt, dass er einen Schlüssel gemeinsam mit E benutzt.
  • Das Protokoll wird, um diesen Angriff zu vermeiden, wie folgt modifiziert:
    • 1. A generiert eine ganze Zufallszahl x, 1 ≤ x ≤ p – 2, berechnet (pB)x = αbx und sendet {αbx, textA} an Partei B.
    • 2. B generiert eine ganze Zufallszahl y, 1 ≤ y ≤ p – 2 und berechnet (pA)y = αay, K = (αbx)(y/b) = αxy und den Wert h der Hashfunktion F(αay, αxy). B sendet {αay, h, textB} zu Partei A.
    • 3. A berechnet K = (αay)(x/a) = αxy. A berechnet auch den Wert h' der Hashfunktion F (αay, K) und verifiziert, dass dieser Wert gleich ist mit h.
  • Beispiel 4 – MTI/C1-Protokoll
  • In diesem Protokoll
    • 1. generiert A eine ganze Zufallszahl x, 1 ≤ x ≤ p – 2, berechnet (pB)ax = αabx und sendet {αabx, textA} an Partei B.
    • 2. B generiert eine ganze Zufallszahl y, 1 ≤ y ≤ p – 2; berechnet (pA)by = αaby und sendet {αaby, textB} zu Partei A.
    • 3. A berechnet K = (αaby)x = αabxy.
    • 4. B berechnet K = (αabx)y = αabxy.
  • E kann als ein Eindringling wie folgt handeln:
    • 1. E ersetzt die Nachricht {αabx, textA} von A durch {αabx, textE}.
    • 2. B sendet {(pE)by, textB} an E, der dann ((pE)by)(1/e) = αaby berechnet und {αaby, textB} an A weiterleitet.
    • 3. A berechnet K = (αaby)x = αabxy.
    • 4. B berechnet K = (αabx)y = αabxy.
    • 5. A und B benutzen nun den Schlüssel K gemeinsam, obwohl B glaubt, dass er einen Schlüssel gemeinsam mit E benutzt.
  • Das Protokoll wird, um dies zu vermeiden, wie folgt modifiziert:
    • 1. A generiert eine ganze Zufallszahl x, 1 ≤ x ≤ p – 2, berechnet (pB)ax = αabx und sendet {αabx, textA} an Partei B.
    • 2. B generiert eine ganze Zufallszahl y, 1 ≤ y ≤ p – 2 und berechnet (pA)by = αaby, K = (αabx)y = αabxy und h = F(αaby, αabxy). B sendet {αaby, h, textB} zu Partei A.
    • 3. A berechnet K = (αaby)x = αabxy. A berechnet auch h' = F (αaby, K) und verifiziert, dass dieser Wert gleich ist mit h.
  • In jeder der oben diskutierten modifizierten Protokolle ist eine Schlüsselbestätigung von B an A vorgesehen.
  • Wie oben vermerkt könnten anstelle von einer kryptographischen Hashfunktion F andere Funktionen verwendet werden. Beispielsweise ist eine verfügbare Option, F = ∊K zu wählen, wobei ∊ die Verschlüsselungsfunktion eines passenden Verschlüsselungsschemas mit symmetrischen Schlüsseln und K der etablierte Sitzungsschlüssel ist. Weil E den Sitzungsschlüssel K nicht generieren kann, ist er gleichermaßen nicht in der Lage, den Wert der Funktion F zu generieren und kann sich daher nicht für den Korrespondenten A zwischenschalten.
  • Die oben beschriebene Technik kann auf andere ähnliche Schlüsselaustauschprogramme angewendet werden, einschließlich der 3 unbeschränkten Klassen von MTI-Protokollen, die als MTI-A(k), MTI-B(k) und MTI-C(k) bezeichnet werden.
  • Das Goss authentisierte Schlüsselaustauschprotokoll ist ähnlich zum MTI/A0-Protokoll mit der Ausnahme, dass der Sitzungsschlüssel die bitweise exklusiv-ODER-Funktion von αay und αbx ist; das heißt K = αay ⊕ αbx anstatt dem Produkt von αay und αbx. Daher kann der Angriff auf das MTI/A0-Protokoll und auf dessen Modifikation auf eine geradlinige Art auf den Fall des Goss-Protokolls ausgeweitet werden.
  • Ebenso ist das authentisierte Schlüsselaustauschprotokoll von Yacobi genau das Gleiche wie das MTI/A0-Protokoll mit der Ausnahme, dass α ein Element der Gruppe von Einheiten Z*n ist, wobei n das Produkt von 2 großen Primzahlen ist. Wiederum kann der Angriff auf den MTI/A0-Protokoll und auf dessen Modifikationen auf eine geradlinige Art auf den Fall des Goss-Protokolls ausgeweitet werden.
  • Ein weiterer Weg zum Durchkreuzen der Zwischenschaltung von E ist es, zu fordern, dass jede Entität bei einem zuverlässigen Zentrum unter Beweis stellt, dass sie den Exponenten von α kennt, der dessen öffentlichen Schlüssel P produziert, bevor das Zentrum ein Zertifikat für den öffentlichen Schlüssel ausgibt. Weil E nur "e" kennt und nicht "ae" würde es dieser Forderung nicht gerecht werden. Das kann durch Nullkenntnis-Techniken (zero knowledge techniques)erreicht werden, um die Geheimhaltung der privaten Schlüssel zu schützen, benötigt aber auch die Erreichbarkeit eines zuverlässigen Zentrums, was unpraktisch sein kann.
  • Jedes der obigen Beispiele wurde mit einem 2-Durchlauf-Protokoll zur Schlüsselauthentisierung beschrieben. Ebenfalls existieren 1-Durchlauf-Protokolle, um einen Schlüssel zwischen Korrespondenten zu etablieren und können ähnlich verwundbar sein.
  • Als ein Beispiel wird das 1-Durchlauf-Nyberg-Rueppel-Schlüsselabkommenprotokoll beschrieben und eine Modifikation vorgeschlagen.
  • Der Zweck dieses Protokolls besteht darin, dass Partei A und Partei B zu einer Übereinkunft über einen geheimen Sitzungsschlüssel K kommen.
  • Die Systemparameter für diese Protokolle sind eine Primzahl p und ein Generator α der multiplikativen Gruppe Z*p. Benutzer A hat einen privaten Schlüssel a und einen öffentlichen Schlüssel pA = αa. Benutzer B hat einen privaten Schlüssel b und einen öffentlichen Schlüssel pB = αb.
    • 1. A wählt ganze Zufallszahlen x und t, 1 ≤ x, t ≤ p – 2.
    • 2. A berechnet r = (pB)tα–x mod p und s = x – ra mod (p – 1) und sendet {r, s, textA} zu B.
    • 3. B stellt den Wert αx mod p durch Berechnung von αs(pA)r mod p wieder her und berechnet dann den gemeinsamen Sitzungsschlüssel K = (rαx)(1/b) = αt mod p.
  • Falls Eindringling E wünscht, dass Nachrichten von A identifiziert werden als stammen sie von ihr, wählt E eine ganze Zufallszahl e, 1 ≤ e ≤ p – 2, berechnet pE = αe und erhält dies zertifiziert als ihren öffentlichen Schlüssel.
    • 1. E fängt die Nachricht {r, s, textA} von A ab und berechnet αx = αs(pA)r und αbt = rαx.
    • 2. E wählt dann eine ganze Zufallszahl x', 1 ≤ x' ≤ p – 2, berechnet r' = αbtα–x'. mod p und s' = x' – r'e mod (p – 1).
    • 3. E sendet {r', s', textE} an B.
    • 4. B stellt den Wert αkt mod p durch Berechnung von αs'(pE)r' mod p wieder her und berechnet dann K = (r'αx')(1/b) = αt mod p.
    • 5. A und B benutzen nun gemeinsam den Schlüssel K, auch wenn B glaubt, er benutzt einen Schlüssel gemeinsam mit E.
  • Das Protokoll wird modifiziert, um einen solchen Angriff zu durchkreuzen, indem A verpflichtet wird auch einen Wert h von F(pA, K) zu übertragen, wobei F eine Hashfunktion ist, eine Verschlüsselungsfunktion eines symmetrischen Schlüsselsystems mit Schlüssel K oder einer anderen passenden Verschlüsselungsfunktion. Das modifizierte Protokoll ist das folgende.
    • 1. A wählt ganze Zufallszahlen x und t, 1 ≤ x, t ≤ p – 2.
    • 2. A berechnet r = (pB)tα–x mod p, s = x – ra mod (p – 1), Sitzungsschlüssel K = αt mod p und den Wert h der Hashfunktion F(pA, K). A sendet {r, s, h, textA} zu B.
    • 3. B stellt den Wert αx mod p durch Berechnung von αs(pA)r mod p wieder her und berechnet den gemeinsam benutzten Sitzungsschlüssel K = (rαx)(1/ b) = αt mod p. B berechnet auch den Wert h' der Funktion F(pA, K) und verifiziert, dass dieser Wert gleich ist mit h.
  • Folglich wird wiederum durch Verknüpfung der öffentlichen Information π und des Sitzungsschlüssels K in der Hashfunktion die Zwischenschaltung von E nicht in identischen Hashfunktionen h, h' enden.
  • In jedem Fall ist ersichtlich, dass eine verhältnismäßig einfache Modifikation an der. Protokollen, welche die Bindung von öffentlicher und privater Information in einer Verschlüsselungsfunktion beinhaltet, die Zwischenschaltung eines Eindringlings E durchkreuzt.
  • Sämtliche oben diskutierte Protokolle wurden in dem Satz der multiplikativen Gruppe Z*p beschrieben. Jedoch können sie alle einfach modifiziert werden, um in jeder endlichen Gruppe zu arbeiten, in welcher das diskrete logarithmische Problem hartnäckig zu sein scheint. Eine passende Auswahl beinhaltet die multiplikative Gruppe eines endlichen Feldes (insbesondere das endliche Feld GF(2n)), Untergruppen von Z*p der Ordnung q und die Gruppe von Punkten auf einer über ein endliches Feld definierten elliptischen Kurve. In jedem Fall wird ein geeigneter Generator α benutzt, um die öffentlichen Schlüssel zu definieren.
  • Die oben diskutierten Protokolle können auch auf eine geradlinige Art modifiziert werden, um die Situation zu bewältigen, wenn jeder Benutzer seine eigenen Systemparameter p und α wählt (oder analoge Parameter, falls eine andere Gruppe als Z*p benutzt wird).

Claims (19)

  1. Verfahren zum Authentifizieren eines Paares von Korrespondenten A, B, um den Austausch von Information untereinander zu erlauben, wobei jeder der Korrespondenten jeweils einen privaten Schlüssel a, b und einen öffentlichen Schlüssel pA, pB, der von einem Generator α und jeweils einem der privaten Schlüssel a, b abgeleitet ist, besitzt, wobei das Verfahren die folgenden Schritte umfasst: i) ein erster der Korrespondenten A wählt eine erste ganze Zufallszahl x aus und potenziert eine Funktion f(α), die den Generator umfasst, mit einer Potenz g(x), um eine erste potenzierte Funktion f(α)g(x) vorzusehen; ii) der erste Korrespondent A schickt an einen zweiten Korrespondenten B eine Nachricht ab, welche die erste potenzierte Funktion f(α)g( x ) umfasst; iii) der Korrespondent B wählt eine zweite ganze Zufallszahl y aus und potenziert eine Funktion f'(α), die den Generator umfasst, mit einer Potenz g(y), um eine zweite potenzierte Funktion f'(α)g(y) vorzusehen; wobei das Verfahren durch die folgenden Schritte gekennzeichnet ist: iv) der zweite Korrespondent B erstellt einen Sitzungsschlüssel K aus Information, die von dem ersten Korrespondenten A öffentlich gemacht wurde, und aus Information, die privat für den zweiten Korrespondenten B ist, wobei der Sitzungsschlüssel K auch von dem ersten Korrespondenten A aus Information, die von B öffentlich gemacht wurde, und aus Information, die für den ersten Korrespondenten A privat ist, erstellt werden kann; v) der zwaeite Korrespondent B erstellt einen Wert h einer Funktion F [π, K], wobei F [π, K] eine kryptografische Funktion bezeichnet, die gemeinsam auf π und K angewandt wird, um die Werte von π und K zu verbinden, und wobei π aus der Information erhalten wird, die von B öffentlich gemacht wurde, um das Erstellen des Sitzungsschlüssels K zu erlauben; vi) der zweite der Korrespondenten B schickt eine Nachricht an den ersten Korrespondenten A ab, welche die zweite Exponentialfunktion f'(α)g(y) und den Wert h der kryptografischen Funktion F[π, K] umfasst; vii) der erste Korrespondent empfängt die Nachricht und berechnet einen Sitzungsschlüssel K' aus Information, die von dem zweiten Korrespondenten B öffentlich gemacht wurde, und aus Information, die privat für den ersten Korrespondenten A ist; viii) der erste Korrespondent A berechnet einen Wert h' einer kryptografischen Funktion F[π, K']; und ix) die Werte, die von den kryptografischen Funktionen F erhalten wurden, werden verglichen, um ihre Entsprechung zu bestätigen.
  2. Verfahren nach Anspruch 1, weiter dadurch gekennzeichnet, dass die vom ersten Korrespondenten abgeschickte Nachricht eine Identifikation des ersten Korrespondenten umfasst.
  3. Verfahren nach Anspruch 1, weiter dadurch gekennzeichnet, dass die vom zweiten Korrespondenten abgeschickte Nachricht eine Identifikation des zweiten Korrespondenten umfasst.
  4. Verfahren nach Anspruch 3, weiter dadurch gekennzeichnet, dass die vom ersten Korrespondenten abgeschickte Nachricht eine Identifikation des ersten Korrespondenten umfasst.
  5. Verfahren nach Anspruch 1, weiter dadurch gekennzeichnet, dass die erste den Generator umfassende Funktion f(α) der Generator selbst ist.
  6. Verfahren nach Anspruch 1, weiter dadurch gekennzeichnet, dass die zweite den Generator umfassende Funktion f'(α) der Generator selbst ist.
  7. Verfahren nach Anspruch 6, weiter dadurch gekennzeichnet, dass die erste den Generator umfassende Funktion f(α) der Generator selbst ist.
  8. Verfahren nach Anspruch 1, weiter dadurch gekennzeichnet, dass die erste den Generator f(α) umfassende Funktion den öffentlichen Schlüssel pB des zweiten Korrespondenten umfasst.
  9. Verfahren nach Anspruch 1, weiter dadurch gekennzeichnet, dass die zweite den Generator f'(α) umfassende Funktion den öffentlichen Schlüssel pA des ersten Korrespondenten umfasst.
  10. Verfahren nach Anspruch 1, weiter dadurch gekennzeichnet, dass die kryptografischen Funktionen F Hashwerte von π und K sind.
  11. Verfahren zum Transportieren eines Schlüssels zwischen einem Paar von Korrespondenten A, B, um den Austausch von Information untereinander zu erlauben, wobei jeder der Korrespondenten jeweils einen privaten Schlüssel a, b und einen öffentlichen Schlüssel pA, pB, der von einem Generator α und jeweils einem der privaten Schlüssel a, b abgeleitet ist, besitzt, wobei das Verfahren die folgenden Schritte umfasst: i) ein erster der Korrespondenten A wählt eine erste ganze Zufallszahl x aus und potenziert eine Funktion f(α), die den Generator umfasst, mit einer Potenz g(x), um eine erste potenzierte Funktion f(α)g(x) vorzusehen; ii) der erste Korrespondent A schickt an einen zweiten Korrespondenten B eine Nachricht ab, welche die erste potenzierte Funktion f(α)g(x) umfasst; iii) der zweite Korrespondent B erstellt einen Sitzungsschlüssel K aus Information, die von dem ersten Korrespondenten A öffentlich gemacht wurde, und aus Information, die privat für den zweiten Korrespondenten B ist, wobei der Sitzungsschlüssel K auch von dem ersten Korrespondenten A aus Information, die von B öffentlich gemacht wurde, und aus Information, die für den ersten Korrespondenten A privat ist, erstellt werden kann; wobei das Verfahren durch die folgenden Schritte charakterisiert ist: iv) beide der ersten Korrespondenten A und der zweiten Korrespondenten B berechnen jeweils einen Wert h, h' einer Funktion F [π, K], wobei F [π, K] eine kryptografische Funktion bezeichnet, die auf π und K angewandt wird, um die Werte π und K zu verbinden, und wobei π aus der Information erhalten wird, die von einem der Korrespondenten öffentlich gemacht wurde, um ein Erstellen des Sitzungsschlüssels K zu erlauben; v) wenigstens einer der Korrespondenten vergleicht die Werte h, h', die von der kryptografischen Funktion F erhalten wurden, um ihre Entsprechung zu bestätigen.
  12. Verfahren nach Anspruch 11, weiter dadurch gekennzeichnet, dass die vom ersten Korrespondenten abgeschickte Nachricht eine Identifikation des ersten Korrespondenten umfasst.
  13. Verfahren nach Anspruch 11, weiter dadurch gekennzeichnet, dass die von dem ersten Korrespondenten abgeschickte Nachricht den Wert umfasst, der von der kryptografischen Funktion durch den ersten Korrespondenten erhalten wurde.
  14. Verfahren nach Anspruch 11, weiter dadurch gekennzeichnet, dass die von den kryptografischen Funktionen erhaltenen Werte aus einem Hashwert der öffentlichen Information und des Sitzungsschlüssels K erhalten sind.
  15. Verfahren nach Anspruch 11, weiter dadurch gekennzeichnet, dass der erste Korrespondent ein Paar von ganzen Zufallszahlen x und t auswählt und einen Sitzungsschlüssel K als f(α)g(t) erstellt und einen Wert r aus der ersten potenzierten Funktion f(α)g(x) erstellt, der einen Faktor umfasst, welcher den öffentlichen Schlüssel pB des zweiten Korrespondenten mit der ganzen Zufallszahl t potenziert, um die Form pB (E(t) αg(x) zu besitzen.
  16. Verfahren nach Anspruch 15, weiter dadurch gekennzeichnet, dass der erste Korrespondent A einen Wert s aus einer Kombination der ganzen Zufallszahl x und des privaten Schlüssels a erstellt und den Wert von r und den Wert von s an den zweiten Korrespondenten B abschickt, um dem zweiten Korrespondenten B zu ermöglichen, den Sitzungsschlüssel K unter Nutzung des privaten Schlüssels b des zweiten Korrespondenten B wieder zu gewinnen.
  17. Verfahren nach Anspruch 16, weiter dadurch gekennzeichnet, dass die ganze Zufallszahl x und der private Schlüssel a kombiniert werden, um s zu erzeugen derart, dass s = x – ra mod(p – 1) ist.
  18. Verfahren nach Anspruch 17, weiter dadurch gekennzeichnet, dass die kryptografische Funktion F ein Hashwert der öffentlichen Information p und des Sitzungsschlüssels K ist.
  19. Verfahren nach Anspruch 18, weiter dadurch gekennzeichnet, dass die öffentliche Information π der öffentliche Schlüssel pA des ersten Korrespondenten A ist.
DE69630331T 1995-04-21 1996-04-16 Verfahren zur gesicherten Sitzungsschlüsselerzeugung und zur Authentifizierung Expired - Lifetime DE69630331T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US426090 1995-04-21
US08/426,090 US6487661B2 (en) 1995-04-21 1995-04-21 Key agreement and transport protocol

Publications (2)

Publication Number Publication Date
DE69630331D1 DE69630331D1 (de) 2003-11-20
DE69630331T2 true DE69630331T2 (de) 2004-07-29

Family

ID=23689246

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69630331T Expired - Lifetime DE69630331T2 (de) 1995-04-21 1996-04-16 Verfahren zur gesicherten Sitzungsschlüsselerzeugung und zur Authentifizierung

Country Status (6)

Country Link
US (4) US6487661B2 (de)
EP (1) EP0739106B1 (de)
AU (1) AU5266696A (de)
CA (1) CA2174260C (de)
DE (1) DE69630331T2 (de)
WO (1) WO1996033566A1 (de)

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7243232B2 (en) * 1995-04-21 2007-07-10 Certicom Corp. Key agreement and transport protocol
US7334127B2 (en) * 1995-04-21 2008-02-19 Certicom Corp. Key agreement and transport protocol
US6487661B2 (en) 1995-04-21 2002-11-26 Certicom Corp. Key agreement and transport protocol
US6785813B1 (en) * 1997-11-07 2004-08-31 Certicom Corp. Key agreement and transport protocol with implicit signatures
US6055575A (en) * 1997-01-28 2000-04-25 Ascend Communications, Inc. Virtual private network system and method
CA2241705C (en) * 1998-06-26 2006-06-20 Certicom Corp. A method for preventing key-share attacks
KR100484209B1 (ko) 1998-09-24 2005-09-30 삼성전자주식회사 디지털컨텐트암호화/해독화장치및그방법
CA2277633C (en) 1999-07-19 2009-10-20 Certicom Corp. Split-key key-agreement protocol
JP4660900B2 (ja) * 2000-08-31 2011-03-30 ソニー株式会社 個人認証適用データ処理システム、個人認証適用データ処理方法、および情報処理装置、並びにプログラム提供媒体
US7725945B2 (en) * 2001-06-27 2010-05-25 Intel Corporation Discouraging unauthorized redistribution of protected content by cryptographically binding the content to individual authorized recipients
DE10137152A1 (de) * 2001-07-30 2003-02-27 Scm Microsystems Gmbh Verfahren zur Übertragung vertraulicher Daten
US7424615B1 (en) * 2001-07-30 2008-09-09 Apple Inc. Mutually authenticated secure key exchange (MASKE)
US7352867B2 (en) * 2002-07-10 2008-04-01 General Instrument Corporation Method of preventing unauthorized distribution and use of electronic keys using a key seed
AU2005228061A1 (en) 2004-04-02 2005-10-13 Research In Motion Limited Deploying and provisioning wireless handheld devices
US7464267B2 (en) * 2004-11-01 2008-12-09 Innomedia Pte Ltd. System and method for secure transmission of RTP packets
US7747865B2 (en) * 2005-02-10 2010-06-29 International Business Machines Corporation Method and structure for challenge-response signatures and high-performance secure Diffie-Hellman protocols
US8316416B2 (en) * 2005-04-04 2012-11-20 Research In Motion Limited Securely using a display to exchange information
US7720221B2 (en) * 2005-05-20 2010-05-18 Certicom Corp. Privacy-enhanced e-passport authentication protocol
DE102005026982A1 (de) * 2005-06-10 2006-12-14 Siemens Ag Verfahren zur Vereinbarung eines Sicherheitsschlüssels zwischen mindestens einem ersten und einem zweiten Kommunikationsteilnehmer zur Sicherung einer Kommunikationsverbindung
US7627760B2 (en) * 2005-07-21 2009-12-01 Microsoft Corporation Extended authenticated key exchange
US7694141B2 (en) * 2005-07-26 2010-04-06 Microsoft Corporation Extended authenticated key exchange with key confirmation
US7908482B2 (en) * 2005-08-18 2011-03-15 Microsoft Corporation Key confirmed authenticated key exchange with derived ephemeral keys
US8190895B2 (en) 2005-08-18 2012-05-29 Microsoft Corporation Authenticated key exchange with derived ephemeral keys
JP5342649B2 (ja) 2008-11-24 2013-11-13 サーティコム コーポレーション ハードウェアベースセキュリティのためのシステムおよび方法
US8438401B2 (en) * 2009-09-22 2013-05-07 Raytheon BBN Technologies, Corp. Device and method for securely storing data
WO2011039460A2 (fr) * 2009-09-30 2011-04-07 France Telecom Procede et dispositifs de communications securisees dans un reseau de telecommunications
US8661527B2 (en) 2011-08-31 2014-02-25 Kabushiki Kaisha Toshiba Authenticator, authenticatee and authentication method
US9231926B2 (en) * 2011-09-08 2016-01-05 Lexmark International, Inc. System and method for secured host-slave communication
US20140208105A1 (en) * 2013-01-23 2014-07-24 GILBARCO, S.r.I. Automated Content Signing for Point-of-Sale Applications in Fuel Dispensing Environments
US20140237258A1 (en) * 2013-02-20 2014-08-21 Kabushiki Kaisha Toshiba Device and authentication method therefor
DE102013108713B8 (de) * 2013-08-12 2016-10-13 WebID Solutions GmbH Verfahren zum Verifizieren der ldentität eines Nutzers
ES2972153T3 (es) 2013-10-30 2024-06-11 Gilbarco Inc Marcado de agua criptográfico de contenido en entornos de dispensación de combustible
CN103647653B (zh) * 2013-12-24 2016-08-24 深圳国微技术有限公司 一种设备之间认证与密钥协商方法
US9774576B2 (en) * 2014-03-18 2017-09-26 Em Microelectronic-Marin S.A. Authentication by use of symmetric and asymmetric cryptography
TWI581598B (zh) * 2014-09-17 2017-05-01 國立成功大學 通訊認證方法
US10764059B2 (en) * 2016-05-31 2020-09-01 Intel Corporation Communications security systems and methods
US10528367B1 (en) 2016-09-02 2020-01-07 Intuit Inc. Execution of workflows in distributed systems
WO2018044146A1 (en) * 2016-09-05 2018-03-08 Lg Electronics Inc. Lightweight and escrow-less authenticated key agreement for the internet of things
BR112019008747A2 (pt) * 2016-11-04 2019-07-16 Koninklijke Philips Nv segundo dispositivo, sistema, primeiro dispositivo, método a ser realizado por um segundo dispositivo e método a ser realizado por um primeiro dispositivo
CN109583162B (zh) * 2018-11-30 2021-09-10 上海芯钛信息科技有限公司 一种基于国密算法的身份识别方法及***

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5347281A (en) * 1976-07-23 1994-09-13 The United States Of America As Represented By The Secretary Of The Navy Frequency-coded monopulse MTI
US4200770A (en) * 1977-09-06 1980-04-29 Stanford University Cryptographic apparatus and method
US4405829A (en) * 1977-12-14 1983-09-20 Massachusetts Institute Of Technology Cryptographic communications system and method
DE3915262A1 (de) * 1988-05-18 1989-11-30 Asea Brown Boveri Verfahren zur erzeugung von authentifizierten geheimschluesseln
US4956863A (en) * 1989-04-17 1990-09-11 Trw Inc. Cryptographic method and apparatus for public key exchange with authentication
US4991210A (en) * 1989-05-04 1991-02-05 David Chaum Unpredictable blind signature systems
JPH02301241A (ja) 1989-05-15 1990-12-13 Nippon Telegr & Teleph Corp <Ntt> 共通鍵の配送方式
US4996711A (en) * 1989-06-21 1991-02-26 Chaum David L Selected-exponent signature systems
US5199070A (en) * 1990-12-18 1993-03-30 Matsushita Electric Industrial Co., Ltd. Method for generating a public key
US5299262A (en) * 1992-08-13 1994-03-29 The United States Of America As Represented By The United States Department Of Energy Method for exponentiating in cryptographic systems
US5442707A (en) * 1992-09-28 1995-08-15 Matsushita Electric Industrial Co., Ltd. Method for generating and verifying electronic signatures and privacy communication using elliptic curves
US5299263A (en) * 1993-03-04 1994-03-29 Bell Communications Research, Inc. Two-way public key authentication and key agreement for low-cost terminals
EP0639907B1 (de) * 1993-08-17 1999-12-08 R3 Security Engineering AG Verfahren zur digitalen Unterschrift und Verfahren zur Schlüsselübereinkunft
US5347581A (en) 1993-09-15 1994-09-13 Gemplus Developpement Verification process for a communication system
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
FR2718312B1 (fr) * 1994-03-29 1996-06-07 Rola Nevoux Procédé d'authentification combinée d'un terminal de télécommunication et d'un module d'utilisateur.
US5586186A (en) * 1994-07-15 1996-12-17 Microsoft Corporation Method and system for controlling unauthorized access to information distributed to users
WO1996033565A1 (en) * 1995-04-21 1996-10-24 Certicom Corp. Method for signature and session key generation
US6487661B2 (en) 1995-04-21 2002-11-26 Certicom Corp. Key agreement and transport protocol
US5761305A (en) 1995-04-21 1998-06-02 Certicom Corporation Key agreement and transport protocol with implicit signatures
US6785813B1 (en) 1997-11-07 2004-08-31 Certicom Corp. Key agreement and transport protocol with implicit signatures
CA2176972C (en) * 1995-05-17 2008-11-25 Scott A. Vanstone Key agreement and transport protocol with implicit signatures
AU3590299A (en) 1998-05-01 1999-11-23 Certicom Corp. Authenticated key agreement protocol
US6192474B1 (en) 1998-07-31 2001-02-20 Lucent Technologies Inc. Method for establishing a key using over-the-air communication and password protocol and password protocol
US7047408B1 (en) 2000-03-17 2006-05-16 Lucent Technologies Inc. Secure mutual network authentication and key exchange protocol
US7076656B2 (en) 2001-04-05 2006-07-11 Lucent Technologies Inc. Methods and apparatus for providing efficient password-authenticated key exchange
DE10137152A1 (de) 2001-07-30 2003-02-27 Scm Microsystems Gmbh Verfahren zur Übertragung vertraulicher Daten

Also Published As

Publication number Publication date
EP0739106A1 (de) 1996-10-23
US20010042205A1 (en) 2001-11-15
US20140032911A1 (en) 2014-01-30
US6487661B2 (en) 2002-11-26
US20080162938A1 (en) 2008-07-03
US8578165B2 (en) 2013-11-05
CA2174260A1 (en) 1996-10-22
AU5266696A (en) 1996-11-07
US8209533B2 (en) 2012-06-26
WO1996033566A1 (en) 1996-10-24
US20120137133A1 (en) 2012-05-31
DE69630331D1 (de) 2003-11-20
EP0739106B1 (de) 2003-10-15
CA2174260C (en) 2007-06-19
US8892890B2 (en) 2014-11-18

Similar Documents

Publication Publication Date Title
DE69630331T2 (de) Verfahren zur gesicherten Sitzungsschlüsselerzeugung und zur Authentifizierung
DE69633590T2 (de) Verfahren zur Unterschrift und zur Sitzungsschlüsselerzeugung
DE69636815T2 (de) Verfahren zur sitzungsschlüsselerzeugung mit impliziten unterschriften
EP0472714B1 (de) Verfahren zur authentifizierung eines eine datenstation benutzenden anwenders
DE69311581T2 (de) Verfahren und system zur authentifizierten sicheren schlüsselverteilung in einem kommunikationssystem
DE69918818T2 (de) Verfahren zur Erzeugung eines öffentlichen Schlüssels in einem sicheren digitalen Kommunikationssystem und implizites Zertifikat
DE602004004029T2 (de) Verfahren zur Verteilung von Konferenzschlüsseln, gemäss einem identitätsbasierten Verschlüsselungssystem
DE69823834T2 (de) Sicherheitsverfahren und -system für übertragungen in fernmeldenetzen
DE69935469T2 (de) Verfahren zur schnellen Ausführung einer Entschlüsselung oder einer Authentifizierung
DE69830902T2 (de) Zweiweg-authentifizierung-protokoll
DE69725659T2 (de) Verfahren und Einrichtung zur Ablage eines in einem RSA-Kryptosystem benutzten Geheimschlüssels
DE3883287T2 (de) Steuerung der Anwendung von Geheimübertragungsschlüsseln durch in einer Erzeugungsstelle hergestellte Steuerwerte.
US6785813B1 (en) Key agreement and transport protocol with implicit signatures
DE60031304T2 (de) Verfahren zur authentifizierung von softwarebenutzern
CH694601A5 (de) Verfahren zur Verifizierung der Echtheit von ausgetauschten Nachrichten.
WO2016008659A1 (de) Verfahren und eine vorrichtung zur absicherung von zugriffen auf wallets in denen kryptowährungen abgelegt sind
DE69838258T2 (de) Public-Key-Datenübertragungssysteme
AT504634B1 (de) Verfahren zum transferieren von verschlüsselten nachrichten
EP1119941B1 (de) Verfahren zum etablieren eines gemeinsamen schlüssels zwischen einer zentrale und einer gruppe von teilnehmern
CH678134A5 (en) Authenticated cryptographic key exchange in digital subscriber network - using preliminary phase of multiplication in finite galois field with random number selection for public key
DE60211008T2 (de) Authentifizierung eines entfernten benutzers zu einem host in einem datenkommunikationssystem
DE19938198A1 (de) Verfahren zum Etablieren eines gemeinsamen Schlüssels für eine Gruppe von mindestens drei Teilnehmern
DE102022000638B3 (de) Verfahren zum sicheren Aushandeln von symmetrischen Schlüsseln zwischen zwei Teilnehmern einer Kommunikation
EP1286494B1 (de) Verfahren zur Erzeugung eines asymmetrischen kryptografischen Gruppenschlüsselpaares
EP2315391B1 (de) Schlüsselvereinbarungs- und Transportprotokoll mit impliziten Signaturen

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8328 Change in the person/name/address of the agent

Representative=s name: MERH-IP MATIAS ERNY REICHL HOFFMANN, 80336 MUENCHE