[go: up one dir, main page]

DE68907717T2 - Diversifizierungsverfahren für öffentliche schlüssel. - Google Patents

Diversifizierungsverfahren für öffentliche schlüssel.

Info

Publication number
DE68907717T2
DE68907717T2 DE89909280T DE68907717T DE68907717T2 DE 68907717 T2 DE68907717 T2 DE 68907717T2 DE 89909280 T DE89909280 T DE 89909280T DE 68907717 T DE68907717 T DE 68907717T DE 68907717 T2 DE68907717 T2 DE 68907717T2
Authority
DE
Germany
Prior art keywords
value
nmi
nmv
public key
requesting
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
DE89909280T
Other languages
English (en)
Other versions
DE68907717D1 (de
Inventor
Jeffrey Austin
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.)
NCR International Inc
Original Assignee
NCR International Inc
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
Priority claimed from GB888819767A external-priority patent/GB8819767D0/en
Application filed by NCR International Inc filed Critical NCR International Inc
Publication of DE68907717D1 publication Critical patent/DE68907717D1/de
Application granted granted Critical
Publication of DE68907717T2 publication Critical patent/DE68907717T2/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
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3006Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
    • H04L9/302Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters involving the integer factorization problem, e.g. RSA or quadratic sieve [QS] schemes
    • 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/3247Cryptographic 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 involving digital signatures
    • H04L9/3249Cryptographic 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 involving digital signatures using RSA or related signature schemes, e.g. Rabin scheme

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Storage Device Security (AREA)

