DE602005003984T2 - Kryptografisches Verfahren und Gerät - Google Patents

Kryptografisches Verfahren und Gerät Download PDF

Info

Publication number
DE602005003984T2
DE602005003984T2 DE602005003984T DE602005003984T DE602005003984T2 DE 602005003984 T2 DE602005003984 T2 DE 602005003984T2 DE 602005003984 T DE602005003984 T DE 602005003984T DE 602005003984 T DE602005003984 T DE 602005003984T DE 602005003984 T2 DE602005003984 T2 DE 602005003984T2
Authority
DE
Germany
Prior art keywords
message
string
trusted
value
mod
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.)
Active
Application number
DE602005003984T
Other languages
English (en)
Other versions
DE602005003984D1 (de
Inventor
Keith Alexander Harrison
Liqun Chen
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.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
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 Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of DE602005003984D1 publication Critical patent/DE602005003984D1/de
Application granted granted Critical
Publication of DE602005003984T2 publication Critical patent/DE602005003984T2/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/3013Public 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 discrete logarithm problem, e.g. ElGamal or Diffie-Hellman systems
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • 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/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
    • 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/321Cryptographic 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 a third party or a trusted authority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/04Masking or blinding
    • H04L2209/046Masking or blinding of operations, operands or results of the operations

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Power Engineering (AREA)
  • Physics & Mathematics (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Storage Device Security (AREA)

Description

  • Gebiet der Erfindung
  • Die vorliegende Erfindung bezieht sich auf ein kryptographisches Verfahren und eine kryptographische Vorrichtung; insbesondere bezieht sich die vorliegende Erfindung auf ein kryptographisches Verfahren und eine kryptographische Vorrichtung auf Identifiziererbasis.
  • Wie Fachleuten bekannt ist, ist in kryptographischen Verfahren auf „Identifiziererbasis" der Verschlüsselungsschlüsse, der zur Verschlüsselung einer Nachricht verwendet wird, auf einer durch einen Absender ausgewählten Zeichenfolge und öffentlichen Daten basiert, wobei der entsprechende Entschlüsselungsschlüssel, möglicherweise nach einer Nachrichtenverschlüsselung, unter Verwendung der durch den Absender ausgewählten Zeichenfolge und privater Daten, die den öffentlichen Daten zugeordnet sind, berechnet wird. Häufig dient die durch den Absender ausgewählte Zeichenfolge dazu, den beabsichtigten Nachrichtenempfänger zu „identifizieren", wobei dies zu der Verwendung der Bezeichnung „auf Identifiziererbasis" oder „auf Identitätsbasis" allgemein für diese kryptographischen Verfahren geführt hat. Abhängig von der Anwendung jedoch, in die ein derartiges kryptographisches Verfahren gegeben wird, kann die durch den Absender ausgewählte Zeichenfolge einem anderen Zweck als dem eines Identifizierens des beabsichtigten Empfängers dienen und könnte tatsächlich eine willkürliche Zeichenfolge sein, die keinen anderen Zweck als den besitzt, die Basis des Verschlüsselungsschlüssels zu bilden. Entsprechend soll die Verwendung des Ausdrucks „auf Identifiziererbasis" hierin in Bezug auf kryptographische Verfahren und Vorrichtungen so aufgefasst werden, dass einfach impliziert wird, dass der Verschlüsselungsschlüssel auf einer durch den Absender ausgewählten, kryptographisch nicht beschränkten Zeichenfolge basiert, ob die Zeichenfolge nun dazu dient, den beabsichtigten Empfänger zu identifizieren, oder nicht, und dass der entsprechende Entschlüsselungsschlüssel nachfolgend aus der Zeichenfolge berechnet werden kann. Ferner soll der Ausdruck „Zeichenfolge", wie er hierin verwendet wird, einfach eine geordnete Serie von Bits implizieren, ob diese von einer Zeichen-Zeichenfolge, einer serialisierten Bild-Bit-Abbildung, einem digitalisierten Tonsignal oder einer beliebigen anderen Datenquelle hergeleitet ist.
  • Hintergrund der Erfindung
  • Die Verschlüsselung auf Identifiziererbasis (IBE; IBE = Identifier-Based Encryption) ist ein sich hervortuendes kryptographisches Schema. Eine Anzahl kryptographischer IBE-Verfahren ist bekannt, die Folgende umfassen:
    • – Verfahren basierend auf „Quadratic Residuosity", beschrieben in der Schrift: „An identity based encryption scheme based an quadratic residues", C. Cocks, Proceedings of the 8th IMA International Conference an Cryptography and Coding, LNCS 2260, S. 360–363, Springer-Verlag, 2001;
    • – Verfahren unter Verwendung von Weil- oder Tate-Paarungen – siehe z. B.: D. Boneh, M. Franklin – „Identity-based Encryption from the Weil Pairing" in Advances in Cryptology – CRYPTO 2001, LNCS 2139, S. 213–229, Springer-Verlag, 2001;
    • – Verfahren basierend auf vermitteltem RSA, beschrieben in der Schrift „Identity based encryption using mediated RSA", D. Boneh, X. Ding und G. Tsudik, 3rd Workshop an Information Security Application, Jeju Island, Korea, August 2002.
  • Allgemein führt in IB-Verschlüsselungs-/Entschlüsselungsverfahren ein vertrauenswürdiger Teilnehmer eine oder mehrere Aktionen (wie z. B. Identitätsüberprüfung) gemäß Informationen in der durch den Absender ausgewählten Zeichenfolge aus, bevor es einem Empfänger ermöglicht wird, eine Nachricht, die durch einen Nachrichtenabsender verschlüsselt wird, wiederzugewinnen. Üblicherweise erzeugt der vertrauenswürdige Teilnehmer einen IB-Entschlüsselungsschlüssel und liefert denselben an den Empfänger, damit letzterer diesen beim Entschlüsseln der verschlüsselten Nachricht verwenden kann. Es ist jedoch auch möglich, IB-Verschlüsselungs-/Entschlüsselungsverfahren bereitzustellen, bei denen der vertrauenswürdige Teilnehmer selbst die Entschlüsselung ausführen muss, da dies eine Kenntnis eines Geheimnisses beinhaltet, das zu dem vertrauenswürdigen Teilnehmer gehört, sowie eine Verwendung des IB-Entschlüsselungsschlüssels. Dies ist für das IB-Verfahren auf RSA-Basis der Fall, das in dem U.S.-Patent 6,275,936 beschrieben ist, bei dem der Entschlüsselungsexponent dynamisch aus dem Verschlüsselungsexponent berechnet wird, wobei letzterer ein Hash der durch den Absender ausgewählten Zeichenfolge ist. Ein potentieller Nachteil einer Ausführung einer Nachrichtenentschlüsselung durch den vertrauenswürdigen Teilnehmer besteht darin, dass dies die Beeinträchtigung einer Privatsphäre des Empfängers riskiert. Bei dem zuvor erwähnten U.S.-Patent wird dieser potentielle Nachteil dadurch überwunden, dass der Empfänger die verschlüsselte Nachricht verdeckt, bevor er dieselbe an den vertrauenswürdigen Teilnehmer weiterleitet (ein Entschlüsselungsfeld), und dann die zurück erhaltene entschlüsselte, jedoch noch verdeckte Nachricht wieder aufdeckt.
  • Das Dokument WO 03/063410 beschreibt ein Kryptosystem, bei dem Benutzer Nachrichten mit Hilfe eines vertrauenswürdigen dritten Teilnehmers zu Sicherheitszwecken unter Verwendung privater Schlüssel und öffentlicher Parameter, die die privaten Schlüssel einkapseln, senden und empfangen, wobei jeder Benutzer einen privaten Schlüssel hält und dem ver trauenswürdigen dritten Teilnehmer ein entsprechender privater Schlüssel für jeden Benutzer anvertraut wird, und wobei der vertrauenswürdige dritte Teilnehmer so angepasst ist, dass er auf eine Herausforderung von einem Benutzer anspricht, indem er eine Antwort ausgibt, die den entsprechenden privaten Schlüssel einkapselt, so dass der Benutzer die Antwort in Kombination mit dem privaten Schlüssel, den der Benutzer bereits hält, verwenden kann, um eine Nachricht zu entschlüsseln oder signieren.
  • Eine Aufgabe der vorliegenden Erfindung besteht darin, neuartige kryptographische Verfahren und Systeme auf Identifiziererbasis bereitzustellen.
  • Zusammenfassung der Erfindung
  • Gemäß einem ersten Aspekt der vorliegenden Erfindung wird ein kryptographisches Verfahren bereitgestellt, bei dem ein Absender eine Nachricht verschlüsselt und an einen Empfänger sendet, zur Entschlüsselung durch einen vertrauenswürdigen Teilnehmer, wobei der Absender in Besitz eines öffentlichen Schlüssels ist, für den es einen entsprechenden privaten Schlüssel gibt, der durch den vertrauenswürdigen Teilnehmer gehalten wird, wobei das Verfahren folgende Schritte aufweist:
    Modifizieren, durch den Absender, des öffentlichen Schlüssels durch Potenzieren zumindest eines Elements dieses Schlüssels unter Verwendung eines Hash einer Zeichenfolge als Exponent, die Informationen bezüglich zumindest einer Aktion aufweist, die durch den zweiten Teilnehmer durchgeführt werden soll, und unter Verwendung des modifizierten öffentlichen Schlüssels zur Verschlüsselung der Nachricht;
    Empfangen, durch den Empfänger, der verschlüsselten Nachricht und der Zeichenfolge und Weiterleiten derselben an den vertrauenswürdigen Teilnehmer; und
    Verwenden, durch den vertrauenswürdigen Teilnehmer, der Zeichenfolge zum Modifizieren seines privaten Schlüssels zum Ergänzen des modifizierten öffentlichen Schlüssels, Entschlüsseln der Nachricht mit dem modifizierten privaten Schlüssel und Zurückgeben der entschlüsselten Nachricht an den Empfänger nach einer Ausführung der zumindest einen Aktion mit einem zufriedenstellenden Abschluss.
  • Bei bevorzugten Ausführungsbeispielen der Erfindung wird das vorstehende Verfahren verwendet, um eine identifiziererbasierte Form eines Elgamal-Verschlüsselungs-/Entschlüsselungssystems bereitzustellen. Das Elgamal-Kryptosystem ist in folgender Schrift beschrieben: „A public key cryptosystem and a signature scheme based an discrete logarithms" (IEEE Transactions an Information Theory, Bd. IT-31 Nr. 4, Juli 1985, Taher ElGamal) und basiert selbst auf dem gut bekannten Diffie-Hellman-Schlüsselverteilungsschema.
  • Die identifiziererbasierten Verschlüsselungs-/Entschlüsselungsverfahren, die durch bevorzugte Ausführungsbeispiele der vorliegenden Erfindung bereitgestellt werden, stellen eine unterschiedliche Verteilung der Rechenlast zu anderen identifiziererbasierten Systemen dar (wie z. B. dem System auf RSA-Basis, das in dem U.S.-Patent, auf das oben Bezug genommen wurde, beschrieben ist) und bieten bei passenden Umständen Leistungsvorteile gegenüber dem Stand der Technik.
  • Gemäß einem zweiten Aspekt der vorliegenden Erfindung wird ein kryptographisches Verfahren bereitgestellt, bei dem ein vertrauenswürdiger Teilnehmer mit geheimem x und öffentlichen Parametern p und g zumindest folgende Schritte ausführt:
    Empfangen von Werten h und J und einer Bedingungszeichenfolge STR von einem Nachrichtenabsender, wobei die Bedingungszeichenfolge zumindest eine Bedingung aufweist, die durch den vertrauenswürdigen Teilnehmer geprüft werden soll;
    Berechnen von:
    z ← #(STR), wobei # eine Hash-Funktion ist;
    Berechnen von: f1(J, hz,x)wobei f–1() eine invertierbare Operation f() invertiert, um dadurch ein Ergebnis zu erzeugen, das einer entschlüsselten Nachricht m entspricht, wenn:
    der empfangene Wert von h gr mod p entspricht, wobei r ein Geheimnis ist, das zu dem Absender (A) gehört, und
    der empfangene Wert von J f(gr,x,z, m) entspricht;
    wobei der vertrauenswürdige Teilnehmer das Ergebnis nur berechnet oder das Ergebnis nur freigibt, nachdem bestätigt wurde, dass die zumindest eine Bedingung, die in der Zeichenfolge beinhaltet ist, erfüllt wurde.
  • Gemäß einem dritten Aspekt der vorliegenden Erfindung wird eine kryptographische Vorrichtung bereitgestellt, die eine erste, zweite und dritte Rechenentität aufweist, wobei die erste Rechenentität (A) folgende Merkmale aufweist:
    eine Eingangsanordnung zum Empfangen eines öffentlichen Schlüssels, für den es einen entsprechenden privaten Schlüssel gibt, der durch die zweite Rechenentität gehalten wird,
    eine Schlüsselverarbeitungsanordnung, die angeordnet ist, um den öffentlichen Schlüssel zu modifizieren, indem zumindest ein Element des empfangenen öffentlichen Schlüssels unter Verwendung eines Hash einer Zeichenfolge als Exponent potenziert wird, wobei diese Zeichenfolge Informationen bezüglich zumindest einer Aktion, die durch die zweite Rechenentität durchgeführt werden soll, aufweist,
    eine Verschlüsselungsanordnung zum Verschlüsseln einer Nachricht unter Verwendung des modifizierten öffentlichen Schlüssels; und
    eine Ausgangsanordnung zum Ausgeben der verschlüsselten Nachricht und der Zeichenfolge;
    wobei die dritte Rechenentität angeordnet ist, um die verschlüsselte Nachricht und die Zeichenfolge zu empfangen und dieselben an die zweite Rechenentität weiterzuleiten, und die zweite Rechenentität angeordnet ist, um die Nachricht und die Zeichenfolge zu empfangen, um die Zeichenfolge zu verwenden, um ihren privaten Schlüssel zu modifizieren, um den modifizierten öffentlichen Schlüssel zu ergänzen, und um die Nachricht unter Verwendung des modifizierten privaten Schlüssels zu entschlüsseln, wobei die zweite Rechenentität angeordnet ist, um die Nachricht nur zu entschlüsseln oder die entschlüsselte Nachricht nur freizugeben, nachdem die zumindest eine Aktion mit einem zufriedenstellenden Abschluss ausgeführt wurde.
  • Gemäß einem vierten Aspekt der vorliegenden Erfindung wird eine Vertrauenswürdiger-Teilnehmer-Entität bereitgestellt, die folgende Merkmale aufweist:
    einen Datenspeicher zum Speichern eines geheimen x und öffentlicher Parameter p und g;
    eine Eingangsanordnung zum Empfangen von Werten h und J und einer Bedingungszeichenfolge STR von einem Nachrichtenabsender, wobei die Bedingungszeichenfolge zumindest eine Bedingung aufweist, die durch den vertrauenswürdigen Teilnehmer überprüft werden soll;
    eine Verarbeitungsanordnung, die angeordnet ist, um Folgendes zu berechnen: z ← #(STR); und f1(J, hz,x)wobei f–1() eine invertierbare Operation f() invertiert, um dadurch ein Ergebnis zu erzeugen, das einer entschlüsselten Nachricht m entspricht, wenn:
    der empfangene Wert von h gr mod p entspricht, wobei r ein Geheimnis ist, das zu dem Absender gehört, und
    der empfangene Wert von J f (gr,x,z, m) entspricht;
    eine Ausgangsanordnung zum Ausgeben des Ergebnisses; und
    eine Steueranordnung, die angeordnet ist, um zu überprüfen, dass die zumindest eine Bedingung, die in der Zeichenfolge beinhaltet ist, erfüllt wurde, und nur zu erlauben, dass die Verarbeitungsanordnung das Ergebnis berechnet, oder nur zu erlauben, dass die Ausgangsanordnung das Ergebnis ausgibt, wenn die zumindest eine Bedingung erfüllt wurde.
  • Kurze Beschreibung der Zeichnungen
  • Ausführungsbeispiele der Erfindung werden nun mittels eines nichteinschränkenden Beispiels unter Bezugnahme auf die beiliegenden schematischen Zeichnungen beschrieben, in denen:
  • 1 ein Diagramm ist, das die Funktionsschritte des ElGamal-Öffentlicher-Schlüssel-Verschlüsselungs-/Entschlüsselungsverfahrens des Stands der Technik darstellt;
  • 2 ein Diagramm ist, das die Funktionsschritte eines identifiziererbasierten kryptographischen Verfahrens, das die Erfindung ausführt, darstellt; und
  • 3 ein Diagramm ist, das demjenigen aus 2 ähnelt, jedoch die Beinhaltung eines zusätzlichen Verdecken- und Aufdecken-Funktionsschritts darstellt.
  • Bester Modus zur Ausführung der Erfindung
  • Die kryptographischen Verfahren und Vorrichtungen, die unten unter Bezugnahme auf die 1 bis 3 beschrieben sind, beinhalten zwei oder drei Teilnehmer, nämlich einen Nachrichtenabsender A, der durch eine Rechenentität 10 handelt, einen Nachrichtenempfänger B, der durch eine Rechenentität 20 handelt, und eine vertrauenswürdige Autorität TA, die durch eine Rechenentität 50 handelt (diese letztere Entität ist in dem Verfahren und der Vorrichtung des Stands der Technik, die in 1 dargestellt sind, nicht vorhanden). Die Rechenentitäten 10, 20 und 50 sind typischerweise um programmgesteuerte Prozessoren herum basiert, obwohl einige oder alle der kryptographischen Funktionen in zweckgebundener Hardware implementiert sein könnten. Die Entitäten 10, 20 und 50 kommunizieren untereinander z. B. über das Internet oder ein anderes Computernetzwerk, obwohl es auch möglich, dass zwei oder alle drei Entitäten sich tatsächlich auf der gleichen Rechenplattform befinden. Aus Bequemlichkeit erfolgt die folgende Beschreibung in Bezug auf die Teilnehmer A, B und TA, wobei darauf verwiesen wird, dass diese Teilnehmer durch ihre jeweiligen Rechenentitäten handeln. Außerdem wird darauf verwiesen, dass die Nachricht, die durch den Nachrichtenabsender an den Nachrichtenempfänger gesendet wird, einen beliebigen Inhalt aufweisen kann und z. B. einfach ein symmetrischer kryptographischer Schlüssel sein kann.
  • Da bevorzugte Ausführungsbeispiele der Erfindung auf dem ElGamal-Verschlüsselungs-/Entschlüsselungsschema basieren, wird dieses letztere Schema zuerst unter Bezugnahme auf 1 kurz besprochen, um ein Verständnis der nachfolgend beschriebenen Ausführungsbeispiele der vorliegenden Erfindung zu erleichtern. Es wird jedoch darauf verwiesen, dass ein Teil des Beitrags, der durch die Erfinder der vorliegenden Erfindung geleistet wird, die Würdigung der Möglichkeiten ist, die durch das ElGamal-Schema geboten werden, und zwar in Bezug auf IB-Kryptographie, sowie darauf, wie diese Möglichkeiten in die Praxis umgesetzt werden können.
  • Anfängliche Aufbauphase
    • 1. B wählt zufälliges teilerfremdes p.
    • 2. B wählt eine Zufallszahl g in dem Bereich von 2 bis (p – 1).
    • 3. B wählt ein geheimes x.
    • 4. B berechnet y = gx mod p.
    • 5. B veröffentlicht (g, p, y) und hält x geheim.
  • Nachrichtenübertragungsphase
  • Nachrichtenverschlüsselung durch Absender A
    • 6. A wählt ein geheimes r aus.
    • 7. A berechnet h = gr mod p
    • 8. A berechnet J = (yr)·m mod p, wobei m die zu verschlüsselnde Nachricht ist.
    • 9. A sendet (h, J) an B.
  • Nachrichtenentschlüsselung durch Empfänger B
    • 10. B berechnet J/hx mod p, um die Nachricht m wiederzugewinnen.
  • Wie für Fachleute auf dem Gebiet zu erkennen sein wird, können der Absender A und der Empfänger B als einen Diffie-Hellman-Typ-Schlüsselaustausch ausgeführt habend betrachtet werden, dahingehend, dass die Größe yr mod p, die durch den Absender A berechnet wird, äquivalent zu der Größe hx mod p ist, die durch den Empfänger berechnet wird (beide diese Größen entsprechen gr,x mod p, wobei der Diffie-Hellman-Schlüssel zwischen A und B verteilt ist). Es ist jedoch auch möglich, das Verfahren in Bezug darauf zu betrachten, dass B einen öffentlichen Schlüssel (g, p, y) und einen privaten Schlüssel x besitzt, der Absender A den öffentlichen Schlüssel von B verwendet, um die Nachricht m zu verschlüsseln, und B seinen privaten Schlüssel verwendet, um die Nachricht wiederzugewinnen.
  • Unter Bezugnahme auf eine Erläuterung von Ausführungsbeispielen der vorliegenden Erfindung gehören bei dem Ausführungsbeispiel aus 2 die Öffentlich-/Privatschlüssel zu der vertrauenswürdigen Autorität TA, die angeordnet ist, um eine Nachricht, die durch den Absender A verschlüsselt wird, zu entschlüsseln. Der Verschlüsselungsvorgang, der durch den Absender A ausgeführt wird, beinhaltet die Verwendung einer durch den Absender ausgewählten „Identifizierer"-Zeichenfolge, die Informationen bezüglich einer oder mehrerer Handlungen aufweist (typischerweise die Überprüfung von Bedingungen, die in der Zeichenfolge angezeigt sind), die durch die vertrauenswürdige Autorität ausgeführt werden sollen, bevor dieselbe die Nachricht entschlüsselt, oder bevor dieselbe die entschlüsselte Nachricht an den Empfänger B freigibt. Die Zeichenfolge wird an den vertrauenswürdigen Teilnehmer geliefert und ist eine erforderliche Komponente des Entschlüsselungsvorgangs, wodurch eine Veränderung an der Zeichenfolge zu einem Versagen einer korrekten Entschlüsselung der Nachricht führt. Die detaillierten Schritte des Verfahrens aus 2 sind unten zusammen mit Angaben typischer Bitgrößen der wichtigen beinhalteten Größen dargelegt.
  • Anfängliche Aufbauphase
    • 1. TA wählt zufälliges teilerfremdes p aus (z. B. 1.024 Bits).
    • 2. TA wählt eine Zufallszahl g in dem Bereich von 2 bis (p – 1) aus.
    • 3. TA wählt ein geheimes x aus (z. B. eine zufällige 160 Bit-Zahl).
    • 4. TA berechnet y = gx mod p.
    • 5. TA veröffentlicht (g, p, y) und hält x geheim.
  • Nachrichtenübertragungsphase
  • Nachrichtenverschlüsselung durch Absender A
    • 6. A wählt eine Identifiziererzeichenfolge STR aus.
    • 7. A berechnet z = #(STR), wobei # eine Hash-Funktion ist (z. B. SHA-1 unter Rückgabe von 160 Bits).
    • 8. A berechnet y' = yz mod p
    • 9. A wählt ein geheimes r aus (z. B. eine zufällige 160 Bit-Zahl).
    • 10. A berechnet h = gr mod p.
    • 11. A berechnet J = (y' r)·m mod p.
    • 12. A sendet (STR, h, J) an B und zerstört r. (Die Schritte 8 und 11 können zusammengeführt werden, damit A J folgendermaßen berechnet: (yz,r)·m mod p)
  • Nachrichtentschlüsselung für den Empfänger B durch vertrauenswürdige Autorität TA
    • 13. B leitet (STR, h, J) an TA weiter.
    • 14. TA überprüft, dass B die Bedingungen, die in STR dargelegt sind, erfüllt.
    • 15. TA berechnet z = #(STR).
    • 16. TA berechnet J/h(z,x) mod p, um die Nachricht m wiederzugewinnen.
    • 17. TA gibt Nachricht m an B zurück.
    • 18. B empfängt wiedergewonnene Nachricht m.
  • Die Übertragungen werden vorzugsweise in einer beliebigen geeigneten Weise integritätsgeschützt.
  • Wenn z und r beide 160 Bits aufweisen, ist die Hauptrechenlast bei dem Absender eine 160-Bit-Potenzierung und eine 320-Bit-Potenzierung (unter der Annahme einer Kombination der Schritte 8 und 11), während die Hauptrechenlast bei dem TA eine 320-Bit-Potenzierung und eine Inversion ist.
  • Es ist für Fachleute zu erkennen, dass g zufällig gewählt werden sollte, jedoch derart, dass Folgendes gilt: gq = l mod pwobei q eine große Primzahl ist (typischerweise zumindest 160 Bits), die (p – l) teilt.
  • Es soll angemerkt werden, dass die in Schritt 11 ausgeführte Multiplikation durch eine beliebige invertierbare Modulo-p-Operation zum Kombinieren von yr,z und m ersetzt werden kann (die Operation wird bei Schritt 16 invertiert). So kann J z. B. folgendermaßen berechnet werden: m ⨁ H (yr,z mod p)wobei ⨁ die Exklusiv-ODER-Funktion ist und H eine Hash-Funktion ist. Die Nachricht wird nachfolgend durch die TA unter folgender Berechnung wiedergewonnen: J ⨁ H (hx,z mod p).
  • In Bezug auf den Inhalt der Zeichenfolge STR, die durch den Absender ausgewählt wird, kann, wie bereits angedeutet wurde, diese Zeichenfolge eine beliebige Zeichenfolge sein, obwohl in vielen Fällen Einschränkungen für die Zeichenfolge gelten – z. B. könnte es erforderlich sein, dass die Zeichenfolge STR ein bestimmtes XML-Schema erfüllt.
  • Allgemein wird die Zeichenfolge STR verwendet, um Informationen bezüglich Aktionen, die durch die vertrauenswürdige Autorität unternommen werden sollen, wenn dieselbe die verschlüsselte Nachricht zur Entschlüsselung empfängt, zu der vertrauenswürdigen Autorität zu befördern. Die Informationen in der Zeichenfolge STR können sich auf Aktionen beziehen, die durch die vertrauenswürdige Autorität unternommen werden sollen, und die eine Nachrichtenentschlüsselung nicht beeinträchtigen – z. B. könnte es erforderlich sein, dass die vertrauenswürdige Autorität TA eine Nachricht an den Nachrichtenabsender A sendet, und zwar zu der Zeit, zu der die TA die betreffende Nachricht entschlüsselt. Die Informationen in der Zeichenfolge STR jedoch spezifizieren häufig eine oder mehrere Bedingungen, die durch die vertrauenswürdige Autorität als erfüllt überprüft werden sollen, bevor die vertrauenswürdige Autorität die verwandte verschlüsselte Nachricht entschlüsselt (oder bevor die entsprechende entschlüsselte Nachricht an den betreffenden Empfänger B zurückgegeben wird).
  • Die Zeichenfolge STR könnte z. B. eine Empfängeridentitätsbedingung aufweisen, die einen spezifischen beabsichtigten Nachrichtenempfänger identifiziert; in diesem Fall führt die vertrauenswürdige Autorität einen Authentifizierungsvorgang mit dem Empfänger B aus, unter Vorlage der darauf bezogenen Nachricht zur Entschlüsselung, um zu überprüfen, dass der betreffende Empfänger die Empfängeridentitätsbedingung erfüllt.
  • Anstelle eines Identifizierens eines beabsichtigten Empfängers als bestimmtes Individuum kann die Zeichenfolge STR eine oder mehrere Bedingungen aufweisen, die eines oder mehrere Nicht-Identitäts-Attribute spezifizieren, die der Empfänger besitzen muss; z. B. kann eine Bedingung spezifizieren, dass ein Empfänger eine bestimmte Kreditfähigkeit besitzen muss. Wieder liegt es in der Verantwortlichkeit der vertrauenswürdigen Autorität, diese Bedingung zu überprüfen, bevor die entschlüsselte Nachricht für einen Empfänger unter Vorlage der verschlüsselten Nachricht zur Entschlüsselung erzeugt wird.
  • Die Zeichenfolge STR kann zusätzlich oder alternativ eine oder mehrere Bedingungen aufweisen, die nicht auf ein Attribut des beabsichtigten Empfängers bezogen sind; z. B. kann eine Bedingung beinhaltet sein, dass die betreffende Nachricht nicht vor einem bestimmten Datum oder einer bestimmten Zeit entschlüsselt werden soll.
  • Auf was auch immer sich die Bedingungen beziehen, die Zeichenfolge STR kann direkt die oder jede Bedingung darlegen oder kann einen oder mehrere Bedingungsidentifizierer aufweisen, die eine entsprechende vorbestimmte Bedingung spezifizieren, die der vertrauenswürdigen Autorität bekannt ist (in dem letzteren Fall verwendet die vertrauenswürdige Autorität den oder jeden Bedingungsidentifizierer zum Nachschlagen der entsprechenden zu überprüfenden Bedingung).
  • Bei der Übersicht des Verfahrens aus 2 ist es, wie bei dem Verfahren des Stands der Technik aus 1, möglich zu betrachten, was in Bezug auf den Diffie-Hellman-Schlüssel-Verteilungsvorgang geschieht. Insbesondere können die Aktionen des Absenders als äquivalent zu Folgendem betrachtet werden:
    Ableiten eines Diffie-Hellman-Schlüssels (gr,x) aus dem Schlüsselmaterial y, das durch das geheime r des vertrauenswürdigen Teilnehmers und des Absenders bereitgestellt wird;
    Potenzieren, Modulo p, des Diffie-Hellman-Schlüssels unter Verwendung des Zeichenfolge-Hash z als Exponent,
    Verwenden des potenzierten Schlüssels (gr,x,z), um eine invertierbare Modulo-p-Operation auszuführen, die die Nachricht m beinhaltet, um dadurch eine verschlüsselte Nachricht zu bilden.
  • Ähnlich können die Aktionen der TA als äquivalent zu Folgendem betrachtet werden:
    Ableiten des Diffie-Hellman-Schlüssels (gr,x) von dem Absender-Schlüsselmaterial h und dem geheimen x der TA,
    Potenzieren, Modulo p, des Diffie-Hellman-Schlüssels unter Verwendung des Zeichenfolge-Hash z als Exponent,
    Anwenden des potenzierten Schlüssels (gr,x,z) auf die verschlüsselte Nachricht, um die durch den Absender ausgeführte invertierbare Operation zu invertieren, um dadurch die Nachricht wiederzugewinnen.
  • Alternativ modifiziert, bei Betrachtung in Bezug darauf, dass die TA einen öffentlichen Schlüssel (p, g, y) und einen privaten Schlüssel (x) besitzt, bei dem Vorgang aus 2 der Absender A effektiv den öffentlichen Schlüssel der TA unter Verwendung des Hash der Zeichenfolge STR als Exponent zur Potenzierung, Modulo p, des Elements y dieses Schlüssels. Der Absender A liefert außerdem die Zeichenfolge an die TA, um es derselben zu ermöglichen, eine komplementäre Modifikation an ihrem privaten Schlüssel auszuführen, indem der private Schlüssel x mit dem Hash der Zeichenfolge multipliziert wird. Wenn die Zeichenfolge Informationen aufweist, die einem Identifizieren eines beabsichtigten Empfängers B der Nachricht m dienen, kann man sich die Modifikation des öffentlichen Schlüssels der TA als eine individuelle Anpassung des öffentlichen Schlüssels an den beabsichtigten Empfänger B vorstellen. Dieser Vorgang eines Modifizierens des öffentlichen Schlüssels eines anderen Teilnehmers durch Verwenden des Hash einer Zeichenfolge STR als Exponent zur Potenzierung zumindest eines Elements des öffentlichen Schlüssels ist nicht auf die oben beschriebene Verschlüsselung/Entschlüsselung auf ElGamal-Basis eingeschränkt und kann in Verbindung mit einem beliebigen geeigneten kryptographischen Vorgang ausgeführt werden.
  • Ein potentieller Nachteil des Ausführungsbeispiels aus 2 besteht darin, dass die TA die Nachrichten m lesen kann. Um dies zu verhindern, kann B die verschlüsselte Nachricht vor einem Senden derselben an die TA zur Entschlüsselung verdecken, wobei B nachfolgend die entschlüsselte, jedoch noch verdeckte Nachricht, die durch die TA zurückgegeben wird, aufdeckt, um die Nachricht m wiederzugewinnen. Beispielhaft kann Schritt 13 aus 2 durch Folgendes ersetzt werden:
    • 13a B wählt ein verdeckendes geheimes k aus (z. B. 1.024 Bits).
    • 13b B berechnet J' = J·k mod p
    • 13c B sendet (STR, h, J') an TA
  • Die TA führt ihre Verarbeitungsschritte 14 bis 18 wie zuvor aus, jedoch unter Verwendung von J' anstelle von J; das Ergebnis von Schritt 16 ist nun die Wiedergewinnung von mk – d. h. der verdeckten, jedoch entschlüsselten Nachricht – anstelle der Nachricht m. Damit B die Nachricht aufdecken kann, wird Schritt 18 nun zu Folgendem:
    • 18a B empfängt die verdeckte entschlüsselte Nachricht mk.
    • 18b B berechnet (mk/k) mod p, um die Nachricht m wiederzugewinnen; danach zerstört B k.
  • Der vollständige Vorgang unter Beinhaltung des obigen Verdeckens ist in 3 gezeigt.
  • Es ist zu erkennen, dass die Operationen des Verdeckens/Aufdeckens sich von den oben beschriebenen unterscheiden können. Das Verdecken kann z. B. durch Berechnen einer Moduln-p-Division von J durch k ausgeführt werden, wobei in diesem Fall ein Aufdecken durch eine Moduln-p-Multiplikation mit k der entschlüsselten, jedoch noch verdeckten Nachricht, die durch die TA zurückgegeben wird, ausgeführt würde.
  • Viele Varianten an den oben beschriebenen Ausführungsbeispielen der Erfindung sind möglich. So könnte es in bestimmten Situationen erforderlich sein, dass eine Nachricht nur mit der Kooperation mehrerer vertrauenswürdiger Autoritäten entschlüsselbar ist, die jeweils typischerweise unterschiedliche zugeordnete öffentliche und private Daten aufweisen würden. Eine derartige Situation, in der dies wünschenswert sein könnte, ist die, bei der der Absender mehrere Bedingungen auferlegen möchte, jedoch keine einzelne vertrauenswürdige Autorität befugt zur Überprüfung aller Bedingungen ist – in diesem Fall können unterschiedliche vertrauenswürdige Autoritäten zur Überprüfung unterschiedlicher Bedingungen verwendet werden. Eine weitere Situation, in der mehrere vertrauenswürdige Autoritäten erforderlich sein könnten, ist die, bei der ein Belang darin besteht, dass eine vertrauenswürdige Autorität unter Umständen Zugriff auf die verschlüsselten, jedoch nicht verdeckten Nachrichten hat, die von A zu B geleitet werden, wobei es wichtig ist zu verhindern, dass die vertrauenswürdige Autorität die Nachrichten liest – in diesem Fall können mehrere vertrauenswürdige Autoritäten zusammen in einer derartigen Weise verwendet werden, dass keine einzelne Autorität die Nachrichten, die von A zu B laufen, lesen kann.
  • Verschiedene Anordnungen sind für die Beinhaltung mehrerer vertrauenswürdige Autoritäten möglich, die Folgende umfassen:
    • – der Absender organisiert den Nachrichteninhalt als eine Anzahl von Datensätzen (z. B. k Datensätze) durch Verwenden eines Geheimnisteilungsschemas von Shamir und verschlüsselt dann jeden Datensatz unter Verwendung einer zugeordneten Zeichenfolge STR (z. B. unter Spezifikation einer jeweiligen zu überprüfenden Bedin gung) und des öffentlichen Modulus einer jeweiligen der vertrauenswürdigen Autoritäten; um die Nachricht wiederzugewinnen, muss ein Empfänger B zu allen vertrauenswürdigen Autoritäten gehen, um alle Datensätze zu entschlüsseln, da beliebige k – 1 Datensätze oder weniger keinen Nachrichteninhalt offenbaren können.
    • – der Absender kann die verschlüsselten Daten, die aus einem Verschlüsseln von Nachrichtendaten unter Verwendung einer ersten Zeichenfolge (z. B. unter Spezifikation einer bestimmten Bedingung) und des öffentlichen Modulus einer ersten vertrauenswürdigen Autorität resultieren, als die Daten, die unter Verwendung einer zweiten Zeichenfolge und des öffentlichen Modulus einer zweiten vertrauenswürdigen Autorität verschlüsselt werden sollen, usw. verwenden; wobei die verschlüsselten Daten, die aus der Verschlüsselung resultieren, die in Bezug auf alle zu verwendende vertrauenswürdigen Autoritäten ausgeführt wird, dann an den Empfänger B zur Entschlüsselung in nachfolgenden Entschlüsselungsoperationen durch die entsprechenden vertrauenswürdigen Autoritäten gesendet werden.

Claims (32)

  1. Ein kryptographisches Verfahren, bei dem ein Absender (A) eine Nachricht verschlüsselt und an einen Empfänger (B) sendet, zur Entschlüsselung durch einen vertrauenswürdigen Teilnehmer (TA), wobei der Absender (A) in Besitz eines öffentlichen Schlüssels ist, für den es einen entsprechenden privaten Schlüssel gibt, der durch den vertrauenswürdigen Teilnehmer (TA) gehalten wird, wobei das Verfahren folgende Schritte aufweist: Modifizieren, durch den Absender (A), des öffentlichen Schlüssels durch Potenzieren zumindest eines Elements dieses Schlüssels unter Verwendung eines Hash einer Zeichenfolge (STR) als Exponent, die Informationen bezüglich zumindest einer Aktion aufweist, die durch den vertrauenswürdigen Teilnehmer (TA) durchgeführt werden soll, und unter Verwendung des modifizierten öffentlichen Schlüssels zur Verschlüsselung der Nachricht; Empfangen, durch den Empfänger (B), der verschlüsselten Nachricht und der Zeichenfolge (STR) und Weiterleiten derselben an den vertrauenswürdigen Teilnehmer; und Verwenden, durch den vertrauenswürdigen Teilnehmer (TA), der Zeichenfolge (STR) zum Modifizieren seines privaten Schlüssels zum Ergänzen des modifizierten öffentlichen Schlüssels, Entschlüsseln der Nachricht mit dem modifizierten privaten Schlüssel und Zurückgeben der entschlüsselten Nachricht an den Empfänger (B) nach einer Ausführung der zumindest einen Aktion mit einem zufriedenstellenden Abschluss.
  2. Ein Verfahren gemäß Anspruch 1, bei dem: der empfangene öffentliche Schlüssel Elemente p, g und y aufweist, wobei das Element y gx mod p entspricht, wobei x ein privater Schlüssel ist, der zu dem vertrauenswürdigen Teilnehmer (TA) gehört; und der Absender (A) den öffentlichen Schlüssel durch Ausführen einer Moduln-p-Potenzierung des Elements y unter Verwendung des Hash der Zeichenfolge (STR) als Exponent modifiziert.
  3. Ein Verfahren gemäß Anspruch 2, bei dem der vertrauenswürdige Teilnehmer (TA) seinen privaten Schlüssel in Bezug auf eine Verwendung in Verbindung mit dem modifizierten öffentlichen Schlüssel durch eine Operation modifiziert, die äquivalent zu einem Multiplizieren seines privaten Schlüssels mit dem Hash der Zeichenfolge (STR) ist.
  4. Ein Verfahren gemäß Anspruch 2, bei dem: der Absender (A) den modifizierten öffentlichen Schlüssel verwendet, um die Nachricht m zu verschlüsseln, indem eine Moduln-p-Potenzierung des Elements des modifizierten öffentlichen Schlüssels unter Verwendung eines geheimen r als Exponent ausgeführt wird und dann das Ergebnis und die Nachricht m unter Verwendung einer invertierbaren Moduln-p-Operation kombiniert werden, um einen Wert J zu bilden; der Absender (A) den Wert J und einen Wert h entsprechend gr mod p zusätzlich zu der Zeichenfolge an den Empfänger (B) sendet.
  5. Ein Verfahren gemäß Anspruch 4, bei dem die Potenzierungen mit Bezug auf den öffentlichen Schlüssel, die durch den Absender (A) ausgeführt werden, gemeinsam als eine einzelne Potenzierungsoperation ausgeführt werden.
  6. Ein Verfahren gemäß Anspruch 4, bei dem die invertierbare Operation ein Multiplizieren der Nachricht mit dem Ergebnis einer Potenzierung des Elements des modifizierten öffentlichen Schlüssels unter Verwendung des geheimen r aufweist.
  7. Ein Verfahren gemäß Anspruch 6, bei dem der vertrauenswürdige Teilnehmer (TA) die verschlüsselte Nachricht durch ein Berechnen eines Werts z als Hash der Zeichenfolge (STR) und darauffolgendes Berechnen von: J/hz,x mod pentschlüsselt; wobei der vertrauenswürdige Teilnehmer (TA) die Nachricht nur entschlüsselt oder die entschlüsselte Nachricht nur freigibt, nachdem die zumindest eine Aktion mit einem zufriedenstellenden Abschluss ausgeführt wurde.
  8. Ein Verfahren gemäß Anspruch 7, bei dem: der Empfänger (B) vor einem Weiterleiten des Werts J an den vertrauenswürdigen Teilnehmer (TA) zur Entschlüsselung denselben einer Modulo-p-Verdeckungsoperation unter Verwendung eines Faktors k unterzieht, wobei k eine geheime Zufallszahl ist; und der vertrauenswürdige Teilnehmer (TA) die entschlüsselte, jedoch noch verdeckte Nachricht zurück an den Empfänger (B) liefert, unter der Voraussetzung, dass die zumindest eine Aktion mit einem zufriedenstellenden Abschluss ausgeführt wurde, wobei der Empfänger (B) daraufhin die Verdeckung aufhebt, um die Nachricht wiederzugewinnen.
  9. Ein Verfahren gemäß Anspruch 4, bei dem die invertierbare Operation ein Ausführen einer Exklusiv-ODER-Kombination der Nachricht mit einem Hash des Ergebnisses einer Potenzierung des Elements des modifizierten öffentlichen Schlüssels unter Verwendung des geheimen r aufweist.
  10. Ein Verfahren gemäß Anspruch 9, bei dem der vertrauenswürdige Teilnehmer (TA) die verschlüsselte Nachricht durch ein Berechnen eines Werts z als Hash der Zeichenfolge (STR) und ein darauffolgendes Berechnen von: J ⊕ H (hz,x mod p)entschlüsselt, wobei ⨁ die Exklusiv-ODER-Funktion ist und H eine Hash-Funktion ist; wobei der vertrauenswürdige Teilnehmer (TA) die Nachricht nur entschlüsselt oder die entschlüsselte Nachricht nur freigibt, nachdem die zumindest eine Aktion mit einem zufriedenstellenden Abschluss ausgeführt wurde.
  11. Ein Verfahren gemäß Anspruch 10, bei dem: der Empfänger (B) vor dem Weiterleiten des Werts J an den vertrauenswürdigen Teilnehmer (TA) zur Entschlüsselung denselben einer Moduln-p-Verdeckungsoperation unter Verwendung eines Faktors k unterzieht, wobei k eine geheime Zufallszahl ist; und der vertrauenswürdige Teilnehmer (TA) die entschlüsselte, jedoch noch verdeckte Nachricht zurück an den Empfänger (B) liefert, unter der Voraussetzung, dass die zumindest eine Aktion mit einem zufriedenstellenden Abschluss ausgeführt wurde, wobei der Empfänger (B) daraufhin die Verdeckung aufhebt, um die Nachricht wiederzugewinnen.
  12. Ein Verfahren gemäß Anspruch 1, bei dem die zumindest eine Aktion eine Prüfung, dass eine Bedingung erfüllt wurde, aufweist.
  13. Ein Verfahren gemäß Anspruch 1, bei dem die zumindest eine Aktion eine Prüfung in Bezug auf die Identität des Empfängers aufweist.
  14. Ein kryptographisches Verfahren, bei dem ein vertrauenswürdiger Teilnehmer (TA) mit geheimem x und öffentlichen Parametern p und g zumindest folgende Schritte ausführt: Empfangen von Werten h und J und einer Bedingungszeichenfolge STR von einem Nachrichtenabsender (A), wobei die Bedingungszeichenfolge zumindest eine Bedingung aufweist, die durch den vertrauenswürdigen Teilnehmer (TA) geprüft werden soll; Berechnen von: z ← #(STR), wobei # eine Hash-Funktion ist; Berechnen von: f–1 (J, hz,x)wobei f–1() eine invertierbare Operation f() invertiert, um dadurch ein Ergebnis zu erzeugen, das einer entschlüsselten Nachricht m entspricht, wenn: der empfangene Wert von h gr mod p entspricht, wobei r ein Geheimnis ist, das zu dem Absender (A) gehört, und der empfangene Wert von J f(gr, m) entspricht; wobei der vertrauenswürdige Teilnehmer (TA) das Ergebnis nur berechnet oder das Ergebnis nur freigibt, nachdem bestätigt wurde, dass die zumindest eine Bedingung, die in der Zeichenfolge beinhaltet ist, erfüllt wurde.
  15. Ein Verfahren gemäß Anspruch 14, bei dem f–1() einem Berechnen von: J/hz,x mod pentspricht, wobei das Ergebnis die Nachricht m ist, wenn der empfangene Wert von J(gr,x,z) m mod p ist.
  16. Ein Verfahren gemäß Anspruch 14, bei dem f–1() einem Berechnen von: J ⊕ H (hz,x mod p)entspricht, wobei H eine vorbestimmte Hash-Funktion ist, wobei das Ergebnis die Nachricht m ist, wenn der empfangene Wert von J m ⊕ H(gr,x,z) mod p ist.
  17. Ein Verfahren gemäß Anspruch 14, bei dem der empfangene Wert von J ein verdeckter Wert ist, wodurch das Ergebnis ein verdecktes Ergebnis ist.
  18. Kryptographische Vorrichtung, die eine erste, zweite und dritte Rechenentität aufweist, wobei die erste Rechenentität (A) folgende Merkmale aufweist: eine Eingangsanordnung zum Empfangen eines öffentlichen Schlüssels, für den es einen entsprechenden privaten Schlüssel gibt, der durch die zweite Rechenentität (TA) gehalten wird, eine Schlüsselverarbeitungsanordnung, die angeordnet ist, um den öffentlichen Schlüssel zu modifizieren, indem zumindest ein Element des empfangenen öffentlichen Schlüssels unter Verwendung eines Hash einer Zeichenfolge (STR) als Exponent potenziert wird, wobei diese Zeichenfolge Informationen bezüglich zumindest einer Aktion, die durch die zweite Rechenentität (TA) durchgeführt werden soll, aufweist, eine Verschlüsselungsanordnung zum Verschlüsseln einer Nachricht unter Verwendung des modifizierten öffentlichen Schlüssels; und eine Ausgangsanordnung zum Ausgeben der verschlüsselten Nachricht und der Zeichenfolge; wobei die dritte Rechenentität (B) angeordnet ist, um die verschlüsselte Nachricht und die Zeichenfolge zu empfangen und dieselben an die zweite Rechenentität (TA) weiterzuleiten, und die zweite Rechenentität (TA) angeordnet ist, um die Nachricht und die Zeichenfolge zu empfangen, um die Zeichenfolge zu verwenden, um ihren privaten Schlüssel zu modifizieren, um den modifizierten öffentlichen Schlüssel zu ergänzen, und um die Nachricht unter Verwendung des modifizierten privaten Schlüssels zu entschlüsseln, wobei die zweite Rechenentität (TA) angeordnet ist, um die Nachricht nur zu entschlüsseln oder die entschlüsselte Nachricht nur freizugeben, nachdem die zumindest eine Aktion mit einem zufriedenstellenden Abschluss ausgeführt wurde.
  19. Vorrichtung gemäß Anspruch 18, bei der der empfangene öffentliche Schlüssel Elemente p, g und y aufweist, wobei das Element y gx mod p entspricht, wobei x ein privater Schlüssel ist, der zu der zweiten Rechenentität (TA) gehört, wobei die Schlüsselverarbeitungsanordnung der ersten Rechenentität (A) angeordnet ist, um den empfangenen öffentlichen Schlüssel zu modifi zieren, indem eine Moduln-p-Potenzierung des Elements y unter Verwendung des Hash der Zeichenfolge (STR) als Exponent ausgeführt wird.
  20. Vorrichtung gemäß Anspruch 19, bei der die zweite Rechenentität (TA) angeordnet ist, um ihren privaten Schlüssel in Bezug auf eine Verwendung in Verbindung mit dem modifizierten öffentlichen Schlüssel durch eine Operation zu modifizieren, die äquivalent zu einem Multiplizieren ihres privaten Schlüssels mit dem Hash der Zeichenfolge (STR) ist.
  21. Vorrichtung gemäß Anspruch 19, bei der die Verschlüsselungsanordnung der ersten Rechenentität (A) angeordnet ist, um die Nachricht m zu verschlüsseln, indem eine Moduln-p-Potenzierung des Elements des modifizierten öffentlichen Schlüssels unter Verwendung eines geheimen r als Exponent ausgeführt wird und dann das Ergebnis und die Nachricht m unter Verwendung einer invertierbaren Moduln-p-Operation kombiniert werden, um einen Wert J zu bilden; wobei die Ausgangsanordnung der ersten Rechenentität (A) angeordnet ist, um den Wert J und einen Wert h, der gr mod p entspricht, auszugeben.
  22. Vorrichtung gemäß Anspruch 21, bei der die Schlüsselverarbeitungsanordnung und die Verschlüsselungsanordnung der ersten Rechenentität (A) derart integriert und angeordnet sind, dass die Potenzierungen in Bezug auf den öffentlichen Schlüssel, die durch diese beiden Anordnungen ausgeführt werden, gemeinsam als eine einzelne Potenzierungsoperation ausgeführt werden.
  23. Vorrichtung gemäß Anspruch 21, bei der die Verschlüsselungsanordnung angeordnet ist, um die invertierbare Operation auszuführen, indem die Nachricht mit dem Ergebnis einer Potenzierung des Elements des modifizier ten öffentlichen Schlüssels unter Verwendung eines geheimen r multipliziert wird.
  24. Vorrichtung gemäß Anspruch 23, bei der die zweite Rechenentität angeordnet ist, um die verschlüsselte Nachricht zu entschlüsseln, indem ein Wert z als Hash der Zeichenfolge (STR) berechnet wird und indem dann: J/hz,x mod pberechnet wird.
  25. Vorrichtung gemäß Anspruch 24, bei der die dritte Rechenentität (B) angeordnet ist, um den Wert J zu empfangen und denselben einer Moduln-p-Verdeckungsoperation unter Verwendung eines Faktors k zu unterziehen, wobei k eine geheime Zufallszahl ist, bevor der verdeckte Wert J an die zweite Rechenentität (TA) weitergeleitet wird; wobei die zweite Rechenentität angeordnet ist, um eine Nachrichtenentschlüsselung auszuführen und die entschlüsselte, jedoch noch verdeckte Nachricht an die dritte Rechenentität (B) zurückzugeben, unter der Voraussetzung, dass die zumindest eine Aktion mit einem zufriedenstellenden Abschluss ausgeführt wurde; und wobei die dritte Rechenentität (B) ferner angeordnet ist, um die entschlüsselte, jedoch noch verdeckte Nachricht zu empfangen und die Verdeckung aufzuheben, um die Nachricht wiederzugewinnen.
  26. Vorrichtung gemäß Anspruch 21, bei der die Verschlüsselungsanordnung angeordnet ist, um die invertierbare Operation auszuführen, indem eine Exklusiv-ODER-Kombination der Nachricht mit einem Hash des Ergebnisses einer Potenzierung des Elements des modifizierten öffentlichen Schlüssels unter Verwendung des geheimen r ausgeführt wird.
  27. Vorrichtung gemäß Anspruch 26, bei der die zweite Rechenentität (TA) angeordnet ist, um die verschlüsselte Nachricht durch ein Berechnen eines Werts z als Hash der Zeichenfolge (STR) und ein darauffolgendes Berechnen von: J ⊕ H (hz,x mod p)zu entschlüsseln, wobei ⨁ die Exklusiv-ODER-Funktion ist und H eine Hash-Funktion ist.
  28. Vorrichtung gemäß Anspruch 27, bei der die dritte Rechenentität (B) angeordnet ist, um den Wert J zu empfangen und denselben einer Modulo-p-Verdeckungsoperation unter Verwendung eines Faktors k zu unterziehen, wobei k eine geheime Zufallszahl ist, bevor der verdeckte Wert J an die zweite Rechenentität (TA) weitergeleitet wird; wobei die zweite Rechenentität angeordnet ist, um eine Nachrichtenentschlüsselung auszuführen und die entschlüsselte, jedoch noch verdeckte Nachricht an die dritte Rechenentität (B) zurückzugeben, unter der Voraussetzung, dass die zumindest eine Aktion mit einem zufriedenstellenden Abschluss ausgeführt wurde; und die dritte Rechenentität (B) ferner angeordnet ist, um die entschlüsselte, jedoch noch verdeckte Nachricht zu empfangen und die Verdeckung aufzuheben, um die Nachricht wiederzugewinnen.
  29. Eine Vertrauenswürdiger-Teilnehmer-Entität (TA), die folgende Merkmale aufweist: einen Datenspeicher zum Speichern eines geheimen x und öffentlicher Parameter p und g; eine Eingangsanordnung zum Empfangen von Werten h und J und einer Bedingungszeichenfolge STR von einem Nachrichtenabsender (A), wobei die Bedingungszeichenfolge zumindest eine Bedingung aufweist, die durch den vertrauenswürdigen Teilnehmer überprüft werden soll; eine Verarbeitungsanordnung, die angeordnet ist, um Folgendes zu berechnen: z ← #(STR), wobei # eine Hash-Funktion ist; und f–1 (J, hz,x) wobei f–1() eine invertierbare Operation f() invertiert, um dadurch ein Ergebnis zu erzeugen, das einer entschlüsselten Nachricht m entspricht, wenn: der empfangene Wert von h gr mod p entspricht, wobei r ein Geheimnis ist, das zu dem Absender gehört, und der empfangene Wert von J f(gr,x,z, m) entspricht; eine Ausgangsanordnung zum Ausgeben des Ergebnisses; und eine Steueranordnung, die angeordnet ist, um zu prüfen, dass die zumindest eine Bedingung, die in der Zeichenfolge STR beinhaltet ist, erfüllt wurde, und nur zu erlauben, dass die Verarbeitungsanordnung das Ergebnis berechnet, oder nur zu erlauben, dass die Ausgangsanordnung das Ergebnis ausgibt, wenn die zumindest eine Bedingung erfüllt wurde.
  30. Eine Vertrauenswürdiger-Teilnehmer-Entität (TA) gemäß Anspruch 29, bei der f–1() einem Berechnen von: J/hz,x mod pentspricht, wobei das Ergebnis die Nachricht m ist, wenn der empfangene Wert von J(gr,x,z)·m mod p ist.
  31. Eine Vertrauenswürdiger-Teilnehmer-Entität (TA) gemäß Anspruch 29, bei der f–1() einem Berechnen von: J ⨁ H(hz,x mod p)entspricht, wobei H eine vorbestimmte Hash-Funktion ist, wobei das Ergebnis die Nachricht m ist, wenn der empfangene Wert von J m ⨁ H (gr,x,z) mod p ist.
  32. Eine Vertrauenswürdiger-Teilnehmer-Entität (TA) gemäß Anspruch 29, bei der der empfangene Wert von J ein verdeckter Wert ist, wodurch das Ergebnis ein verdecktes Ergebnis ist.
DE602005003984T 2004-06-11 2005-06-06 Kryptografisches Verfahren und Gerät Active DE602005003984T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB0413056 2004-06-11
GB0413056A GB2415112B (en) 2004-06-11 2004-06-11 Cryptographic method and apparatus

Publications (2)

Publication Number Publication Date
DE602005003984D1 DE602005003984D1 (de) 2008-02-07
DE602005003984T2 true DE602005003984T2 (de) 2008-12-18

Family

ID=32732327

Family Applications (1)

Application Number Title Priority Date Filing Date
DE602005003984T Active DE602005003984T2 (de) 2004-06-11 2005-06-06 Kryptografisches Verfahren und Gerät

Country Status (4)

Country Link
US (1) US7801302B2 (de)
EP (1) EP1605626B1 (de)
DE (1) DE602005003984T2 (de)
GB (1) GB2415112B (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9197422B2 (en) * 2013-01-24 2015-11-24 Raytheon Company System and method for differential encryption

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11122240A (ja) * 1997-10-17 1999-04-30 Fuji Xerox Co Ltd 復号装置および方法ならびにアクセス資格認証装置および方法
GB9915121D0 (en) * 1999-06-30 1999-09-01 Ncr Int Inc Portable terminal
US7360080B2 (en) 2000-11-03 2008-04-15 International Business Machines Corporation Non-transferable anonymous credential system with optional anonymity revocation
EP1425874B1 (de) * 2001-08-13 2010-04-21 Board Of Trustees Of The Leland Stanford Junior University Systeme und Verfahren zur Verschlüsselung auf Identitätsbasis und damit zusammenhängende kryptografische Techniken
GB0124681D0 (en) * 2001-10-15 2001-12-05 Hewlett Packard Co Method and apparatus for encrypting data
GB2384406B (en) 2002-01-21 2004-05-12 Hyun Ku Yeun Cryptosystem
GB0221639D0 (en) * 2002-09-17 2002-10-30 Hewlett Packard Co Method and apparatus for printing
US7313238B2 (en) 2003-01-31 2007-12-25 Hewlett-Packard Development Company, L.P. Method and system for relating cryptographic keys
GB2398712B (en) * 2003-01-31 2006-06-28 Hewlett Packard Development Co Privacy management of personal data
GB0313663D0 (en) 2003-06-13 2003-07-16 Hewlett Packard Development Co Mediated rsa cryptographic method and system
GB0313666D0 (en) 2003-06-13 2003-07-16 Hewlett Packard Development Co RSA cryptographic method and system

Also Published As

Publication number Publication date
US7801302B2 (en) 2010-09-21
GB0413056D0 (en) 2004-07-14
EP1605626B1 (de) 2007-12-26
GB2415112B (en) 2007-04-25
US20050276414A1 (en) 2005-12-15
GB2415112A (en) 2005-12-14
DE602005003984D1 (de) 2008-02-07
EP1605626A1 (de) 2005-12-14

Similar Documents

Publication Publication Date Title
DE602004001273T2 (de) Verfahren und Vorrichtung zur Identifiezierungsbasierten Verschlüsselung
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
DE69935469T2 (de) Verfahren zur schnellen Ausführung einer Entschlüsselung oder einer Authentifizierung
DE69833334T2 (de) Verschlüsselungsgerät und -verfahren mit schneller entzifferung
DE602005002652T2 (de) System und Verfahren für das Erneuern von Schlüsseln, welche in Public-Key Kryptographie genutzt werden
EP2742643B1 (de) Vorrichtung und verfahren zum entschlüsseln von daten
DE60316861T2 (de) Verfahren und Vorrichtung zur Verschlüsselung/Entschlüsselung von Daten
DE69935455T2 (de) Kryptographisches verfahren unter verwendung eines öffentlichen und eines privaten schlüssels
DE60313704T2 (de) Verfahren und Vorrichtung zur Erzeugung eines Geheimschlüssels
DE69938624T2 (de) Robuste und effiziente verteilte erzeugung eines rsa-schlüssels
DE60031304T3 (de) Verfahren zur authentifizierung von softwarebenutzern
EP1125395B1 (de) Verfahren und anordnung zur authentifikation von einer ersten instanz und einer zweiten instanz
AT512289B1 (de) Kryptographisches authentifizierungs- und identifikationsverfahren für mobile telefon- und kommunikationsgeräte mit realzeitverschlüsselung während der aktionsperiode
CH694603A5 (de) Identifizierungsverfahren.
DE60025401T2 (de) Erzeugung eines mathematischen eingeschränkten schlüssels unter verwendung einer einwegfunktion
DE10143728B4 (de) Vorrichtung und Verfahren zum Berechnen eines Ergebnisses einer modularen Exponentiation
DE69833352T2 (de) Vorrichtung zur Verarbeitung von Bivektoren und Verschlüsselungssystem unter Verwendung desselben
CH711133B1 (de) Protokoll zur Signaturerzeugung
DE112009000154T5 (de) Änderung der Darstellung eines Punktes auf einer elliptischen Kurve
DE60109805T2 (de) Verfahren und system zur benützung eines ungesicherten krypto-beschleunigers
Wu Fully homomorphic encryption: Cryptography's holy grail
DE602004010942T2 (de) Potenzierung auf einer elliptischen Kurve die einen differentiellen Fehlerangriff abwehren kann
DE10328860B4 (de) Vorrichtung und Verfahren zum Verschlüsseln von Daten
DE602005003984T2 (de) Kryptografisches Verfahren und Gerät
DE10248006B4 (de) Verfahren und Vorrichtung zum Verschlüsseln von Daten

Legal Events

Date Code Title Description
8364 No opposition during term of opposition