Description

  • Die Erfindung betrifft die Verschlüsselung mit öffentlichem Schlüssel.
  • Die Verschlüsselung mit öffentlichem Schlüssel ist beispielsweise in dem Aufsatz: Communications of the ACM, Band 21, Nr. 2, Februar 1978, Seiten 120 - 126 von R. L. Rivest u. a. "A Method for Obtaining Digital Signatures and Public-Key Cryptosystems" beschrieben. Kurz gesagt, wird bei der Verschlüsselung mit öffentlichem Schlüssel eine Nachricht dadurch verschlüsselt, daß sie als eine Zahl M dargestellt, M zu einer öffentlich angegebenen Potenz e erhoben und dann der Rest verwendet wird, der sich beim Dividieren des Ergebnisses durch ein öffentlich angegebenes Produkt N zweier großer geheimer Primzahlen p und Q ergibt. Die Entschlüsselung ist ähnlich, mit der Ausnahme, daß eine andere geheime Potenz d verwendet wird, wobei
  • e.d = 1 (mod (P-1).(Q-1)).
  • Die Sicherheit eines derartigen Systems hängt teilweise von der Schwierigkeit der Faktorbildung des öffentlich angegebenen Wertes N ab. Ein weiteres Merkmal eines derartigen Systems besteht darin, daß Nachrichten "unterschrieben" werden können unter Verwendung eines geheimgehaltenen Entschlüsselungsschlüssel d, wobei jedermann diese Unterschrift unter Verwendung des öffentlich bekannten Verschlüsselungsschlüssels e verifizieren kann.
  • Ist insbesondere N das Produkt zweier Primzahlen P, Q, d. h. wenn
  • N = P.Q
  • und wenn e relativ teilerfremd zu φ(N) ist, wobei
  • φ(N) = (P-1). (Q-1)
  • die Euler'sche Totientenfunktion von N (die Anzahl von ganzen Zahlen kleiner N, die relativ teilerfremd zu N sind) ist, dann kann in der modul-N-Arithmetik ein Wert d bestimmt werden (siehe beispielsweise der vorgenannte Aufsatz von Rivest u. a.), der multiplikativ invers zu e ist derart, daß
  • e.d = 1 (mod φ(N)).
  • Der Wert d wird allgemein als das Geheimschlüsselgegenstück zu dem öffentlichen Schlüssel e bezeichnet.
  • Wenn somit
  • X = Ye (mod N),
  • dann
  • Y = Xd (mod N)
  • für alle Werte von Y mit 0 &le; Y < N.
  • Wie zuvor erwähnt, wurde dieses Wissen auf dem Gebiete der Verschlüsselung dazu verwendet, verschiedene Verschlüsselungssysteme zu entwerfen, wobei typischerweise die ganzen Zahlen e und N Teilnehmern von Verschlüsselungssitzungen als ein öffentlicher Verschlüsselungsschlüssel genannt werden und die ganze Zahl d von dem die Schlüssel ausgebenden Teilnehmer als Geheimschlüsselwert gehalten wird.
  • Benutzer dieser Techniken können somit Daten Y unter Verwendung des öffentlichen Schlüssels (e, N) in akzeptabler Kenntnis verschlüsseln, daß nur der Halter des geheimen Schlüsselwertes d die Daten Y entschlüsseln kann.
  • In gleicher Weise kann der Halter des geheimen Schlüsselwertes d Daten X unter Verwendung von (d, N) verschlüsseln, so daß irgendein Teilnehmer mit Kenntnis der öffentlichen Schlüsselwerte (e, N) feststellen kann, daß nur der Halter des geheimen Schlüsselwertes d die Quelle für die Daten X gewesen sein kann.
  • Diese Prozeduren erlauben es Benutzern der Technik, 10 sensitive Daten zu verschlüsseln und auch diese Daten digital zu unterzeichnen, um ihre Quelle zu authentifizieren.
  • Der Beweis der zurvor erwähnten Beziehungen wird nun gegeben.
  • Angenommen, daß
  • N = P.Q
  • und
  • e.d = 1 mod &phi;(N) (1)
  • wobei sowohl P und Q ganze Primzahlen sind, dann ist
  • &phi;(N) = &phi;(P).&phi;(Q) = (P-1).(Q-1).
  • Es wird gezeigt, daß, wenn
  • X = Ye (mod N) (2)
  • dann
  • Y = Xd (mod N). (3)
  • Es ist zu beachten, wenn (3) wahr ist, dann sich aus (2) ergibt, daß
  • X = Xe.d (mod N).
  • Aus (1) ergibt sich dann, daß Xe.d = X1+K&phi;(N) (mod N), wobei K irgendeine ganze Zahl ist.
  • Da P eine Primzahl ist, so ist es bekannt (Fermat'sches "klein"-Theorem), daß
  • XP-1 = 1 (mod P) für alle X, 0 < X < P.
  • Da P-1 dividiert &phi;(N) = (P-1).(Q-1)
  • X1+K&phi;(N) = X (mod P) für alle X, 0 &le; X < P. (4)
  • In ähnlicher Weise, da Q eine Primzahl ist, so ist
  • X1-k&phi;(N) = X (mod Q) für alle X, 0 &le; X < Q. (5)
  • Aus den Gleichungen (4) und (5) ergibt sich, daß
  • X1+K&phi;(N) = X (mod P.Q) für alle X, 0 &le; X < N,
  • d. h. daß
  • X = Ye - Xe.d = X1+K&phi;(N) = X (mod N).
  • Wenn somit
  • X = Ye (mod N),
  • dann ist
  • Y = Xd (mod N)
  • für alle Y für 0 &le; Y < N.
  • Eine Aufgabe der vorliegenden Erfindung ist es, ein Verfahren anzugeben, durch das eine aus einer Vielzahl von Mitgliedern oder Stellen bestehende Gruppe irgendein Mitglied der Gruppe mit einem geheimen Schlüssel zum Zwecke der Entschlüsselung von Daten oder digitalen Signierung von Daten versehen wird, welcher geheime Schlüssel nur diesem Mitglied bekannt ist, wobei jedoch der dazu passende öffentliche Schlüssel leicht von irgendeiner Stelle (ob Gruppenmitglied oder nicht) abgeleitet werden kann und wodurch verifiziert werden kann, daß das den geheimen Schlüssel verwendende Mitglied ein rechtmäßiges Mitglied der Gruppe ist.
  • Erfindungsgemäß wird somit ein Verfahren zum Diversifizieren eines Schlüsselpaares zur Verwendung bei der Verschlüsselung mittels öffentlichem Schlüssel durch eine anfragende Stelle mit dem Schritt Erzeugen bei einer übergeordneten Stelle eines öffentlichen Schlüssels N, e, wobei modul N das Produkt einer ersten und zweiten Primzahl P, Q und e ein entsprechender ganzzahliger öffentlicher Schlüssel ist, angegeben, das gekennzeichnet ist durch die Schritte: Auswählen einer dritten und vierten Primzahl R, S und Übertragen zur anfordernden Stelle eines ersten Wertes Nmi und eines zweiten Wertes &phi;(Nmi), wobei der erste Nmi = N.R.S und wobei der zweite Wert
  • &phi;(Nmi) = &phi;(N).(R-1).(S-1)
  • ist, wobei das Symbol &phi; die Euler'sche Totientenfunktion darstellt; Auswählen bei der anfordernden Stelle einer fünften und sechsten Primzahl T, U; und Berechnen bei der anfordernden Stelle eines dritten Wertes Nm und eines vierten Wertes dm, wobei
  • Nm = Nmi.T.U,
  • und wobei
  • dm = (1+K&phi;(Nm))/e,
  • wobei
  • &phi;(Nm) = &phi;(Nmi).(T-1).(U-1)
  • und wobei K und dm ganze Zahlen sind, so daß dm geeignet ist, von der anfordernden Stelle als das Geheimschlüsselgegenstück des öffentlichen Schlüsselwertes e bezüglich modul Nm verwendet zu werden.
  • Bei einer besonderen Anwendung kann die Gruppe von Mitgliedern oder Stellen eine internationale Vorgangskarten ausgebende Institution sein, die viele Mitglieder hat, beispielsweise in der Größenordnung von tausenden von Mitgliedern.
  • Eine Ausführungsform der Erfindung wird nun als Beispiel unter Bezugnahme auf die Zeichnungen beschrieben, in denen
  • Fig. 1 ein Blockdiagramm eines Verarbeitungsgerätes ist, das bei der Gruppenstammstelle angeordnet ist;
  • Fig. 2 ein Flußdiagramm ist, das die Erzeugungs- oder Aufbauphase der Operation des Stammverarbeitungsgerätes veranschaulicht;
  • Fig. 3 ein Flußdiagramm ist, das eine Arbeitsphase des Stammverarbeitungsgerätes unter Ansprechen auf eine Mitgliederanforderung veranschaulicht;
  • Fig. 4 ein Blockdiagramm des Verarbeitungsgerätes ist, das sich bei einem Gruppenmitglied befindet;
  • Fig. 5 ein Flußdiagramm ist, das die Erzeugungsphase der Operation für das Mitgliedverarbeitungsgerät veranschaulicht;
  • Fig. 6 ein Flußdiagramm ist, das die Betriebsphase des Mitgliedverarbeitungsgerätes veranschaulicht; und
  • Fig. 7 ein Flußdiagramm ist, daß die Betriebsphase einer Stelle veranschaulicht, die mit einem Gruppenmitglied kommuniziert.
  • Um das Verständnis der vorliegenden Erfindung zu erleichtern, wird zuerst das der Erfindung zugrundeliegende mathematische Prinzip erläutert. Somit sind die mathematischen Beziehungen, die vorstehend erstellt wurden, für den Fall, bei dem
  • N = P.Q
  • das Produkt zweier Primzahlen ist, deutlich ersichtlich gleichermaßen gültig für den Fall, bei dem N das Produkt von mehr als zwei Primzahlen ist, da für eine derartige Zahl N alle ganzen Zahlen I, die Faktoren von N sind,
  • XI-1 = 1 (mod I)
  • genügen. Wenn somit beispielsweise
  • N = P.Q.R.S.T.U
  • das Produkt von sechs Primzahlen ist, dann ist für
  • X = Ye(mod N)
  • auch
  • Y = Xd(mod N)
  • für alle Y für 0 &le; Y < N
  • vorausgesetzt daß
  • e.d = 1 (mod &phi;(N))
  • wobei
  • (&phi;N) = (P-1).(Q-1).(R-1).(S-1).(T-1).
  • Die bevorzugte Ausführungsform der Erfindung wird nun mit Bezug auf eine Gruppe von Mitgliedern oder Stellen beschrieben, von denen ein spezifiziertes Mitglied ein damit betrautes Mitglied ist, das als "Stamm"-Mitglied bezeichnet sei. Für eine derartige Gruppe von Mitgliedern sind drei Probleme anzugehen:
  • 1. Prüfung der Gruppenmitgliedschaft.
  • 2. Schutz der individuellen Mitgliedgeheimschlüssel.
  • 3. Einfache Ableitung der passenden öffentlichen Mitgliederschlüssel.
  • Es wird nun auf Fig. 1 Bezug genommen, wo ein Blockschaltbild des Gerätes gezeigt ist, das bei dem Stamm- Mitglied angeordnet ist. Ein derartiges Gerät enthält einen Sicherheitsprozessor 10, der Sicherheitsprozessor 10 umfaßt ein Gehäuse 12, das einen Mikroprozessor 14, einen Programmspeicher PROM 16, einen RAM Arbeitsspeicher 18 (RAM = Speicher mit wahlfreiem Zugriff), einen sicheren nichtflüchtigen Speicher 20, einen Zufallszahlgenerator 22, eine Eindringfeststellschaltung 24 und eine Eingabe-/Ausgabeeinheit 26 umfaßt. Die Vorrichtungen 14, 16, 18, 20, 22 und 26 sind durch einen internen Bus 28 verbunden. Die Eindringfeststellschaltung 24 ist geeignet, jegliches unautorisiertes Eindringen bezüglich des Gehäuses 12 festzustellen, etwa einen Versuch, das Gehäuse zu durchdringen, und ein Rückstellsignal über Leitung 30 abzugeben, mit dem der sichere nichtflüchtige Speicher 20 unter Ansprechen auf die Feststellung eines derartigen Eindringens rückgestellt wird. Ein Beispiel eines geeigneten Sicherheitsprozessors ist in größerer Einzelheit in dem U.S. Patent Nr. 4,593,384 beschrieben.
  • Der Sicherheitsprozessor 10 ist über einen externen Bus 32 mit einer Vielzahl peripherer Einrichtungen verbunden, einschließlich eines Tastenfeldes 34, über das Daten manuell eingegeben werden können, einer Anzeige 36, eines Druckers 38, über den Ausgangsdaten gedruckt werden können, und einer Kommunikationsschnittstelle 40 (etwa einem Modem), die ermöglicht, daß eine Datenübertragung mit entfernten Vorrichtungen über einen Kanal 42 stattfindet.
  • Es wird nun auf Fig. 2 Bezug genommen, wo ein Flußdiagramm für den an der Stammstelle angeordneten Sicherheitsprozessor 10 während der Erzeugung eines öffentlichen Schlüssels (e, N) zeigt. In einem anfänglichen Eingangsschritt wird, wie bei Rechteck 50 gezeigt, ein Initialisierungs- oder Einstellbefehl angelegt, um den Sicherheitsprozessor 10 für die Durchführung der gewünschten Operation zu konditionieren. Als nächstes sorgt, wie in Rechteck 52 gezeigt, eine Routine für die Auswahl zweier großer Zufallsprimzahlen P und Q. Derartige Routinen sind allgemein bekannt. Beispielsweise können ungerade Zufallszahlen der gewünschten Größe durch einen Zufallszahlgenerator 22 erzeugt und durch Wahrscheinlichkeitsprüfmethoden auf Primäreigenschaft geprüft werden, wie dies in dem vorgenannten Aufsatz von Rivest u. a. erläutert ist.
  • Wie im Rechteck 54 angegeben, werden als nächstes drei Werte abgeleitet, nämlich der Wert N, der das Produkt von P und Q ist; der Wert &phi;(N), der das Produkt von P-1 und Q-1 ist; und ein Wert e, der teilerfremd bezüglich &phi;(N) ist, was bedeutet, daß der größte gemeinsame Teiler (ggT) von e und &phi;(N) gleich 1 ist. Vorzugsweise ist e eine Primzahl aus einem Grunde, der später noch erläutert wird. Wie im Rechteck 56 gezeigt, werden dann die Werte N, &phi;(N) und e in dem sicheren nichtflüchtigen Speicher 20, Fig. 1, gespeichert. Die Werte N und e sind auf ein an den Sicherheitsprozessor 10 angelegtes geeignetes Anforderungssignal gemäß Rechteck 58 erhältlich.
  • Es wird nun auf Fig. 3 Bezug genommen, die ein Flußdiagramm für den an der Stammstelle angeordneten Sicherheitsprozessor 10 in der Betriebsphase unter Ansprechen auf ein von einem Gruppenmitglied angelegten Anforderungssignal zeigt. Gemäß Rechteck 70 empfängt somit der Sicherheitsprozessor 10 ein Eingangssignal, einen Mitglied-Anforderungsbefehl zusammen mit einer Mitglied- Identifizierung ID, die das die Anforderung anlegende Gruppenmitglied identifiziert.
  • Wie in Rechteck 72 gezeigt, besorgt dann eine Routine die Auswahl zweier großer Primzahlen R und S, die von den Primzahlen P und Q verschieden sind. Wie in Rechteck 74 gezeigt, wird als nächstes der Wert Nmi berechnet, der ein Produkt aus N, R und S ist:
  • Nmi = N.R.S
  • und auch der Wert &phi;(Nmi), wobei
  • &phi;(Nmi) = &phi;(N).(R-1).(S-1).
  • Wie in Rechteck 76 gezeigt, wird als nächstes der Wert der Mitglieds-ID in dem Sicherheitsspeicher 20 zusammen mit den Werten Nmi, &phi;(Nmi) gespeichert. Diese gespeicherten Werte stehen nun für eine Ausgabe aus dem Sicherheitsprozessor 10 zur Verfügung, wie dies in Rechteck 78 angegeben ist, und können angezeigt, gedruckt oder einem Sicherheitsprozessor 110 (Fig. 4) zugeführt werden, der bei dem anfordernden Mitglied angeordnet ist, was nun beschrieben wird.
  • Fig. 4 zeigt ein Blockdiagramm eines Gerätes, das bei jedem Mitglied der Gruppe angeordnet ist. Das vorgesehene Gerät gleicht demjenigen, das an der Stammstelle angeordnet ist und zuvor unter Bezugnahme auf Fig. 1 beschrieben wurde. Somit umfaßt das Mitgliedgerät einen Sicherheitsprozessor 110, mit einem Gehäuse 112, das einen Mikroprozessor 114, einen Programmspeicher PROM 116, einen RAM Arbeitsspeicher 118, einen sicheren nichtflüchtigen Speicher 120, einen Zufallszahlgenerator 122, eine Eindringfeststellschaltung 124 und eine Eingangs-/Ausgangseinheit 126. Ein interner Bus 128 verbindet die verschiedenen Vorrichtungen, wie dies in Fig. 4 gezeigt ist. Die Eindringfeststellschaltung 124 kann ein Rückstellsignal über eine Leitung 130 unter Ansprechen auf die Feststellung eines Versuchs abgeben, in das Gehäuse 112 einzudringen. Es wird wiederum auf das U.S. Patent Nr. 4,593,384 für eine nähere Beschreibung eines geeigneten Sicherheitsprozessors verwiesen. Der Sicherheitsprozessor 110 ist über einen externen Bus 132 mit einem Tastenfeld 134, einer Anzeige 136, einem Drucker 138 und einer Kommunikationsschnittstelle 140 verbunden, die ermöglicht, daß eine Datenübertragung mit entfernten Vorrichtungen über einen Kanal 142 stattfinden kann.
  • Es wird nun auf Fig. 5 Bezug genommen, die ein Flußdiagramm für den bei dem Gruppenmitglied angeordneten Sicherheitsprozessor 110 während einer Schlüsselerzeugungsphase für das Gruppenmitglied zeigt. Anfangs wird ein Initialisierungsbefehl an den Prozessor 110 zusammen mit den Werten N, e, Nmi und &phi;(Nmi) angelegt, der von einer von dem Sicherheitsprozessor 10 an der Stammstelle erzeugten und über die Kanäle 42 und 142 zu dem Sicherheitsprozessor 110 übertragenen Verschlüsselung abgeleitet sein kann. Gemäß Rechteck 152 wird als nächstes eine Routine zur Auswahl zweier großer Primzahlen T und U bewirkt. Es ist zu beachten, daß alle Primzahlen P, Q, R, S, T, U verschieden sind. Die Stammstelle wählt P, Q, R und S aus und kann ihre Verschiedenheit gewährleisten. Das Mitglied kennt diese Werte jedoch nicht und könnte zufälligerweise T oder U gleich P, Q, R oder S wählen. Für große Primzahlen ist die Wahrscheinlichkeit jedoch entfernt. Für kleine Primzahlen kann die Wahrscheinlichkeit jedoch ein Problem sein. Diese Wahrscheinlichkeit kann dadurch vermieden werden, daß die Stammstelle dem Sicherheitsprozessor 110 eine Größengrenze für T-, U-Werte zuführt.
  • Wenn beispielsweise
  • P, Q, R, S > 2¹&sup5;&sup0;
  • ist, dann kann
  • T, U < 2¹&sup5;&sup0;
  • sein. Um die Auswahl von Primzahlen beim Mitglied nicht einzuschränken, ist ferner zu beachten, daß der von der Stammstelle anfänglich gewählte Wert von e eine Primzahl sein sollte, wodurch die relative Teilerfremdheit von e bezüglich irgendeines &phi;(Nm)-Wertes gewährleistet wird.
  • Wie in Rechteck 154 gezeigt, werden als nächstes vier Werte berechnet. Zuerst ein Wert Nm, der das Produkt von Nmi, T und U ist:
  • Nm = Nmi T.U.
  • Als zweites durch Dividieren von Nm durch N wird ein Wert Nmv berechnet:
  • Nmv = Nm/N
  • Der Wert Nmv sei hier als "Mitgliedsvariante" bezeichnet.
  • Drittens wird der Wert &phi;(Nm) als das Produkt von &phi;(Nmi), T- 1 und U-1 berechnet:
  • &phi;(Nm) = &phi;(Nmi).(T-1).(U-1).
  • Schließlich wird eine ganze Zahl dm mit der Formel berechnet
  • dm = 1+K&phi;(Nm)/e.
  • In dieser Formel ist K ein ganzzahliger Wert, der wunschgemäß derart gewählt wird, daß dm, was der geheime Schlüssel des Mitglieds ist, die kleinste ganze Zahl ist, die aus der Formel berechnet werden kann. Es wird darauf hingewiesen, daß die Schritte 152 und 154, die bei dem Mitgliedsprozessor 110 ausgeführt werden, die Wirkung haben, daß verhindert wird, daß die Stammstelle &phi;(Nm) des Mitglieds und damit den geheimen Schlüssel des Mitglieds bestimmt, da die Stammstelle den Faktor T.U = Nm/Nmi benötigen würde, um T-1 und U-1 zu bestimmen und somit eine derartige Faktorbildung nicht machbar ist, wenn T und U geeignet große Primzahlen sind. In ähnlicher Weise kann das Mitglied in Kenntnis von N, Nmi und &phi;(Nmi) praktisch &phi;(N) der Stammstelle und damit P, Q nicht bestimmen, da dies die Faktorbildung R.S = Nmi/N erfordert. Es ist somit ersichtlich, daß der Wert &phi;(Nm) von dem "Saatwert" N stammt, jedoch "doppelt diversifiziert" ist, um die Berechnung durch irgendeine andere Person oder Stelle als dem Mitgliedschaftseigner zu verhindern, der nur ein zulässiges &phi;(Nm) und somit ein zulässiges dm unter Verwendung der von der Stammstelle gelieferten Werte ableiten kann.
  • Es wird nun wieder auf Fig. 5, Rechteck 156 Bezug genommen, gemäß dem die Werte Nm, dm, e, N und Nmv in dem sicheren nichtflüchtigen Speicher 120 gespeichert werden. Schließlich wird gemäß Rechteck 158 der Mitgliedsvariantenwert Nmv als ein Ausgangssignal zum Drucken, Anzeigen und/oder einer Fernübertragung abgegeben. Dieser Mitgliedsvariantenwert wird "veröffentlicht" oder auf Anforderung verfügbar gemacht, und das öffentliche Schlüsselmodul des Mitglieds kann einfach durch Multiplizieren von Nmv mit N abgeleitet werden:
  • Nm = Nmv.N.
  • Somit hat das Mitglied den öffentlichen Schlüssel (e, Nm) mit dem entsprechenden Geheimschlüsselgegenstück dm. Es wird jedoch der Mitgliedsvariantenwert Nmv und nicht Nm selbst durch das Mitglied bekanntgegeben.
  • Unter Berücksichtigung des vorstehenden ist ersichtlich, daß die Authentizität der von dem Mitglied ausgehenden Daten Y dadurch erstellt werden kann, daß das Mitglied die Daten mit dm digital signiert, nämlich
  • X = Ydm (mod Nm)
  • und daß eine derartige Unterschrift X von irgendeiner Stelle (ob ein Mitglied der Gruppe oder nicht) durch Berechnen von
  • Y = Xe (mod N.Nmv)
  • verifiziert werden kann. Diese Prozedur bestimmt nicht nur die Gültigkeit der durch das Mitglied über Nmv abgegebenen Unterschrift, sondern bestimmt auch die gültige Mitgliedschaft der Gruppe über N. Wenn somit der Beweis über die Gruppenmitgliedschaft erstellt wurde, dann kann auch dem Wert Nmv Vertrauen geschenkt werden, auch wenn er unmittelbar vor dem Authentizitätstest unbekannt sein kann. Er kann somit mit der digitalen Unterschrift geliefert werden, was der Notwendigkeit für irgendeine frühere Kenntnis durch den Unterschriftsverifizierer mit Ausnahme für die veröffentlichten Gruppenwerte N und e enthebt.
  • Ferner können verschlüsselte Daten Y praktisch nur durch das Mitglied unter Verwendung einer mod Nm-Exponentierung mit der Potenz dm entschlüsselt werden, vorausgesetzt, daß der Sender derartiger verschlüsselter Daten den für die Gruppe öffentlichen e-Wert und den durch die Mitgliedsvariante Nmv modifizierten N-Wert verwendet.
  • Es wird nun auf Fig. 6 Bezug genommen, die ein Flußdiagramm für die Betriebsphase des Mitgliedssicherheitsprozessors 110 zeigt. Wie im Rechteck 170 gezeigt, wird zusammen mit den verschlüsselten Daten oder Klartext ein Entschlüsselungsbefehl eingegeben. Gemäß Rechteck 172 werden die Eingangsdaten unter Verwendung des gespeicherten geheimen Schlüssels dm des Mitglieds zu der Exponentenpotenz dm erhoben und das Resultat wird als Rest mod Nm unter Verwendung des Modulwertes Nm des öffentlichen Schlüssels des Mitglieds ausgedrückt, wodurch Klartext oder eine digitale Unterschrift abgegeben wird. Schließlich wird, wie in Rechteck 174 gezeigt, der abgegebene Klartext oder die digitale Unterschrift als ein Ausgangssignal zum Drucken, Anzeigen oder für eine Fernübertragung zusammen mit der im Mitgliedsvariantenwert Nmv verfügbar gemacht.
  • Es ist ersichtlich, daß eine derartige Kommunikation mit einem Gruppenmitglied durch eine Stelle aufgebaut werden kann, die nicht ein Gruppenmitglied ist. Eine Kommunikation durch eine derartige Stelle ist in dem Flußdiagramm in Fig. 7 veranschaulicht, wobei verständlich ist, daß die Stelle ein üblicher Prozessor, etwa ein PC (Personalcomputer) ist, mit Rechen- und Speicherfähigkeiten. So zeigt Rechteck 180 ein Eingangssignal, das einen Verschlüsselungsbefehl, die von der Gruppenstammstelle abgegebenen oder von veröffentlichten Listen abgeleiteten Werte N und e, Eingangsdaten in Form von Klartext oder einer Unterschrift und einen Mitgliedsvariantenwert Nmv umfassen, der dem Mitglied entspricht, mit dem die Stelle kommunizieren will. Als nächstes wird, wie in Rechteck 182 gezeigt, das Produkt von Nmv und N berechnet, um Nm zu erzeugen, was das modul des öffentlichen Schlüssels des kommunizierenden Gruppenmitglieds ist. Dann werden die Eingangsdaten (Klartext oder Unterschrift) der Exponentierung mit der Potenz e, modulo Nm unterworfen, um verschlüsselte Daten oder Klartext zu erzeugen, wobei so berechnete Daten, falls erwünscht, gespeichert werden, wie dies in Rechteck 184 gezeigt ist. Die verschlüsselten Daten oder Klartext sind dann verfügbar, um als Ausgangssignale abgegeben zu werden, wie dies in Rechteck 186 gezeigt ist.
  • Ein Vorteil der hier beschriebenen Anordnung ist, daß ein Fälscher, der N kennt, praktisch nicht ein geeignetes Nmv und ein dazu passendes dm berechnen kann, um eine gültige Unterschrift ohne die Kenntnis eines geeigneten &phi;(Nm) zu erzeugen. Es ist zu beachten, daß
  • dm = 1 + K&phi;(Nm)/e
  • &phi;(Nm) = &phi;(N).&phi;(Nmv).
  • Obwohl &phi;(Nmv) durch einen Fälscher durch Auswählen seines eigenen Nmv bestimmt werden kann, erfordert die Berechnung von &phi;(N) die Kenntnis von P und Q. Diese Werte sind nur der Stammstelle bekannt und werden geheimgehalten. Vorausgesetzt, daß die Geheimhaltung von P und Q aufrechterhalten werden kann, kann ein Fälscher abgewehrt werden.
  • Zum Schutz gegen eine zufällige Offenbarung eines &phi;(Nmi) eines Mitglieds kann als weitere Sicherung die Stammstelle oder die Gruppe entscheiden, daß die Nmv-Werte aller Gruppenmitglieder veröffentlicht oder einfach verfügbar gemacht werden, wodurch die Verwendung von betrügerischen Nmv-Werten ausgeschlossen wird.
  • Auch kann sich ein Mitglied nicht als ein anderes Mitglied ausgeben, da ein korrektes dm die Kenntnis von &phi;(Nmi) erfordert und es nicht möglich ist, das &phi;(Nmi) eines anderen Mitglieds zu bestimmen ohne Kenntnis von &phi;(N) und der R- und S-Werte des Mitglieds. Alle diese Werte werden durch die Stammstelle geheimgehalten.
  • Somit wird aufgrund der vorliegenden Erfindung jedes Gruppenmitglied vor anderen Mitgliedern geschützt, es kann jedoch sowohl sich selbst spezifisch beweisen als auch seine Mitgliedschaft der Gruppe im allgemeinen. Auch die Gruppenstammstelle kann sich nicht als ein anderes Mitglied maskieren.
  • Die Erfindung ist somit geeignet in Umgebungen, wie eine internationale Institution für Vorgangskarten, die viele tausende von Kartenausgabemitgliedern haben kann. Jeder dieser Kartenausgeber kann sich selbst gegen Fälschung seiner Karten ohne die Notwendigkeit sichern, zuvor die für die Erstellung der Authentizität erforderliche Information seiner Karten für verschiedene Authentizitätsprüfer, wie Karten akzeptierende Kaufleute, zu veröffentlichen. Der Kartenannehmer benötigt nur die vorherige Kenntnis der globalen Werte N und e der Institution, um sehr einfach die Authentizität der Karte zu bestimmen. Die Karte würde es nur erfordern, daß sie, wie erforderlich, die Mitgliedsvariante Nmv und einen Wert trägt, von dem festgestellt werden kann, daß er unter Verwendung des spezifischen geheimen Schlüssels dm des Mitglieds erzeugt wurde. Der Kartenannehmer könnte dann diesen Wert unsigniert machen und mit einem bekannten Wert vergleichen, der für diese Karte oder diesen Vorgang geeignet ist.

Claims (6)

1. Ein Verfahren zum Diversifizieren eines Schlüsselpaares zur Verwendung bei der Verschlüsselung mittels öffentlichem Schlüssel durch eine anfragende Stelle mit dem Schritt Erzeugen bei einer übergeordneten Stelle eines öffentlichen Schlüssels N, e, wobei modul N das Produkt einer ersten und zweiten Primzahl P, Q und e ein entsprechender ganzzahliger öffentlicher Schlüssel ist, gekennzeichnet durch die Schritte: Auswählen einer dritten und vierten Primzahl R, S und Übertragen zur anfordernden Stelle eines ersten Wertes Nmi und eines zweiten Wertes &phi;(Nmi), wobei der erste Nmi = N.R.S und wobei der zweite Wert &phi;(Nmi) = &phi;(N).(R-1).(S-1) ist, wobei das Symbol &phi; die Euler'sche Totientenfunktion darstellt; Auswählen bei der anfordernden Stelle einer fünften und sechsten Primzahl T, U; und Berechnen bei der anfordernden Stelle eines dritten Wertes Nm und eines vierten Wertes dm, wobei Nm = Nmi.T.U und wobei
dm= 1+K&phi;(Nm)/e
wobei
&phi;(Nm) = &phi;(Nmi).(T-1).(U-1)
und wobei K und dm ganze Zahlen sind, so daß dm geeignet ist, von der anfordernden Stelle als das Geheimschlüsselgegenstück des öffentlichen Schlüsselwertes e bezüglich modul Nm verwendet zu werden.
2. Verfahren nach Anspruch 1, gekennzeichnet durch die Schritte: Speichern der Werte N, &phi;(N) und e in Speichervorrichtungen (20) bei der ersten Stelle.
3. Verfahren nach Anspruch 2, gekennzeichnet durch den Schritt Speichern einer die anfordernde Stelle identifizierenden Identifikationscodierung des ersten Wertes Nmi und des zweiten Wertes &phi;(Nmi) in den Speichervorrichtungen (20).
4. Verfahren nach Anspruch 3, gekennzeichnet durch den Schritt Berechnen eines fünften Wertes Nmv bei der anfordernden Stelle, wobei
Nmv = Nm/N
und Speichern des fünften Wertes in weiteren Speichervorrichtungen (20) bei der anfordernden Stelle.
5. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß der Wert des ganzzahligen öffentlichen Schlüssels e eine Primzahl ist.
6. Verfahren nach Anspruch 4 oder Anspruch 5, gekennzeichnet durch den Schritt Multiplizieren des Wertes Nmv mit dem Wert N, um den Wert Nm zu erhalten, dessen Verwendung mit dem Wert e die Verifizierung digitaler Unterschriften oder die Verschlüsselung von von oder zu der anfordernden Stelle gesandten Daten ermöglicht.
DE89909280T 1988-08-19 1989-07-27 Diversifizierungsverfahren für öffentliche schlüssel. Expired - Fee Related DE68907717T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB888819767A GB8819767D0 (en) 1988-08-19 1988-08-19 Public key diversification method
US07/364,949 US4944007A (en) 1988-08-19 1989-06-12 Public key diversification method

Publications (2)

Publication Number Publication Date
DE68907717D1 DE68907717D1 (de) 1993-08-26
DE68907717T2 true DE68907717T2 (de) 1994-02-17

Family

ID=26294304

Family Applications (1)

Application Number Title Priority Date Filing Date
DE89909280T Expired - Fee Related DE68907717T2 (de) 1988-08-19 1989-07-27 Diversifizierungsverfahren für öffentliche schlüssel.

Country Status (5)

Country Link
EP (1) EP0400103B1 (de)
JP (1) JPH03505033A (de)
AU (1) AU607351B2 (de)
DE (1) DE68907717T2 (de)
WO (1) WO1990002456A1 (de)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5272755A (en) * 1991-06-28 1993-12-21 Matsushita Electric Industrial Co., Ltd. Public key cryptosystem with an elliptic curve
US5351297A (en) * 1991-06-28 1994-09-27 Matsushita Electric Industrial Co., Ltd. Method of privacy communication using elliptic curves
GB9203425D0 (en) * 1992-02-18 1992-09-23 Sewell Roger F Devices for implementing public key cryptography and digital signatures
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
WO1994015423A1 (en) * 1992-12-22 1994-07-07 Telstra Corporation Limited A cryptographic method
US5539828A (en) * 1994-05-31 1996-07-23 Intel Corporation Apparatus and method for providing secured communications
US6185546B1 (en) 1995-10-04 2001-02-06 Intel Corporation Apparatus and method for providing secured communications
EP0784256A1 (de) * 1995-12-22 1997-07-16 Intel Corporation Verfahren und Vorrichtung zur Kryptographie mit offentlichem Schlüssel unter Verwendung einer sicheren Halbleiteranordnung
CA2267721C (en) * 1998-03-26 2002-07-30 Nippon Telegraph And Telephone Corporation Scheme for fast realization of encryption, decryption and authentication
IL133432A0 (en) * 1999-12-09 2001-04-30 Cipherit Ltd Systems and methods for certifying public keys in digital signatures and key-agreements with membership authentication

Also Published As

Publication number Publication date
DE68907717D1 (de) 1993-08-26
AU4052489A (en) 1990-03-23
AU607351B2 (en) 1991-02-28
EP0400103A1 (de) 1990-12-05
JPH03505033A (ja) 1991-10-31
EP0400103B1 (de) 1993-07-21
WO1990002456A1 (en) 1990-03-08

Similar Documents

Publication Publication Date Title
DE3485804T2 (de) Systeme zur blindunterschrift.
DE19804054B4 (de) System zur Verifizierung von Datenkarten
DE69617941T2 (de) Verfahren und einrichtung zum authentifizieren des ursprungs einer nachricht
DE69031614T2 (de) Wahlweise moderierte Transaktionssysteme
DE3782099T2 (de) Verfahren, vorrichtung und geraet zum identifizieren und unterschreiben.
DE69021936T2 (de) Methode und System zur Datenübertragung.
DE2843583C2 (de) Verfahren für den zugriffsicheren Nachrichtenverkehr über einen ungesicherten Nachrichtenübertragungskanal
DE69731025T2 (de) Verschlüsselungsverfahren, Entschlüsselungsverfahren und Beglaubigungsverfahren
DE3841393C2 (de) Zuverlässiges System zur Feststellung der Dokumentenechtheit
EP2826199B1 (de) Verfahren und system zur gesicherten kommunikation zwischen einem rfid-tag und einem lesegerät
DE3856149T2 (de) Systeme mit unbestreitbarer Unterschrift
DE69434703T2 (de) Verfahren zur Erzeugung von DSA-Unterschriften mit preisgünstigen tragbaren Einheiten
DE69704684T2 (de) Vorrichtung und Verfahren zur Authentifizierung von Zugangsrechten eines Benutzers zu Betriebsmitteln nach dem Challenge-Response-Prinzip
DE19803939B4 (de) Verfahren zur Identifizierung von Zugangsbefugten
DE69520714T2 (de) Verfahren und Vorrichtung zum sicheren elektronischen Abstimmen
DE69830902T2 (de) Zweiweg-authentifizierung-protokoll
DE69633217T2 (de) Verfahren zum Implentieren von elektronischem Geld mit Hilfe einer Lizenz eines anonymen öffentlichen Schlüssels
DE60114833T2 (de) Überprüfbare, geheime mischung von verschlüsselten daten wie z. b. elgamal-verschlüsselte daten für gesicherte mehrinstanzwahlen
DE69935455T2 (de) Kryptographisches verfahren unter verwendung eines öffentlichen und eines privaten schlüssels
DE60015757T2 (de) Verfahren und vorrichtung um ein programmcode zu beglaubigen
DE102012206341A1 (de) Gemeinsame Verschlüsselung von Daten
EP1368929B1 (de) Verfahren zur authentikation
DE4008971A1 (de) Verfahren zur authentifizierung eines eine datenstation benutzenden anwenders
CH711133B1 (de) Protokoll zur Signaturerzeugung
DE68907717T2 (de) Diversifizierungsverfahren für öffentliche schlüssel.

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: AT&T GLOBAL INFORMATION SOLUTIONS INTERNATIONAL IN

8327 Change in the person/name/address of the patent owner

Owner name: NCR INTERNATIONAL, INC. (N.D.GES.D.STAATES DELAWAR

8328 Change in the person/name/address of the agent

Free format text: V. BEZOLD & SOZIEN, 80799 MUENCHEN

8320 Willingness to grant licences declared (paragraph 23)
8339 Ceased/non-payment of the annual fee