DE60006041T2 - Verfahren zur überprüfung der benützung von öffentlichen schlüsseln welche von einem geladenen system generiert werden - Google Patents

Verfahren zur überprüfung der benützung von öffentlichen schlüsseln welche von einem geladenen system generiert werden Download PDF

Info

Publication number
DE60006041T2
DE60006041T2 DE60006041T DE60006041T DE60006041T2 DE 60006041 T2 DE60006041 T2 DE 60006041T2 DE 60006041 T DE60006041 T DE 60006041T DE 60006041 T DE60006041 T DE 60006041T DE 60006041 T2 DE60006041 T2 DE 60006041T2
Authority
DE
Germany
Prior art keywords
key
embedded system
certification
request
embedded
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE60006041T
Other languages
English (en)
Other versions
DE60006041D1 (de
Inventor
Denis Pinkas
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.)
Bull Sa Les Clayes Sous Bois Fr
Original Assignee
Bull SA
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 Bull SA filed Critical Bull SA
Publication of DE60006041D1 publication Critical patent/DE60006041D1/de
Application granted granted Critical
Publication of DE60006041T2 publication Critical patent/DE60006041T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/088Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms
    • 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
    • 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

Description

  • Die Erfindung bezieht sich auf ein Überprüfungsverfahren, insbesondere zum Überprüfen des Gebrauchs von öffentlichen Schlüsseln, die durch ein eingebettetes System erzeugt werden, und auf das entsprechende eingebettete System.
  • Um die Sicherheit der Übertragung von Daten zu gewährleisten, die über Datennetze übertragen werden, haben die Nutzer dieser Netze eine starke Nachfrage nach Dienstleistungen zur Verschlüsselung/Entschlüsselung der übertragenen Daten und/oder zur Erzeugung/Überprüfung einer zugehörigen digitalen Unterschrift [Signatur] ausgeübt.
  • Verschlüsselungs-/Entschlüsselungsmaßnahmen haben zum Ziel, anhand einer geheimen Übereinkunft, die ein Sender und ein Empfänger für eine gewisse Zeit teilen, übertragene Nachrichten zu codieren und dann zu decodieren, um sie für Personen, die bezüglich der Übereinkunft Dritte sind, unleserlich zu machen.
  • Unterschriftsmaßnahmen haben die Übertragung spezieller Nachrichten zum Ziel, die es ermöglichen, sich von der Unversehrtheit und der Herkunft der übertragenen Daten zu überzeugen.
  • Aus Gründen der öffentlichen Sicherheit haben die Regierungen einiger Staaten einschränkende gesetzliche Regelungen getroffen, um eine strenge Reglementierung der Verschlüsselungs-/Entschlüsselungsmaßnahmen aufzuerlegen, die sogenannte "starke" Algorithmen verwenden. Jedoch sind weitere Maßnahmen, wie zum Beispiel die Verschlüsselung/Entschlüsselung mittels sogenannter "schwacher" Algorithmen, die Authentifizierung, die Integrität und die Nicht-Leugbarkeit mittels Berechnung einer digitalen Unterschrift nicht Gegenstand solcher einschränkender Regelungen. Insbesondere kann eine Datennachricht, die im Klartext zusammen mit einer digitalen Unterschrift übertragen wird, Gegenstand jedweder zweckentsprechenden Kontrolle durch die Polizei sein.
  • Bisher wurden verschiedene Systeme zum Berechnen von digitalen Unterschriften vorgeschlagen.
  • Wie in dem Aufsatz mit der Überschrift "Controlling the Use of Cryptographic Keys" [Steuern der Verwendung von kryptographischen Schlüsseln], veröffentlicht von Christopher J. Holloway, Computers & Security [Computer & Sicherheit], Band 14 (1995), Seiten 587 bis 598, beschrieben, umfassen die wesentlichen Elemente eines Zertifikats insbesondere:
    • – die Identität des Inhabers des geheimen Schlüssels;
    • – die Information über das Gültigkeitsdatum des öffentlichen Schlüssels;
    • – den Wert des öffentlichen Schlüssels;
    • – die Unterschrift des Ausstellers des Zertifikats.
  • Unter diesen Systemen wurden insbesondere kryptographische Systeme mit asymmetrischen Schlüsseln entwickelt, weil ihre Verwendung einfach ist oder zumindest weil die Verwaltung der genannten Schlüssel relativ einfach ist. Diese Systeme verwenden nämlich einen nicht veröffentlichten, privaten Schlüssel und einen öffentlichen Schlüssel. Die Kenntnis des öffentlichen Schlüssels ermöglicht nicht die Berechnung des privaten Schlüssels.
  • Einige Algorithmen zur Erstellung einer digitalen Unterschrift können nur dem Zweck der Erstellung einer digitalen Unterschrift dienen. Dies ist zum Beispiel bei dem System der Fall, das unter dem Namen DSA (Digital Signature Algorithm) bekannt ist. Jedoch existiert ein weit verbreiteter anderer Algorithmus, der nach den Namen seiner Erfinder RIVEST, SHAMIR und ADLEMAN als RSA Verfahren bekannt ist und die Durchführung von Berechnungen sowohl zur Erstellung einer digitalen Unterschrift als auch zu einer sogenannten "starken" Verschlüsselung/Entschlüsselung ermöglicht.
  • Im Rahmen der Verwirklichung eines kryptographischen Systems mit asymmetrischen Schlüsseln bezweckt die vorliegende Erfindung unter anderem sicherzustellen, dass ein eingebettetes System, das den RSA-Algorithmus und RSA-Schlüssel nur zu Unterschriftszwecken verwendet, anhand dieser Schlüssel lediglich Unterschriftsvorgänge und auf keinen Fall Entschlüsselungsvorgänge unterstützen kann.
  • Weiterer Gegenstand der vorliegenden Erfindung ist die Errichtung einer Infrastruktur von öffentlichen Schlüsseln, die ausschließlich zur Erstellung digitaler Unterschriften verwendbar sind. Wenn nämlich ein Nutzer versuchen würde, einen der auf diese Weise für Unterschriftszwecke zertifizierten öffentlichen RSA-Schlüssel zu Verschlüsselungszwecken zu verwenden, wäre die im Besitz des zugehörigen privaten RSA-Schlüssels befindliche Einheit gar nicht in der Lage, unter Verwendung des privaten Schlüssels eine Entschlüsselung durchzuführen.
  • Weiterer Gegenstand der vorliegenden Erfindung ist ferner ein Verfahren zum Überprüfen einer Anfrage nach Zertifizierung eines durch ein eingebettetes System erzeugten öffentlichen Schlüssels, welches Verfahren es ermöglicht, dass eine Zertifizierungsstelle die Verwendung dieses Schlüssels zu Zwecken beschränkter Entschlüsselungsvorgänge beherrscht.
  • Im Rahmen der vorstehend genannten Kontrolle über die Verwendung des Schlüssels besteht einer weiterer Gegenstand der vorliegenden Erfindung schließlich in der Beschränkung dieser Verwendung auf Verschlüsselungs-/Entschlüsselungsvorgänge mit "schwachen" symmetrischen Algorithmen, die von einigen Regierungen zugelassen sind.
  • Zur Erinnerung: die eingebetteten Systeme sind im allgemeinen durch eine mikroprozessorbestückte Karte gebildet und stehen einer Einheit zur Verfügung.
  • Der vorstehend genannte Begriff "Einheit" umfasst sowohl eine natürliche Person, die Inhaber eines eingebetteten Systems, z. B. einer mikroprozessorbestückten Karte, ist, als auch jedwedes Datenverarbeitungssystem, das mit einem eingebetteten System oder einer vergleichbaren mikroprozessorbestückten Karte ausgestattet ist.
  • Das Verfahren zum Überprüfen der Herkunft der Anfrage nach Zertifizierung eines öffentlichen Schlüssels, der aus einem Satz von asymmetrischen Schlüsseln, nämlich einem öffentlichen Schlüssel Kp und einem privaten Schlüssel Ks, hervorgegangen ist, die für einen gegebenen Algorithmus CAl und für einen gegebenen Gebrauch, zum Beispiel eine Verschlüsselung/Entschlüsselung oder die Überprüfung/Erzeugung einer digitalen Unterschrift, von einem eingebetteten System erzeugt und im Speicherbereich eines eingebetteten Systems Si gespeichert werden, das mit einer Einrichtung für kryptographische Berechnungen und mit einer einen geschützten äußeren Schreib-/Lesezugang aufweisenden Einrichtung zum Speichern digitaler Daten versehen ist, wobei diese digitalen Daten IDdi wenigstens eine die Identifizierung des eingebetteten Systems ermöglichende Seriennummer SNi und einen Code Opj zur Identifizierung eines Bedieners umfassen, der befugt ist, das eingebettete System zu konfigurieren, und wobei diese Anfrage durch das eingebettete System formuliert wird, indem eine den öffentlichen Schlüssel Kp enthaltende Anfragenachricht MRCA an eine Zertifizierungsstelle CA übertragen wird, ist dadurch bemerkenswert, dass das Verfahren vor jeder Übertragung einer Zertifizierungsanfrage, anlässlich der Konfigurierung der eingebetteten Systeme durch den befugten Bediener, für alle eingebetteten Systeme Si einer Gruppe Lk von eingebetteten Systemen folgende Schritte umfasst:
    • – durch den befugten Bediener lässt man für die gegebene Gruppe von eingebetteten Systemen einen öffentlichen Mutterschlüssel KpM und einen privaten Mutterschlüssel KsM erzeugen, die im Rahmen eines auf einen Algorithmus CAlM gestützten Verfahrens verwirklicht werden;
    • – der öffentliche Mutterschlüssel KpM, welcher einerseits der Identität des befugten Bedieners OPj und andererseits der Gruppe Lk von eingebetteten Systemen zugeordnet ist, wird veröffentlicht; und für jedes eingebettete System, das zu dem Bereich von Identifikatoren gehört, der durch die Gruppe Lk von eingebetteten Systemen definiert ist:
    • – wird anhand des privaten Mutterschlüssels KsM und der Seriennnummer SNi des eingebetteten Systems durch den befugten Bediener ein abgewandelter privater Schlüssel KsMi berechnet, und der abgewandelte private Schlüssel KsMi wird in dem den geschützten äußeren Schreib-/Lesezugang aufweisenden Speicherbereich abgelegt, und vor jeder Übertragung einer Anfrage nach einer Zertifizierung:
    • – lässt man mittels des eingebetteten Systems eine Zertifizierungsanfrage RCA erzeugen, die insbesondere ein Feld für den öffentlichen Schlüssel CAl, Kp und die Indikatoren der Verwendung U dieses öffentlichen Schlüssels enthält,
    • – lässt man durch das eingebettete System mittels der
    • Recheneinrichtung und des dem eingebetteten System zugeordneten abgewandelten Schlüssels KsMi einen kryptographischen Kontrollwert Sci über die Gesamtheit der Anfrage RCA berechnen, wobei der kryptographische Kontrollwert eine digitale Unterschrift ist, die mittels des abgewandelten privaten Schlüssels KsMi berechnet wird; und bei der Ausgabe einer Zertifizierungsanfrage durch das eingebettete System an die Zertifizierungsstelle:
    • – wird eine Nachricht MRCA zur Anfrage nach einer Zertifizierung gebildet, wobei die Nachricht die Anfrage RCA, den Identifikator IDdi des eingebetteten Systems und den kryptographischen Kontrollwert Sci enthält, wobei der Identifikator des eingebetteten Systems zum einen aus dem Identifikator OPj des befugten Bedieners und zum anderen aus der Seriennummer SNi des eingebetteten Systems besteht,
    • – wird an die Zertifizierungsstelle CA die im vorhergehenden Schritt gebildete Anfragenachricht MRCA übertragen, die die Felder für den öffentlichen Schlüssel CAl, Kp und die Verwendungsindikatoren U, die Gegenstand der Zertifizierung sind, sowie den kryptographischen Kontrollwert Sci enthält;
    • – beim Empfang einer Nachricht MRCA zur Anfrage nach einer Zertifizierung durch die Zertifizierungsstelle wird anhand des Identifikators IDdi des eingebetteten Systems die Identität des befugten Bedieners OPj wiedergefunden,
    • – anhand des Identifikators OPj des befugten Bedieners wird der Wert des öffentlichen Mutterschlüssels KpM wiedergefunden, der der Gruppe Lk zugeordnet ist, dem das eingebettete System angehört,
    • – anhand des öffentlichen Mutterschlüssels KpM, der Seriennummer SNi des eingebetteten Systems und der empfangenen Nachricht MRCA zur Anfrage nach einer Zertifizierung wird der kryptographische Kontrollwert Sci überprüft, wodurch die Authentizität des kryptographischen Kontrollwerts und des Ursprungs der Zertifizierungsanfrage festgestellt werden können.
  • Das erfindungsgemäße Verfahren zum Überprüfen einer von einem eingebetteten System erzeugten Anfrage nach Zertifizierung eines Schlüssels lässt sich auf ein eingebettetes System jeglicher Art anwenden, insbesondere jedoch auf eingebettete Systeme, die in großer Zahl auftreten und jeweils durch eine mikroprozessorbestückte oder analoge Karte gebildet sind.
  • Deutlicher wird das Verfahren bei Lektüre der Beschreibung und Betrachtung der beiliegenden Zeichnungen; neben 1, die ein eingebettetes System in Form einer herkömmlichen mikroprozessorbestückten Karte betrifft, zeigt
  • 2a als nicht-beschränkendes Beispiel ein Flussdiagramm der Gesamtheit der Vorgänge oder Schritte, die die Durchführung des erfindungsgemäßen Verfahrens, das heißt der Erzeugung einer Zertifizierungsanfrage durch das eingebettete System, ermöglichen;
  • 2b als nicht-beschränkendes Beispiel ein Flussdiagramm einer abgewandelten Ausführung des in 2a dargestellten erfindungsgemäßen Verfahrens, wobei das eingebettete System vor der Erzeugung der Zertifizierungsanfrage die Syntax eines dem eingebetteten System gelieferten Musters einer Zertifizierungsanfrage prüft;
  • 3 in Form eines Funktionsschemas Einzelheiten desjenigen Schritts des in 2a oder 2b veranschaulichten Verfahrens, in dem für jedes eingebettete System ein abgewandelter privater Schlüssel berechnet wird;
  • 4a in Form eines nicht-beschränkenden Beispiels den Aufbau einer als Zertifizierungsanfrage dienenden Nachricht in einer vereinfachten Version, die die Durchführung des in 2a dargestellten erfindungsgemäßen Verfahrens erlaubt;
  • 4b in Form eines nicht-beschränkenden Beispiels den Aufbau einer als Zertifizierungsanfrage dienenden Nachricht in einer verbesserten Version mit Codierung im ASN1-Format nach einer TLV-Struktur, die speziell zur Durchführung des in 2b dargestellten erfindungsgemäßen Verfahrens bestimmt ist;
  • 5 in Form eines Funktionsschemas Einzelheiten desjenigen Schritts des in 2a oder 2b dargestellten Verfahrens, in dem eine Überprüfung der Anfragenachricht durch die Zertifizierungsstelle erfolgt;
  • 6 eine besonders vorteilhafte Variante der Durchführung des erfindungsgemäßen Verfahrens, bei der dem privaten Schlüssel, der einem öffentlichen Schlüssel zugeordnet ist, welcher Gegenstand einer Zertifizierungsanfrage ist, ein symmetrischer Schlüssel einer schwachen Verschlüsselung /Entschlüsselung zugeordnet ist, wodurch dem zugehörigen eingebetteten System eine schwache Verschlüsselungs/Entschlüsselungs-Funktion verliehen wird, die den in einigen Ländern bestehenden gesetzlichen Bestimmungen genügt, mit dem Ziel einer gewerblichen Verwendung dieser Systeme ohne vorhergehende Genehmigung;
  • 7 ein eingebettetes System, das die Durchführung des erfindungsgemäßen Verfahrens erlaubt.
  • Nun folgt unter Bezugnahme auf die 2a, 2b und die folgenden Figuren eine eingehendere Beschreibung des erfindungsgemäßen Verfahrens zum Überprüfen einer Anfrage nach Zertifizierung eines öffentlichen Schlüssels.
  • Vor der detaillierten Beschreibung der zur Durchführung des Verfahrens erforderlichen Schritte unter Bezugnahme auf die vorstehend genannten Figuren werden nachstehend Erwägungen allgemeiner Art angegeben, die darauf abzielen, den Kontext der Durchführung des erfindungsgemäßen Verfahrens zu veranschaulichen.
  • Allgemein ausgedrückt ermöglicht es das erfindungsgemäße Verfahren, die Überprüfung einer von einem eingebetteten System erzeugten Anfrage nach Zertifizierung eines öffentlichen Schlüssels sicherzustellen, wobei diese Überprüfung insbesondere die Überprüfung der Herkunft der Anfrage umfasst, es aber unter Berücksichtigung der somit erfolgten Überprüfung und der somit erlangten Gewissheit über die Herkunft der Anfrage auch darum geht, Gewissheit zu haben, dass der private Schlüssel, der zu dem erzeugten öffentlichen Schlüssel gehört, welcher Gegenstand der aktuellen Zertifizierungsanfrage ist, nur genau festgelegten Zwecken dienen kann, wie zum Beispiel der Erzeugung einer digitalen Unterschrift oder der Entschlüsselung schwacher symmetrischer Schlüssel.
  • Da die öffentlichen Schlüssel, wie ihr Name besagt, öffentlich sind, kann es nicht darum gehen, den Gebrauch dieser Schlüssel zur Verschlüsselung einschränken zu können. Da jedoch die privaten Schlüssel notwendigerweise geschützt sind, kann der verwirklichte Schutzmechanismus in der Lage sein zu verhindern, dass private RSA-Schlüssel für Entschlüsselungszwecke eingesetzt werden. Daher kann zwar der Verschlüsselungsvorgang nicht verboten werden, aber der Entschlüsselungsvorgang kann damit unterbunden werden, und deshalb wird auf diese Weise der Verschlüsselungs/Entschlüsselungsprozess unmöglich. Die bewerkstelligte Vorgehensweise stützt sich darauf, dass es möglich ist sicherzustellen, dass der einem gegebenen öffentlichen Schlüssel zugeordnete private Schlüssel nicht zu Entschlüsselungszwecken verwendet werden kann, weil man nämlich sicher sein kann, dass er tatsächlich in einem geschützten eingebetteten System enthalten ist, das seine Verwendung zu Entschlüsselungszwecken verhindert.
  • Um sicher zu sein, dass ein gegebener Schlüssel an eine gegebene Einheit gebunden ist, findet gegenwärtig ein Verfahren zur Schlüsselzertifizierung breite Anwendung. Dieses Verfahren besteht darin, dass man eine Zertifizierungsstelle AC [Autorité de Certification] ein Zertifikat für einen öffentlichen Schlüssel erzeugen lässt, das einem Namen einer gegebenen Einheit einen Identifikator eines mit öffentlichem Schlüssel arbeitenden Algorithmus CAl und einen öffentlichen Schlüsselwert Kp zuordnet, und zwar für Verwendungen U und für eine gegebene Gültigkeitsdauer. Ein Beispiel für ein solches Zertifikat ist unter dem Namen "Zertifikat X.509" im Namen der Norm der ITU (International Telecommunications Union), die es genormt hat, bekannt.
  • Um an einer öffentliche Schlüssel unterstützenden Infrastruktur teilzunehmen, ist es erforderlich, über ein Zertifikat zu einem öffentlichen Schlüssel zu verfügen. Dazu ist es notwendig, eine Anfrage zu formulieren, die die Daten umfasst, die der Antragsteller in seinem Zertifikat erscheinen lassen möchte. Die Anfrage enthält insbesondere den Identifikator des verwendeten Algorithmus CAl, den Wert des öffentlichen Schlüssels Kp für diesen Algorithmus und die Verwendungen U dieses Schlüssels. Wenn die Anfrage unmittelbar aus der Einheit hervorgeht, ist es unmöglich, die für den zugehörigen privaten Schlüssel eingesetzten Schutzmaßnahmen zu kennen. Wenn die Anfrage jedoch unmittelbar aus einem geschützten eingebetteten System hervorgeht, das den Gebrauch des privaten Schlüssels für Entschlüsselungszwecke verhindert, dann ist es möglich, sich sicher zu sein, dass der private Schlüssel, der dem öffentlichen Schlüssel zugeordnet ist, welcher Gegenstand der Zertifizierungsanfrage ist, nur für die angegebenen Zwecke, zum Beispiel zur Unterschriftserzeugung oder zur Entschlüsselung schwacher Schlüssel, einsetzbar ist. Dies ist eines der Ziele des erfindungsgemäßen Verfahrens, das nachstehend unter Bezugnahme auf die 2a und 2b näher beschrieben wird.
  • Das erfindungsgemäße Verfahren wird nun für den nichtbeschränkenden Fall beschrieben, dass das eingebettete System durch eine mikroprozessorbestückte Karte, zum Beispiel eine Bankkarte oder eine entsprechende PCMCIA-Karte, gebildet ist.
  • Wie in 1 dargestellt, enthält eine mikroprozessorbestückte Karte 10 herkömmlicherweise ein Ein/Ausgabesystem 12, verbunden mit dem Mikroprozessor 14, einen RAM-Speicher 16, einen nicht-flüchtigen Speicher 18, der durch einen Nur-Lese-Speicher ROM 18b und einen programmierbaren Speicher 18a gebildet ist. Alle diese Elemente sind an dem Mikroprozessor 14 durch eine Bus-Verbindung angeschlossen. Außerdem ist ein Modul 20 zum kryptographischen Berechnen von Daten hinzugefügt. Der nicht-flüchtige Speicher 18 umfasst üblicherweise einen Speicherbereich mit geschütztem Schreib/Lesezugang, als MAP bezeichnet [Mémoire à Accès Protégé], wobei der Zugang zu diesem Bereich ausschließlich dem Mikroprozessor 14 zu rein internen Verwendungszwecken vorbehalten ist.
  • Unter Bezugnahme auf 1 wird angemerkt, dass in einer derartigen mikroprozessorbestückten Karte das kryptographischen Berechnungen dienende Modul Programme zum Erzeugen oder Überprüfen von Unterschriften, zum Verschlüsseln/Entschlüsseln mittels "starker", zum Beispiel auf dem RSA-Algorithmus beruhender Verfahren sowie "schwacher", zum Beispiel auf dem DES-Algorithmus mit maximal 40 Bit breiten Schlüsseln beruhender Verfahren enthalten kann.
  • Gemäß 2a befindet sich ein befugter Bediener, der durch einen Identifikator OPj identifiziert ist, in Schritt 1000 in der Situation, mit dem Konfigurieren einer Gruppe von eingebetteten Systemen zu beginnen, wobei diese Gruppe als Lk bezeichnet ist. In praktischer Hinsicht wird angemerkt, dass diese Gruppe einem Satz von eingebetteten Systemen, wie zum Beispiel mikroprozessorbestückten Karten, entspricht, die der Bediener im Handel vertreiben möchte. Es versteht sich, dass dieser befugte Bediener entweder der Hersteller von Speicherkarten oder jeglicher Unterauftragnehmer sein kann, der durch den Hersteller oder eine öffentliche Behörde oder zugelassene private Institution autorisiert ist. Außerdem ist jedes eingebettete System mit einer als SNi bezeichneten Identifikationsnummer versehen, und im Rahmen der Durchführung des erfindungsgemäßen Verfahrens ist somit jedes der gegebenen Gruppe Lk angehörende eingebettete System Si mit einer als IDdi bezeichneten Identifikationsnummer versehen, die durch den Identifikator OPj des befugten Bedieners und durch die Seriennummer SNi des eingebetteten Systems gebildet ist.
  • Um insbesondere die Herkunft der Anfrage nach Zertifizierung eines öffentlichen Schlüssels zu überprüfen, der aus einem Satz von asymmetrischen Schlüsseln – einem öffentlichen Schlüssel Kp und einem privaten Schlüssel Ks – hervorgeht, die durch ein eingebettetes System erzeugt werden, das der oben genannten Gruppe von eingebetteten Systemen angehört, wobei der öffentliche Schlüssel Kp und der private Schlüssel Ks für einen gegeben Gebrauch, wie zum Beispiel die Verschlüsselung/Entschlüsselung oder die Überprüfung/Erzeugung digitaler Unterschriften, erzeugt werden, besteht das erfindungsgemäße Verfahren darin, dass man – vor jeglicher Übertragung einer Zertifizierungsanfrage – in einem Schritt zur Konfiguration der eingebetteten Systeme durch den befugten Bediener in einem Schritt 1001 den befugten Bediener für die Gesamtheit der eingebetteten Systeme einen als KpM bezeichneten öffentlichen Mutterschlüssel und einen privaten Mutterschlüssel KsM erzeugen lässt, die zur Verwendung im Rahmen eines Verfahrens bestimmt sind, das durch den Algorithmus CAlM hinsichtlich der Schlüssel KpM und KsM unterstützt wird.
  • Auf den vorstehend genannten Schritt 1001 folgt ein Schritt 1002, der darin besteht, den öffentlichen Mutterschlüssel KpM zu veröffentlichen, der zum einen der Identität des befugten Bedieners OPj und zum anderen der Gruppe Lk von eingebetteten Systemen zugeordnet ist. Wie im Schritt 1002 der 2a dargestellt, kann diese Veröffentlichung aus einer Veröffentlichung von vier, zum Beispiel in Form einer Liste zusammenhängenden Werten bestehen, nämlich dem Identifikator des befugten Bedieners OPj, einem durch die Gruppe Lk definierten Bereich von Identifikatoren und selbstverständlich dem Wert des öffentlichen Mutterschlüssels KpM, der dem Identifikator des anzuwendenden Algorithmus CAlM zugeordnet ist. Der Identifikatorbereich kann durch einen Identifikator des Bereichsanfangs und endes gebildet sein.
  • Bei diesem Schritt der Konfiguration durch den befugten Bediener wird angemerkt, dass die Erzeugung der Schlüssel, des öffentlichen Mutterschlüssels KpM und des privaten Mutterschlüssels KsM, unmittelbar vom verwendeten Algorithmus abhängt und daher nicht unabhängig von dem Verfahren beschrieben werden kann, das auf dem angewandten Algorithmus beruht. Die Art des anzuwendenden Algorithmus wird jedoch unten genauer ausgeführt.
  • Im Anschluss an den vorstehend genannten Schritt 1002 besteht das erfindungsgemäße Verfahren in einem Schritt 1003 darin, für jedes eingebettete System Si, das der Gruppe Lk von eingebetteten Systemen angehört, anhand des privaten Mutterschlüssels KsM und der Seriennummer SNi jedes betrachteten eingebetteten Systems Si einen abgewandelten privaten Schlüssel zu berechnen, der als KsMi bezeichnet wird.
  • Nach einem besonders vorteilhaften Gesichtspunkt des erfindungsgemäßen Verfahrens wird dann der abgewandelte private Schlüssel KsMi in dem mit geschütztem äußeren Schreib/Lesezugang versehenen Speicherbereich MAP der das eingebettete System bildenden mikroprozessorbestückten Karte abgelegt.
  • Allgemein wird angemerkt, dass der abgewandelte private Schlüssel KsMi für jedes eingebettete System, dessen Identifikator SNi in der Gruppe Lk unterschiedlich ist, einmalig und verschieden ist.
  • Im Anschluss an den vorstehend genannten Schritt 1003 besteht das erfindungsgemäße Verfahren in einer vorteilhaften Version darin, dass man vor jeglicher Übertragung einer Zertifizierungsanfrage und für jeden öffentlichen Schlüssel Kp, der auf Anfrage jedes eingebetteten Systems Si zertifiziert werden soll, wobei es sich versteht, dass diese Anfrage durch einen Nutzer Uti [utilisateur], d. h. durch eine Einheit, formuliert wird, in einem Schritt 1004-5 mittels des eingebetteten Systems eine Zertifizierungsanfrage RCA erzeugen lässt, die insbesondere ein Feld für den öffentlichen Schlüssel CAl, Kp und die Identifikatoren für den Gebrauch U dieses öffentlichen Schlüssels enthält. Wenn die Zertifizierungsanfrage RCS unmittelbar durch das eingebettete System erzeugt wird, kann das Verfahren darin bestehen, die Zertifizierungsanfrage RCA im Bereich des eingebetteten Systems zu erzeugen. Diese besteht dann aus drei Feldern, nämlich einem Identifikator für den mit öffentlichem Schlüssel arbeitenden Algorithmus CAl, einem Wert für den öffentlichen Schlüssel Kp und einem Identifikator für die Verwendungen U dieses Schlüssels.
  • Bei einer speziellen, nicht beschränkenden Ausführungsform kann der Schritt 1004-5 zum Beispiel darin bestehen, in einem Schritt 1004 dem betrachteten, den Identifikator SNi tragenden eingebetteten System ein als GRCA bezeichnetes Muster einer Zertifizierungsanfrage mitzuteilen, das außer den Feldern für den öffentlichen Schlüssel zum Entschlüsseln oder zum Überprüfen von digitalen Unterschriften alle erforderlichen Felder sowie die Identifikatoren für den Gebrauch U des öffentlichen Schlüssels Kp enthält, die Gegenstand der beantragten Zertifizierung sind.
  • Die Überprüfung des Musters GRCA der Zertifizierungsanfrage wird weiter unten in der Beschreibung näher erläutert.
  • Das Muster GRCA der Zertifizierungsanfrage erlaubt dann dem betrachteten eingebetteten System in einem Schritt 1005, einen Arbeitsgang durchzuführen, der darin besteht, die fehlenden Felder des Zertifizierungsanfragemusters GRCA zu vervollständigen. So werden das Feld für den öffentlichen Schlüssel, das den Identifikator CAl eines Algorithmus, zum Beispiel des oben genannten RSA-Algorithmus, zur Verschlüsselung/Entschlüsselung oder zur Unterschriftsberechnung, und einen Wert des öffentlichen Schlüssels Kp, der Gegenstand der beantragten Zertifizierung ist, enthält, sowie das Feld bezüglich der Identifikatoren des Gebrauchs U des öffentlichen Schlüssels vervollständigt, um in dem sich anschließenden Schritt 1005 eine als RCA bezeichnete vollständige Zertifizierungsanfrage zu erstellen.
  • In 2a ist der Schritt 1005 in der Weise dargestellt, dass er darin besteht, das eingebettete System die Vervollständigung der vorstehend genannten fehlenden Felder erledigen zu lassen, wobei das Symbol + den Vorgang der Vervollständigung darstellt. Allgemein wird angemerkt, dass der vorstehend genannte Vervollständigungsvorgang entweder darin bestehen kann, fiktiven Werten, die in bestimmten Feldern des Zertifizierungsanfragemusters GRCR bereits vorhanden sind, passende Werte zuzuweisen, oder gegebenenfalls darin, das Zertifizierungsanfragemuster durch Verknüpfungsoperationen mittels dieser passenden Werte zu vervollständigen, wie in der Beschreibung weiter unten beschrieben.
  • Auf den vorstehend beschriebenen Schritt 1004-5 oder 1005 folgt dann ein Schritt 1006, der darin besteht, dank Verwendung des Rechenmoduls des betrachteten eingebetteten Systems und des abgewandelten Schlüssels KsMi, der diesem eingebetteten System im Schritt 1003 zugeordnet wurde, einen als Sci bezeichneten kryptographischen Kontrollwert zu berechnen.
  • Allgemein wird angemerkt, dass der vorstehend genannte kryptographische Kontrollwert über der Gesamtheit der vervollständigten Anfrage RCA sowie über dem Identifikator IDdi des betrachteten eingebetteten Systems berechnet wird. Es sei daran erinnert, dass der Identifikator IDdi des eingebetteten Systems Si durch den Identifikator OPj des befugten Bedieners und durch die Seriennummer SNi des eingebetteten Systems gebildet ist.
  • Vorzugsweise ist der kryptographische Kontrollwert Sci eine digitale Unterschrift, die anhand des abgewandelten privaten Schlüssels KsMi berechnet wird.
  • Aus diesem Grund erfüllt der kryptographische Kontrollwert die Gleichung: Sci = SKsMi (RCA, IDdi)
  • Es sei bemerkt, dass in dieser Gleichung der Index KsMi, der dem Unterschriftsvorgang S zugeordnet ist, angibt, dass die Unterschrift anhand des abgewandelten privaten Schlüssels KsMi über den Argumenten RCA und IDdi berechnet wird.
  • Sobald das betrachtete eingebettete System eine Zertifizierungsanfrage an die Zertifizierungsinstitution sendet, wobei dieser Vorgang in 2a als "Anfrage durch Nutzer Uti" bezeichnet ist, besteht das erfindungsgemäße Verfahren dann darin, außerhalb des eingebetteten Systems in einem Schritt 1007 eine als MRCA bezeichnete Zertifizierungsanfragenachricht zu bilden, die aus der vom betrachteten eingebetteten System vervollständigten Anfrage, aus dem Identifikator des eingebetteten Systems sowie aus dem betrachteten kryptographischen Kontrollwert Sci besteht.
  • Im Anschluss an den vorstehend genannten Schritt 1007 ist ein Schritt 1008 vorgesehen, der darin besteht, an die Zertifizierungsstelle CA die Anfragenachricht MRCA zu übersenden, die während des vorhergehenden Schritts 1007 gebildet wurde. Die Nachricht MRCA enthält insbesondere die vervollständigte Anfrage nach Zertifizierung des öffentlichen Schlüssels Kp, dessen Zertifizierung beantragt wird, sowie die Indikatoren seines Gebrauchs U, so dass der öffentliche Schlüssel Kp und die Gebrauchsindikatoren Gegenstand der vorstehend genannten beantragten Zertifizierung sind.
  • Beim anschließenden Empfang einer vorstehend genannten Zertifizierungsanfragenachricht MRCA besteht das
  • erfindungsgemäße Verfahren darin, dass die Zertifizierungsstelle die Arbeitsgänge durchführt, die in Schritt 1009 darin bestehen, die Identität des befugten Bedieners OPj sowie den Identifikator SNi des eingebetteten Systems anhand des Identifikators IDdi des eingebetteten Systems wiederzufinden, dann in Schritt 1010 den Bereich von Identifikatoren Lk, dem der Identifikator SNi angehört, anhand der vom Bediener OPj veröffentlichten Daten wiederzufinden, dann in Schritt 1011 anhand der Daten der Gruppe Lk den Identifikator des auf dem zu verwendenden Algorithmus CAlM beruhenden Verfahrens und den Wert des öffentlichen Mutterschlüssels KpM wiederzufinden, der der Gruppe Lk zugeordnet ist.
  • Insbesondere ist ersichtlich, dass in den Schritten 1009, 1010 und 1011 die im Schritt 1002 erfolgte Veröffentlichung der zusammengehörigen Variablen OPj = Identifikator des befugten Bedieners, Lk = Identifikator der betrachteten Gruppe, CAlM = Identifikator des durch zuführenden Algorithmus, und KpM = Wert des der Gruppe von eingebetteten Systemen zugeordneten öffentlichen Mutterschlüssels, es ermöglicht, anhand der vier veröffentlichten zusammengehörigen Variablen nacheinander den Identifikator des befugten Bedieners, dann den Wert des öffentlichen Schlüssels KpM sowie zum Beispiel den Identifikator des durchzuführenden Algorithmus CAlM wiederzufinden.
  • Nachdem die Zertifizierungsstelle den vorstehend genannten Wert des öffentlichen Mutterschlüssels KpM empfangen hat, erfolgt dann ein Schritt 1012, der darin besteht, anhand des Werts des öffentlichen Mutterschlüssels KpM, anhand der Seriennummer SNi des eingebetteten Systems und anhand der empfangenen vollständigen Zertifizierungsanfrage RCA den kryptographischen Kontrollwert Sci zu überprüfen. Der Vorgang zur Überprüfung des kryptographischen Kontrollwerts Sci überprüft die Beziehung:
    KpM(SKsMi)
  • Es wird angemerkt, dass dieser Überprüfungsvorgang aus einem Vorgang zur Überprüfung einer Unterschrift besteht, der die Dualfunktion zu dem Unterschriftsvorgang darstellt, der im Schritt 1006 erfolgte, um den kryptographischen Kontrollwert Sci zu gewinnen. So erfolgt im Schritt 1012 der Vorgang zur Unterschriftsüberprüfung anhand des öffentlichen Mutterschlüssels KpM.
  • Die Durchführung des erfindungsgemäßen Verfahrens, wie in Verbindung mit 2a beschrieben, ermöglicht es somit, die Authentizität des vorstehend genannten kryptographischen Kontrollwerts und folglich die Herkunft der der Zertifizierungsstelle vorgelegten Zertifizierungsanfrage festzustellen.
  • Unter weiter unten in der Beschreibung erläuterten Bedingungen wird es durch die Überprüfung der Anfrage, nach Feststellung der Herkunft, möglich, anhand des oben genannten Verwendungswerts U mit Gewissheit den oder die zugedachten Verwendungen zu erfahren, die mit dem öffentlichen Schlüssel Kp durchgeführt werden können, angesichts der Einschränkungen bezüglich der Vorgänge, die mit Hilfe des im eingebetteten System enthaltenen privaten Schlüssels Ks durchgeführt werden können. Aufgrund der Einschränkungen bezüglich der Vorgänge, die mit Hilfe des zugeordneten privaten Schlüssels durchführbar sind, kann dann ein Zertifikat ausgegeben werden, das die mit dem öffentlichen Schlüssel durchführbare Verwendung garantiert. Diese Verwendungsgarantie kann aus dem kombinierten Gebrauch zweier Informationen herrühren, die in dem erzeugten Zertifikat dann vorhanden sind: zum einen der Indikator der Verwendung des öffentlichen Schlüssels und zum anderen ein Indikator der Sicherheitspolitik. Die Sicherheitspolitik kann dann besagen, dass die Schlüsselerzeugung in einem eingebetteten System erfolgte, das die Eigenschaften in sich vereinigt, die erforderlich sind, um den Gebrauch der im eingebetteten System erzeugten privaten Schlüssel zu beschränken. Man kann auch jedwedes andere Erweiterungsfeld des Zertifikats verwenden, wie durch die Norm X.509 v3 ausdrücklich vorgesehen.
  • Nun folgt unter Bezugnahme auf 2b eine abgewandelte Ausführungsform des erfindungsgemäßen Verfahrens zur Überprüfung eines Zertifizierungsanfragemusters GRCA, wie es in 2a beschrieben wurde. In den 2a und 2b tragen gleiche Schritte dieselben Bezugszeichen.
  • Wie aus 2b ersichtlich, kann das erfindungsgemäße Verfahren im Anschluss an den Schritt 1004, in dem dem eingebetteten System Si ein Zertifizierungsanfragemuster GRCA mitgeteilt wird, aber vor dem Schritt 1005, in dem das eingebettete System Si die fehlenden Felder des Zertifizierungsanfragemusters GRCA vervollständigt, ferner darin bestehen, dass in einem Schritt 1004a im betrachteten eingebetteten System die Syntax des genannten Zertifizierungsanfragemusters überprüft wird, um sich zu vergewissern, dass es sich tatsächlich um eine Zertifizierungsanfrage handelt. Auf den Schritt 1004a kann dann ein Schritt 1004b folgen, der zum Beispiel aus einem Schritt bestehen kann, in dem getestet wird, ob der Wert der Syntaxüberprüfung wahr ist. Im Schritt 1004a ist die Syntaxüberprüfung als V(GRCA) bezeichnet, und der Testschritt 1004b ist als V (GRCA)wahrbezeichnet.
  • Der Schritt 1005, in dem das eingebettete System Si die fehlenden Felder des Zertifizierungsanfragemusters GRCA vervollständigt, kann somit von einer erfolgreichen Überprüfung, d. h. von einer positiven Antwort im vorstehend genannten Testschritt 1004b, abhängig gemacht werden.
  • Umgekehrt kann dann in dem Fall, dass sich im vorstehend genannten Schritt 1004b eine negative Antwort ergibt, eine Rückkehr 1004c zum Schritt 1004 vorgesehen werden, in dem das Zertifizierungsanfragemuster GRCA geladen wird.
  • Der Schritt der Syntaxüberprüfung kann durch eine Überprüfung der Syntax des Zertifizierungsanfragemusters GRCA erfolgen, wobei der genannte Überprüfungsvorgang vom verwendeten Aufbau des Zertifizierungsanfragemusters abhängen kann. Ein Beispiel für ein Verfahren zur Syntaxüberprüfung folgt in der Beschreibung weiter unten.
  • Somit ermöglicht es das erfindungsgemäße Verfahren nach einem ersten Gesichtspunkt, der Einheit die Verwendung des privaten Schlüssels Ks anzugeben und der Einheit auf keinen Fall Kenntnis vom Wert des privaten Schlüssels zu geben. Um die Kenntnis des Werts des privaten Schlüssels zu verhindern, wird das aus privatem und öffentlichem Schlüssel bestehende Paar durch das geschützte eingebettete System erzeugt, und der private Schlüssel wird von einem Algorithmus verwendet, der sich unmittelbar im eingebetteten System befindet. Der private Schlüssel kann daher auf keinen Fall außerhalb des eingebetteten Systems bekannt werden.
  • Nach einem zweiten bemerkenswerten Gesichtspunkt des erfindungsgemäßen Verfahrens setzt das Verfahren mehrere Techniken ein, um zu überprüfen, dass der Antrag auf Zertifizierung eines öffentlichen Schlüssels tatsächlich aus dem eingebetteten System stammt. Insbesondere verwendet das Verfahren die Berechnung einer kryptographischen Kontrollsumme, die es ermöglicht, sich zu vergewissern, dass die Anfrage tatsächlich aus einem eingebetteten System stammt, das durch den Bediener OPj personalisiert wurde. Der Stand der Technik verwendet bereits einige dieser Techniken, die sich im Gebrauch als unflexibel erweisen, wie weiter unten nochmals erwähnt wird. Eine erste Technik besteht darin, in jedes eingebettete System einen geheimen Schlüssel zu legen, anhand dessen die Berechnung der kryptographischen Kontrollsumme erfolgt. Der wesentliche Nachteil dieser bekannten Vorgehensweise besteht darin, dass man im voraus und vertraulich jeder potentiellen Zertifizierungsstelle den geheimen Wert jedes eingebetteten Systems mitteilen muss. Eine erste Verbesserung der Anordnung besteht darin, ein Muttergeheimnis zu verwenden und das Geheimnis jedes eingebetteten Systems sowohl anhand der Seriennummer des eingebetteten Systems als auch anhand des Muttergeheimnisses zu berechnen. Der wesentliche Nachteil des letzteren Falls besteht darin, dass man im voraus und vertraulich jeder potentiellen Zertifizierungsstelle den geheimen Wert jedes Muttergeheimnisses mitteilen muss, das einer gegebenen Gruppe von eingebetteten Systemen zugeordnet ist.
  • Demgegenüber besteht ein neuer Beitrag der Erfindung darin, keinerlei vertrauliche Information im voraus mitzuteilen, sondern jeder potentiellen Zertifizierungsstelle nur öffentliche Informationen zugänglich zu machen, nämlich: einen Identifikator des befugten Bedieners OPj, einen Bezug auf die Gruppe Lk und selbstverständlich einen Wert des öffentlichen Mutterschlüssels KpM, der einem Indikator des durchzuführenden Algorithmus CAlM zugeordnet ist.
  • Diese Informationen ermöglichen es dann jeder beliebigen Zertifizierungsstelle, die Herkunft der Anfrage aus jedem beliebigen eingebetteten System zu überprüfen, das Teil einer Gruppe von eingebetteten Systemen ist.
  • Nun folgt unter Bezugnahme auf 3 eine genauere Beschreibung der Durchführung des Schritts 1003 zur Berechnung jedes abgewandelten privaten Schlüssels KsMi, wobei die Vorgehensweise der genannten Berechnung unabhängig von der Ausführungsform des erfindungsgemäßen Verfahrens, das oben in Verbindung mit 2a bzw. 2b beschrieben wurde, bewerkstelligt werden kann.
  • Das im Schritt 1003 durch geführte Verfahren zur Abwandlung der Schlüssel, wie es in 3 dargestellt ist, kann somit aus einem Verfahren bestehen, das auf einem Algorithmus beruht, der unter dem Namen "Mechanismus zum Signieren ohne Kenntnisse" (im Englischen: zero knowledge) durchgeführt wird, und anhand von hierzu verwendbaren Algorithmen, die unter dem Namen FIAT-SHAMIR oder GUILLOU-QUISQUATER bekannt sind. Aus diesem Grund wird, wie in 3 angegeben, angenommen, dass jeder abgewandelte private Schlüssel KsMi durch Ausführung von Verfahren gewonnen wurde, die auf den Algorithmen von FIAT-SHAMIR F-S oder GUILLOU-QUISQUATER G-Q beruhen, und somit folgende Beziehung erfüllt: KsMi = D – F – S(KsM, SNi) KsMi = D – G – Q(KsM, SNi), wobei in dieser Beziehung D-F-S und D-G-Q die Durchführung der Schlüsselabwandlungsverfahren bezeichnen, die auf den Algorithmen von FIAT-SHAMIR bzw. GUILLOU-QUISQUATER beruhen.
  • Die verwendete Technik besteht darin, in jedem eingebetteten System einen abgewandelten privaten Schlüssel abzulegen, der anhand der Seriennummer des eingebetteten Systems und anhand eines privaten Mutterschlüssels berechnet wird, wobei der abgewandelte Schlüssel zur Berechnung der kryptographischen Kontrollsumme dient. Die Zertifizierungsstelle CA ist dann in der Lage, die Genauigkeit der auf diese Weise berechneten kryptographischen Kontrollsumme zu überprüfen, indem der Algorithmus CAlM durchgeführt wird, der dem verwendeten Algorithmustyp entspricht, und indem ausschließlich die Seriennummer des eingebetteten Systems und der öffentliche Mutterschlüssel verwendet werden, welcher der Gruppe Lk zugeordnet ist, der das eingebettete System angehört.
  • Aufgrund dessen ist es nicht nützlich, im voraus zu wissen, welche Zertifizierungsstelle durch die Einheit gewählt wird, denn jede Zertifizierungsstelle ist insbesondere nach Empfang der Zertifizierungsanfrage in der Lage, den öffentlichen Mutterschlüssel zu erlangen, welcher der Gruppe Lk zugeordnet ist, der das eingebettete System angehört. Die Verwaltung einer großen Anzahl von eingebetten Systemen, zum Beispiel mehreren Millionen, wird somit wesentlich erleichtert und erlaubt auf diese Weise eine weite Verbreitung solcher kryptographischer Systeme, in striktem Einklang mit den nationalen gesetzlichen Bestimmungen, die deren Gebrauch gestatten.
  • Nachstehend folgen nun in Verbindung mit den 4a bis 4c verschiedene Einzelheiten zur Beschreibung des Aufbaus von Nachrichten oder Daten, die zur Durchführung des erfindungsgemäßen Verfahrens verwendet werden.
  • In 4a ist der Aufbau einer Zertifizierungsanfragenachricht in einer vereinfachten Version dargestellt. Bei dieser vereinfachten Ausführungsform erzeugt das eingebettete System allein die Gesamtheit der Felder der Anfrage RCA, indem es folgende Informationen verknüpft: Das Feld für den öffentlichen Schlüssel, das den Identifikator des verwendeten Algorithmus CAl und den Wert des öffentlichen Schlüssels Kp umfasst, und ein Feld für die Schlüsselverwendung U, die Gegenstand der beantragten Zertifizierung sind. Diese Felder können zum Beispiel Gegenstand einer Codierung gemäß der Norm ASN1 sein, für Abstract Syntax Notation 1 in angelsächsischem Vokabular, um die Größe jedes Feldes abgrenzen zu können und sich der Art jedes Feldes sicher zu sein. Schließlich wird über den vorstehend genannten Informationen der kryptographische Kontrollwert Sci berechnet und dann den vorstehend genannten Informationen hinzugefügt.
  • Bei dieser vereinfachten Ausführungsform ermöglicht die vorgenannte Gesamtheit der Felder die Durchführung des erfindungsgemäßen Verfahrens, wie es zum Beispiel in 2a dargestellt ist.
  • 4b zeigt einen Aufbau von vervollständigten Anfragenachrichten zum Beispiel in dem Format, das der oben genannten Codierung ANS1 entspricht. In diesem Fall erfolgt die Codierung dieser Nachrichten gemäß der als TLV bezeichneten Betriebsart, wobei T den Typ des Feldes, L dessen Länge und V den Wert des Feldes bezeichnet.
  • In 4b ist an Punkt 1) für einen solchen Fall der Aufbau eines Musters einer Zertifizierungsanfrage GRCA dargestellt,von dem angenommen wird, dass es durch einen Folge von aufeinanderfolgenden oder sich überlappenden Feldern TLV geformt ist, die der Norm ASN1 entsprechen. Das Anfragemuster wird außerhalb des eingebetteten Systems gebildet. Das Anfragemuster muss genau drei Felder umfassen, und dies wird durch das eingebettete System überprüft: 1) einen Feldtyp für den Identifikator des Algorithmus, 2) einen Feldtyp für den Wert des öffentlichen Schlüssels, 3) einen Feldtyp für einen Indikator der Verwendungen des öffentlichen Schlüssels. Der Ort jedes dieser Felder zwischen den anderen Feldern des Anfragemusters muss außerdem einem genauen Platz entsprechen, d. h. es müssen verschiedene Typen von vorgegebenen Feldern vorangehen und nachfolgen.
  • Unter diesen Bedingungen kann ausgehend vom vorstehend genannten Zertifizierungsanfragemuster GRCA die im Schritt 1004b der 2b dargestellte Syntaxüberprüfung darin bestehen, den Wert des Typs des ersten Feldes zu überprüfen und dann in Abhängigkeit von dem Typ oder der Länge dieses Feldes zum nächsten Typ überzugehen. Beim Übergang ist es angebracht, die Gesamtheit der verschiedenen angetroffenen Typen zu speichern und dann zu überprüfen, dass die drei erwarteten Feldtypen sich an den Stellen befinden, wo sie sich befinden sollen. Anschließend gilt es für jedes der drei Felder deren Länge und für das Feld CAl dessen Wert zu überprüfen. Es handelt sich nämlich darum zu überprüfen, dass der erwartete Algorithmustyp tatsächlich dem Typ des erzeugten Schlüssels entspricht, der diesem Algorithmus zugeordnet ist. Für die Felder, die außerhalb des eingebetteten Systems gebildet werden und letztlich den Wert des öffentlichen Schlüssels Kp und den Wert der Verwendungsindikatoren U des Schlüssels enthalten müssen, können Letztere einen beliebigen Wert enthalten, nämlich wie in 4b dargestellt die Werte 0 oder 1, da das eingebettete System an ihre Stelle die intern erzeugten passenden Werte setzen wird.
  • Im Anschluss an die Erkennung des logisch wahren Werts der auf diese Weise durchgeführten Überprüfung, die im Schritt 1004a der 2b als V(GRCA) bezeichnet ist, können die Werte der zwei Felder durch die Werte ersetzt werden, die vom eingebetteten System erzeugt werden. Das ersetzte Feld für die Verwendung U kann aus einer Bitfolge bestehen, deren erstes Bit zum Beispiel eine Verwendung zum Verschlüsseln/Entschlüsseln C/D [Chiffrement/Déchiffrement] darstellt, wobei der Wert 1 die Verschlüsselung und der Wert 0 das Fehlen einer Verschlüsselung angibt; das zweite Bit entspricht zum Beispiel einer Verwendung zum digitalen Unterschreiben oder Authentifizieren A, das dritte Bit entspricht zum Beispiel einem nicht-ableugbaren Vorgang NR [Non-Répudiation], der zum Beispiel eine digitale Unterschrift verwendet.
  • Was den Wert des öffentlichen Schlüssels Kp anbelangt, kann dieser anhand der Bitwerte dieses entsprechenden Schlüssels ersetzt werden.
  • Schließlich kann unter Bezugnahme auf 4c der Aufbau des auf Initiative des Nutzers Uti geladenen Zertifizierungsanfragemusters GRCA ein Feld umfassen, das einen Identifikator des Nutzers Uti betrifft, ferner ein Feld, das den Wert des Schlüssels Kp betrifft, d. h. des öffentlichen Schlüssels, dessen Zertifizierung durch den Nutzer beantragt wird, ferner ein Feld, das den oder die Verwendungen U dieses Schlüssels betrifft, und ein Feld Plu, das die Gültigkeits- oder Verwendungsspannen des vorstehend genannten Schlüssels Kp betrifft.
  • Speziell wird angemerkt, dass das den Identifikator des Nutzers Uti betreffende Feld vom Nutzer anlässlich seiner Zertifizierungsanfrage ausgefüllt wird, während die den Wert des Schlüssels Kp betreffenden Felder und das die Verwendungen dieses Schlüssels betreffende Feld durch das eingebettete System selbst ausgefüllt werden.
  • Was das den Identifikator des Nutzers Uti betreffende Feld anbelangt, kann dieses der Seriennummer SNi des eingebetteten Systems selbst entsprechen.
  • Unter Bezugnahme auf 5 folgt nun eine genauere Beschreibung der Durchführung des Schritts 1012, der seitens der Zertifizierungsstelle darin besteht, die Zertifiz ierungsanfragenachricht MRCA und insbesondere den kryptographischen Kontrollwert Sci zu überprüfen.
  • Allgemein wird angemerkt, dass dieser Überprüfungsschritt mittels eines Vorgangs zur Überprüfung einer Unterschrift, insbesondere zur Überprüfung des kryptographischen Kontrollwerts Sci, erfolgt, der nichts anderes als eine Unterschrift ist, die mit Hilfe des abgewandelten privaten Schlüssels KsMi in dem oben beschriebenen Schritt 1006 gewonnen wurde. Unter diesen Umständen besteht der Überprüfungsvorgang ∂KpM aus der Dualfunktion zu dem Vorgang, der im vorstehend genannten Schritt 1006 durchgeführt wurde.
  • Wie in 5 dargestellt, sind neben dem öffentlichen Mutterschlüssel KpM, der im Anschluss an die Durchführung der Schritte 1009, 1010 und 1011 der 2a oder 2b wiedergefunden wurde, die Eingangsvariablen der kryptographische Kontrollwert Sci und die Zertifizierungsanfragenachricht MRCA sowie der Identifikator IDdi des eingebetteten Systems, d. h. der Identifikator des Bedieners OPj und die Seriennummer SNi des betrachteten eingebetteten Systems. Der vorstehend genannte Überprüfungsvorgang, der eine Dualfunktion zum Unterschriftsvorgang ist, ermöglicht dann aufgrund der als vorstehende Parameter eingegebenen Variablen eine Antwort in Form von Ja oder Nein, d. h. die Erstellung des logisch wahren Werts oder des hierzu komplementären, als logisch falsch angesehenen Werts des Überprüfungsvorgangs.
  • Während auf diese Weise gemäß der Durchführung des erfindungsgemäßen Verfahrens, wie es in 2a und/oder 2b dargestellt ist, die Herkunft der Zertifizierungsanfrage überprüft werden konnte, ermöglicht das vorstehend genannte Verfahren es auch, die Leistungsfähigkeit der jedem betrachteten eingebetteten System Si zugewiesenen kryptographischen Verarbeitungen, d. h. der Verschlüsselung/Entschlüsselung und der Unterschriftsberechnung/-überprüfung, zu modulieren.
  • Gemäß einem besonders bemerkenswerten Gesichtspunkt des erfindungsgemäßen Verfahrens ermöglicht es dieses somit, aufgrund der beantragten Zertifizierung eines gegebenen öffentlichen Schlüssels und der Verwendungen dieses öffentlichen Schlüssels das die Zertifizierung beantragende eingebettete System Si dafür zu akkreditieren, Entschlüsselungsvorgänge gemäß einem auf einem schwachen Algorithmus beruhenden Verfahren durchzuführen, oder aber das eingebettete System oder die Einheit, die Inhaberin des eingebetteten Systems ist, nur für Vorgänge zu akkreditieren, die auf einem Algorithmus beruhen, der ausschließlich auf Vorgänge zur Unterschriftsberechnung beschränkt ist.
  • Insbesondere ist ersichtlich, dass in Abhängigkeit vom Wert der Bits des Verwendungsfelds des betrachteten Schlüssels – der Verwendungswert ist zum Beispiel mit zwei Bits codiert, wobei der Wert 1X dieser zwei Bits einer Verwendung zur Entschlüsselung gemäß einem auf einem schwachen Algorithmus beruhenden Verfahren entsprechen kann und der Wert X1 einem Vorgang gemäß einem Verfahren entsprechen kann, das auf einem ausschließlich zur Unterschriftserzeugung verwendeten Algorithmus beruht – das akkreditierte eingebettete System den einen oder den anderen dieser Vorgänge oder auch beide Vorgänge, aber keine sonstigen Vorgänge, zum Beispiel eine starke Entschlüsselung, ausführen kann. Es sei auch verdeutlicht, dass ein und dasselbe eingebettete System mehrere Schlüssel aufweisen kann, von denen einige zum Beispiel die Verwendungsbits mit dem Wert 10 haben, der somit den Schlüsselgebrauch auf Zwecke einer schwachen Entschlüsselung beschränkt, und andere Schlüssel die Verwendungsbits mit dem Wert 01 haben, der somit den Schlüsselgebrauch auf Zwecke der Unterschriftserzeugung beschränkt.
  • Unter Bezugnahme auf 6 wird nun ein auf einem schwachen Algorithmus beruhendes erfindungsgemäßes Entschlüsselungsverfahren beschrieben.
  • Allgemein wird angemerkt, dass ein vom RSA-Algorithmus verwendeter, asymmetrischer Verschlüsselungs- oder Entschlüsselungsschlüssel im allgemeinen 512 oder mehr Bits umfasst, während ein symmetrischer Schlüssel im allgemeinen 40 bis 192 Bits aufweist. Deshalb ist es notwendig, die verbleibenden Bits zum Beispiel mit einem Kopfteil aufzufüllen. Zum Beispiel ist es möglich, in der auf diese Weise geschaffenen Folge von 512 Bits einen Kopfteil vorzusehen, der durch fiktive spezifische willkürliche Werte gebildet ist, nämlich die Werte 02, 00 und im Hexadezimalcode FFF, gefolgt von zwei Bytes mit dem Wert 00 auf dem gesamten Wert des Kopfteils, mit denen ein symmetrischer geheimer Schlüssel verknüpft ist, im Rahmen an der rechten Seite, wobei insgesamt eine Bitfolge von 512 Bits gebildet ist. Falls der symmetrische geheime Schlüssel KSF 64 oder mehr Bits umfasst, wird das Entschlüsselungsverfahren mit dem symmetrischen geheimen Schlüssel als stark angesehen und entspricht in dieser Ausführungsform nicht dem Gegenstand der vorliegenden Erfindung.
  • Wenn andererseits das Feld für den symmetrischen geheimen Schlüssel KSf maximal 40 Bits aufweist, wobei das Feld für den Kopfteil folglich zum Beispiel durch Hexadezimalwerte FFF und eine sich daran anschließende Anzahl von 00 vervollständigt wird, dann ist das Feld für den geheimen Schlüssel ein Feld für einen geheimen Schlüssel für eine schwache symmetrische Entschlüsselung und entspricht somit einer schwachen Entschlüsselungsfunktion, die in der Lage ist, gemäß dem erfindungsgemäßen Verfahren durchgeführt zu werden.
  • Gemäß einem besonders bemerkenswerten Gesichtspunkt des erfindungsgemäßen Verfahrens besteht in einem solchen Fall für einen Satz von asymmetrischen Schlüsseln, nämlich einem als Ep bezeichneten öffentlichen Verschlüsselungsschlüssel und einem privaten Entschlüsselungsschlüssel Ds, die beide vom eingebetteten System Si erzeugt werden, wobei der Verschlüsselungsschlüssel Ep dem öffentlichen Schlüssel Kp entspricht, dessen Zertifizierung – wie in obiger Beschreibung ausgeführt – beantragt wird, und der private Entschlüsselungsschlüssel Ds dem in obiger Beschreibung erwähnten privaten Schlüssel Ks entspricht, das erfindungsgemäße Verfahren dann darin, dem Entschlüsselungsschlüssel Ds und dem entsprechenden asymmetrischen, zum Beispiel auf dem RSA-Algorithmus beruhenden Entschlüsselungsverfahren ein Verfahren und einen Schlüssel zur schwachen Entschlüsselung zuzuordnen, die zum Beispiel auf dem DES-Algorithmus beruht und deren symmetrischer Schlüssel maximal 40 Bit lang ist. So wird unter Bezugnahme auf 6 angemerkt, dass der als KSf bezeichnete schwache symmetrische Geheimschlüssel, der – wie in obiger Beschreibung ausgeführt – mit seinem Kopfteil beliebigen Werts ergänzt wird, einem Verschlüsselungsvorgang unterworfen wird, um einen Schlüssel zu erzielen, der mittels des zur asymmetrischen Verschlüsselung dienenden öffentlichen Schlüssels Ep verschlüsselt ist. Der auf diese Weise gewonnene verschlüsselte Schlüssel wird anschließend mittels des zur asymmetrischen Entschlüsselung dienenden privaten Schlüssels Ds einem Entschlüsselungsvorgang unterworfen, während nach dem erfindungsgemäßen Verfahren der private Entschlüsselungsschlüssel Ds in dem mit geschütztem äußeren Schreib-/Lesezugang versehenen Speicherbereich des eingebetteten Systems abgelegt wird und dem Nutzer daher nicht bekannt ist. Das vorstehend genannte Entschlüsselungsverfahren ermöglicht es daher, einen entschlüsselten Schlüssel zu erlangen, dessen Aufbau nichts anderes als der in obiger Beschreibung genannte Kopfteil und der schwache symmetrische Schlüssel KSf ist, dessen Länge ausschlaggebend ist.
  • Wenn die Länge des schwachen symmetrischen Schlüssels KSf maximal 40 Bit beträgt, wobei der Kopfteil einfach durch Bezug auf die entsprechenden Kopfteilwerte unterschieden wird und der symmetrische Schlüssel und insbesondere der schwache symmetrische Schlüssel KSf folglich ebenfalls unterschieden werden, dann kann der schwache symmetrische Schlüssel KSf der das eingebettete System besitzenden Einheit zur Verfügung gestellt werden, um Entschlüsselungen gemäß einem Verfahren durchzuführen, das auf einem schwachen Algorithmus beruht. Unter diesen Bedingungen erlaubt der schwache symmetrische Entschlüsselungsschlüssel KSf dem Entschlüsselungsverfahren lediglich die Entschlüsselung von Kryptogrammen C in Klartexte M mittels eines schwachen Entschlüsselungsschlüssels, wie in 6 dargestellt.
  • Wenn andererseits die Länge der den symmetrischen Schlüssel darstellenden, über den genannten Kopfteil hinausgehenden Bitfolge mehr als 40 Bits beträgt, wird der symmetrische Schlüssel, der länger als 40 Bits ist, nicht der das eingebettete System besitzenden Einheit zur Verfügung gestellt, die somit nicht in der Lage ist, Entschlüsselungsvorgänge gemäß einem auf einem starken Algorithmus beruhenden Verfahren durchzuführen.
  • Unter Bezugnahme auf 7 wird nun ein eingebettetes System beschrieben, das insbesondere die Durchführung des erfindungsgemäßen Verfahrens ermöglicht. In nichtbeschränkender Weise wird dieses eingebettete System in Form einer mikroprozessorbestückten Karte dargestellt und beschrieben.
  • Gemäß der vorstehend genannten 7 umfasst das eingebettete System in herkömmlicher Weise die gleichen Elemente wie sie auch in Verbindung mit 1 beschrieben wurden, nämlich eine Recheneinheit 14, einen Schreib-Lese-Speicher 16, einen nicht-flüchtigen Speicher 18 mit einem programmierbaren Speicher 18a, der einen Speicherbereich MAP mit geschütztem äußeren Zugang aufweist, ein Modul 20 für kryptographische Berechnungen und ein Ein-/Ausgabesystem 12, die durch eine Busverbindung miteinander verbunden sind. Um die Durchführung des erfindungsgemäßen Verfahrens zu ermöglichen, besitzt das eingebettete System wenigstens einen abgewandelten Schlüssel KsMi, der in dem mit geschütztem äußeren Zugang versehenen Speicher MAP abgelegt ist. Dieser abgewandelte private Schlüssel ist einmalig und unterscheidbar für das eingebettete System. Er wird anhand eines privaten Mutterschlüssels KpM und einer Identifikationsnummer des eingebetteten Systems berechnet und ist einem öffentlichen Mutterschlüssel KpM zugeordnet.
  • Das kryptographische Modul 20 umfasst ein Modul MCS zur Berechnung von Unterschriften anhand des abgewandelten privaten Schlüssels KsMi, das es ermöglicht, die Signatur zu einer Anfrage nach Zertifizierung eines öffentlichen Schlüssels Kp zu berechnen, der einem privaten Verschlüsselungs bzw. Unterschriftsschlüssel Ks zugeordnet ist. Der private Schlüssel Ks wird durch das Unterschriftsberechnungsmodul MCS erzeugt und in dem mit geschütztem Zugang versehenen Speicher MAP abgelegt. Die Unterschrift zu einer Zertifizierungsanfrage hängt von der Identifizierungsnummer des eingebetteten Systems ab. Das Unterschriftsberechnungsmodul MCS ermöglicht es, an eine Zertifizierungsstelle eine Zertifizierungsanfragenachricht zu senden, die die Zertifizierungsanfrage und die genannte Unterschrift umfasst. Dies ermöglicht der Zertifizierungsstelle, die Herkunft der Zertifizierungsanfrage des eingebetteten Systems 10 zu überprüfen und den abgewandelten privaten Schlüssel KsMi und den privaten Unterschriftsschlüssel Ks in dem mit geschütztem äußeren Zugang versehenen Speicher MAP ausschließlich anhand öffentlicher Elemente, wie des öffentlichen Mutterschlüssels KpM, zu schützen. Was das Unterschriftsberechnungsmodul MCS anbelangt, kann dieses in einen Nur-Lese-Speicherbereich ROM 18b des nicht-flüchtigen Speichers 18 integriert sein und auf Anfrage durch das kryptographischen Berechnungen dienende Modul 20 aufgerufen werden.

Claims (6)

  1. Verfahren zum Überprüfen des Gebrauchs von öffentlichen Schlüsseln, die aus einem Satz von asymmetrischen Schlüsseln, nämlich einem öffentlichen Schlüssel (Kp) und einem privaten Schlüssel (Ks), hervorgegangen sind, die für einen gegebenen Gebrauch, zum Beispiel eine Verschlüsselung/Entschlüsselung oder die Überprüfung/Erzeugung einer digitalen Unterschrift, von einem eingebetteten System erzeugt und im Speicherbereich eines eingebetteten Systems (Si) gespeichert werden, das mit einer Einrichtung für kryptographische Berechnungen und mit einer einen geschützten äußeren Schreib-/Lesezugang aufweisenden Einrichtung zum Speichern digitaler Daten versehen ist, wobei diese digitalen Daten (IDdi) wenigstens eine die Identifizierung des eingebetteten Systems ermöglichende Seriennummer (SNi) und einen Code (Opj) zur Identifizierung eines Bedieners umfassen, der befugt ist, das eingebettete System zu konfigurieren, und wobei diese Anfrage durch das eingebettete System formuliert wird, indem eine den öffentlichen Schlüssel (Kp) enthaltende Anfragenachricht (MRCA) an eine Zertifizierungsstelle (CA) übertragen wird, dadurch gekennzeichnet, dass das Verfahren folgende Schritte umfasst: – vor jeder Übertragung einer Zertifizierungsanfrage, anlässlich der Konfigurierung der eingebetteten Systeme durch den befugten Bediener, für alle eingebetteten Systeme (Si) einer Gruppe (Lk) von eingebetteten Systemen: – durch den befugten Bediener lässt man für die gegebene Gruppe von eingebetteten Systemen einen öffentlichen Mutterschlüssel (KpM) und einen privaten Mutterschlüssel (KsM) erzeugen, die im Rahmen eines auf einen Algorithmus (CAlM) gestützten Verfahrens verwirklicht werden; – der öffentliche Mutterschlüssel (KpM), welcher dem Algorithmus (CAlM), der Identität des befugten Bedieners (OPj) und einer einen Bereich von Identifikatoren eingebetteter Systeme definierenden Gruppe (Lk) zugeordnet ist, wird veröffentlicht; – für jedes eingebettete System, das zu der Gruppe (Lk) von eingebetteten Systemen gehört, wird anhand des privaten Mutterschlüssels (KsM) und der Seriennnummer (SNi) des eingebetteten Systems ein abgewandelter privater Schlüssel (KsMi) berechnet, und der abgewandelte private Schlüssel (KsMi) wird in dem den geschützten äußeren Schreib-/Lesezugang aufweisenden Speicherbereich abgelegt, und – vor jeder Übertragung einer Nachricht zur Anfrage nach einer Zertifizierung: – man lässt mittels des eingebetteten Systems eine Zertifizierungsanfrage (RCA) erzeugen, die insbesondere ein Feld des öffentlichen Schlüssels (CAl, Kp) und die Indikatoren der Verwendung (U) des öffentlichen Schlüssels (Kp) enthält, wobei die Zertifizierungsanfrage dem privaten Verschlüsselungs- bzw. Unterschriftsschlüssel (Ks) zugeordnet ist, – mittels der Recheneinrichtung und des dem eingebetteten System zugeordneten abgewandelten Schlüssels (KsMi) wird über die Gesamtheit der Anfrage (RCA) ein kryptographischer Kontrollwert (Sci) berechnet, wobei der kryptographische Kontrollwert eine digitale Unterschrift ist, die mittels des abgewandelten privaten Schlüssels (KsMi) berechnet wird; – bei der Ausgabe einer Zertifizierungsanfrage durch das eingebettete System an die Zertifizierungsstelle; – eine Nachricht (MRCA) zur Anfrage nach einer Zertifizierung wird gebildet, wobei die Nachricht die Anfrage (RCR), den Identifikator (IDdi) des eingebetteten Systems und den kryptographischen Kontrollwert (Sci) enthält, wobei der Identifikator des eingebetteten Systems zum einen aus dem Identifikator (OPj) des befugten Bedieners und zum anderen aus der Seriennummer (SNi) des eingebetteten Systems besteht, – an die Zertifizierungsstelle (CA) wird die im vorhergehenden Schritt gebildete Anfragenachricht (MRCA) übertragen, die den öffentlichen Schlüssel (Kp) und die die Gegenstände der Zertifizierung darstellenden Gebrauchsindikatoren (U) und den kryptographischen Kontrollwert (Sci) enthält; – beim Empfang einer Nachricht (MRCA) zur Anfrage nach einer Zertifizierung durch die Zertifizierungsstelle: – anhand des Identifikators (IDdi) des eingebetteten Systems wird die Identität des befugten Bedieners (OPj) wiedergefunden, – anhand des Identifikators (OPj) des befugten Bedieners werden der Wert des öffentlichen Mutterschlüssels (KpM) sowie der Identifikator des Algorithmus (CAlM) wiedergefunden, der der Gruppe zugeordnet ist, dem das eingebettete System angehört, – anhand des öffentlichen Mutterschlüssels (KpM), der Seriennummer (SNi) des eingebetteten Systems und der empfangenen Nachricht (MRCA) zur Anfrage nach einer Zertifizierung wird der kryptographische Kontrollwert (Sci) überprüft, wodurch die Authentizität des kryptographischen Kontrollwerts (Sci) und der Ursprung der Zertifizierungsanfrage festgestellt werden können.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass es bei der Erzeugung der Zertifizierungsanfrage durch das eingebettete System folgende weitere Schritte umfasst: – im eingebetteten System wird die Zertifizierungsanfrage (RCA) erzeugt, die dann aus drei Feldern zusammengesetzt ist, nämlich: einem Identifikator eines Algorithmus mit öffentlichem Schlüssel (CAl), einem Wert eines öffentlichen Schlüssels (Kp), und einem Indikator (U) der Verwendungen dieses Schlüssels.
  3. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass es folgende weitere Schritte umfasst, wenn in dem Schritt, in dem dem eingebetteten System ein Muster (GRCA) einer Zertifizierungsanfrage mitgeteilt wird, das eingebettete System die Zertifizierungsanfrage vervollständigt: – im eingebetteten System wird die Syntax des Zertifizierungsanfragemusters (GRCA) überprüft, um sich zu vergewissern, dass es sich um eine ordnungsgemäß gebildete Zertifizierungsanfrage handelt, und – von einer positiven Überprüfung wird der Schritt abhängig gemacht, in welchem man das eingebettete System die fehlenden Felder des Zertifizierungsanfragemusters (GRCA) vervollständigen lässt.
  4. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass für einen Satz von asymmetrischen Schlüsseln (Kp, Ks), die durch das eingebettete System erzeugt werden, wobei die für kryptographische Berechnungen dienende Einrichtung des eingebetteten Systems den privaten Schlüssel (Ks) nur zum Zweck der Erzeugung einer Unterschrift zu gebrauchen gestattet und der private Schlüssel (Ks), der in dem den geschützten äußeren Schreib-/Lesezugang aufweisenden Speicherbereich abgelegt ist, dem Benutzer unbekannt ist und hinsichtlich seines Gebrauchs ausschließlich auf Zwecke einer digitalen Unterschrift beschränkt ist, der Gebrauch des Schlüssels auf Unterschriftszwecke beschränkt ist und der Gebrauch des den zugehörigen öffentlichen Schlüssel enthaltenden Zertifikats in der Praxis auf Zwecke der Überprüfung einer Unterschrift beschränkt ist.
  5. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass es fur einen Satz von durch das eingebettete System erzeugten asymmetrischen Schlüsseln, nämlich einem öffentlichen Verschlüsselungsschlüssel (Ep) und einem privaten Entschlüsselungsschlüssel (Ds), die Schritte umfasst, dass den Schlüsseln (Ep, Ds) und dem asymmetrischen Entschlüsselungsverfahren ein Entschlüsselungsverfahren mit "schwachem" symmetrischen Entschlüsselungsschlüssel zugeordnet wird, wobei der symmetrische Entschlüsselungsschlüssel mit Hilfe des asymmetrischen privaten Entschlüsselungsschlüssels (Ds) verschlüsselt und dann entschlüsselt wird, wobei der private Schlüssel (Ds), der in dem den geschützten äußeren Schreib-/Lesezugang aufweisenden Speicherbereich abgelegt ist, dem Benutzer unbekannt ist, wodurch es möglich ist, den Gebrauch des Schlüssels nur zu Zwecken einer schwachen Entschlüsselung zu erlauben, und wobei der Gebrauch des den zugehörigen öffentlichen Schlüssel enthaltenden Zertifikats in der Praxis auf Zwecke einer schwachen Verschlüsselung beschränkt ist.
  6. Eingebettetes System mit einer Recheneinheit (14), einem Schreib-/Lesespeicher (16), einem nicht-flüchtigen Speicher (18), der einen programmierbaren Speicher (18a) umfasst, welcher einen Speicherbereich (MAP) mit geschütztem äußeren Zugang aufweist, einem Modul (20) für kryptographische Berechnungen und einem Ein-/Ausgangssystem (12), die durch eine Bus-Verbindung miteinander verbunden sind, dadurch gekennzeichnet, dass das eingebettete System wenigstens folgende Merkmale aufweist: – einen einmaligen und unterscheidbaren abgewandelten privaten Schlüssel (KsMi), der in dem den geschützten äußeren Zugang aufweisenden Speicher (MAP) abgelegt ist, wobei der für das eingebettete System einmalige und unterscheidbare abgewandelte private Schlüssel, der anhand eines privaten Mutterschlüssels (KsM) und einer das eingebettete System identifizierenden Zahl berechnet wird, einem öffentlichen Mutterschlüssel (KpM) zugeordnet ist; wobei das Modul (20) für kryptographische Berechnungen folgende Merkmale aufweist: – eine Einrichtung (MCS) zum Berechnen einer Unterschrift anhand des abgewandelten privaten Schlüssels (KsMi), die es ermöglicht, die Unterschrift (Sci) zu einer Anfrage (RCA) nach Zertifizierung eines öffentlichen Schlüssels (Kp) zu berechnen, der einem privaten Verschlüsselungs- bzw. Unterschriftsschlüssel (Ks) zugeordnet ist, wobei der private Schlüssel (Ks), der von der zum Berechnen einer Unterschrift dienenden Einrichtung (MCS) erzeugt wird, in dem den geschützten äußeren Zugang aufweisenden Speicher (MAP) abgelegt ist, wobei die Unterschrift (Sci) zu einer Zertifizierungsanfrage eine Funktion der das eingebettete System identifizierenden Zahl ist (Sci = SKsMi(RCR, IDdi)), wobei die zum Berechnen einer Unterschrift dienende Einrichtung (MCS) es ermöglicht, an eine Zertifizierungsstelle eine Zertifizierungsanfragenachricht zu übertragen, die die Zertifizierungsanfrage (RCA) und die Unterschrift (Sci) enthält, wodurch die Zertifizierungsstelle den Ursprung der Zertifizierungsanfrage des eingebetteten Systems überprüfen kann und der einmalige und unterscheidbare abgewandelte private Schlüssel (KsMi) und der private Verschlüsselungs- bzw. Unterschriftsschlüssel (Ks) in dem den geschützten äußeren Zugang aufweisenden Speicher (MAP) ausschließlich anhand öffentlicher Elemente, wie zum Beispiel des öffentlichen Mutterschlüssels (KpM), geschützt werden können.
DE60006041T 1999-02-11 2000-02-10 Verfahren zur überprüfung der benützung von öffentlichen schlüsseln welche von einem geladenen system generiert werden Expired - Lifetime DE60006041T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR9901652 1999-02-11
FR9901652A FR2789829B1 (fr) 1999-02-11 1999-02-11 Procede de verification de l'usage de cles publiques engendrees par un systeme embarque
PCT/FR2000/000332 WO2000048355A2 (fr) 1999-02-11 2000-02-10 Procede de verification de l'usage de cles publiques engendrees par un systeme embarque

Publications (2)

Publication Number Publication Date
DE60006041D1 DE60006041D1 (de) 2003-11-27
DE60006041T2 true DE60006041T2 (de) 2004-08-26

Family

ID=9541902

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60006041T Expired - Lifetime DE60006041T2 (de) 1999-02-11 2000-02-10 Verfahren zur überprüfung der benützung von öffentlichen schlüsseln welche von einem geladenen system generiert werden

Country Status (8)

Country Link
US (1) US6968060B1 (de)
EP (1) EP1072124B1 (de)
JP (1) JP4155712B2 (de)
AT (1) ATE252795T1 (de)
CA (1) CA2328101C (de)
DE (1) DE60006041T2 (de)
FR (1) FR2789829B1 (de)
WO (1) WO2000048355A2 (de)

Families Citing this family (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2810139B1 (fr) * 2000-06-08 2002-08-23 Bull Cp8 Procede de securisation de la phase de pre-initialisation d'un systeme embarque a puce electronique, notamment d'une carte a puce, et systeme embarque mettant en oeuvre le procede
FI114180B (fi) * 2001-06-12 2004-08-31 Nokia Corp Parannettu menetelmä ja laitejärjestely tietojen siirron salaamiseksi radioverkon päätelaitteen sisältämässä rajapinnassa sekä radioverkon päätelaite
US7178033B1 (en) 2001-12-12 2007-02-13 Pss Systems, Inc. Method and apparatus for securing digital assets
US10033700B2 (en) 2001-12-12 2018-07-24 Intellectual Ventures I Llc Dynamic evaluation of access rights
US10360545B2 (en) 2001-12-12 2019-07-23 Guardian Data Storage, Llc Method and apparatus for accessing secured electronic data off-line
US7921450B1 (en) * 2001-12-12 2011-04-05 Klimenty Vainstein Security system using indirect key generation from access rules and methods therefor
US7681034B1 (en) 2001-12-12 2010-03-16 Chang-Ping Lee Method and apparatus for securing electronic data
US8006280B1 (en) 2001-12-12 2011-08-23 Hildebrand Hal S Security system for generating keys from access rules in a decentralized manner and methods therefor
US7921288B1 (en) 2001-12-12 2011-04-05 Hildebrand Hal S System and method for providing different levels of key security for controlling access to secured items
US7930756B1 (en) 2001-12-12 2011-04-19 Crocker Steven Toye Multi-level cryptographic transformations for securing digital assets
US7921284B1 (en) 2001-12-12 2011-04-05 Gary Mark Kinghorn Method and system for protecting electronic data in enterprise environment
US7380120B1 (en) 2001-12-12 2008-05-27 Guardian Data Storage, Llc Secured data format for access control
US7565683B1 (en) 2001-12-12 2009-07-21 Weiqing Huang Method and system for implementing changes to security policies in a distributed security system
USRE41546E1 (en) 2001-12-12 2010-08-17 Klimenty Vainstein Method and system for managing security tiers
US8065713B1 (en) 2001-12-12 2011-11-22 Klimenty Vainstein System and method for providing multi-location access management to secured items
US7260555B2 (en) 2001-12-12 2007-08-21 Guardian Data Storage, Llc Method and architecture for providing pervasive security to digital assets
US7950066B1 (en) 2001-12-21 2011-05-24 Guardian Data Storage, Llc Method and system for restricting use of a clipboard application
US8176334B2 (en) 2002-09-30 2012-05-08 Guardian Data Storage, Llc Document security system that permits external users to gain access to secured files
US8613102B2 (en) 2004-03-30 2013-12-17 Intellectual Ventures I Llc Method and system for providing document retention using cryptography
US7748045B2 (en) 2004-03-30 2010-06-29 Michael Frederick Kenrich Method and system for providing cryptographic document retention with off-line access
US7512810B1 (en) 2002-09-11 2009-03-31 Guardian Data Storage Llc Method and system for protecting encrypted files transmitted over a network
US7836310B1 (en) 2002-11-01 2010-11-16 Yevgeniy Gutnik Security system that uses indirect password-based encryption
US7890990B1 (en) 2002-12-20 2011-02-15 Klimenty Vainstein Security system with staging capabilities
US8707034B1 (en) 2003-05-30 2014-04-22 Intellectual Ventures I Llc Method and system for using remote headers to secure electronic files
US7730543B1 (en) 2003-06-30 2010-06-01 Satyajit Nath Method and system for enabling users of a group shared across multiple file security systems to access secured files
US8127366B2 (en) 2003-09-30 2012-02-28 Guardian Data Storage, Llc Method and apparatus for transitioning between states of security policies used to secure electronic documents
US7703140B2 (en) 2003-09-30 2010-04-20 Guardian Data Storage, Llc Method and system for securing digital assets using process-driven security policies
US7707427B1 (en) 2004-07-19 2010-04-27 Michael Frederick Kenrich Multi-level file digests
JP2006195586A (ja) * 2005-01-11 2006-07-27 Ntt Docomo Inc コンテンツ配信ノード、ネットワーク機器および販売システム
US20070226514A1 (en) * 2006-03-24 2007-09-27 Atmel Corporation Secure biometric processing system and method of use
US20070237366A1 (en) * 2006-03-24 2007-10-11 Atmel Corporation Secure biometric processing system and method of use
US8261072B2 (en) * 2006-03-24 2012-09-04 Atmel Corporation Method and system for secure external TPM password generation and use
JP5202646B2 (ja) * 2008-12-11 2013-06-05 三菱電機株式会社 自己認証通信機器および機器認証システム
WO2010067433A1 (ja) * 2008-12-11 2010-06-17 三菱電機株式会社 自己認証通信機器、自己認証検証通信機器、機器認証システム、機器認証システムの機器認証方法、自己認証通信プログラムおよび自己認証検証通信プログラム
US8331568B2 (en) * 2009-05-28 2012-12-11 Microsoft Corporation Efficient distribution of computation in key agreement
US9754253B1 (en) 2011-11-28 2017-09-05 Amazon Technologies, Inc. Conditioned use of certificates
EP3497878B1 (de) * 2016-09-06 2020-05-20 Huawei Technologies Co., Ltd. Vorrichtung und verfahren zur verteilten zertifikatsregistrierung
US10505931B2 (en) * 2017-06-02 2019-12-10 Nxp B.V. Method for authenticating an integrated circuit device
JP2020195100A (ja) * 2019-05-29 2020-12-03 株式会社bitFlyer Blockchain 公開鍵の信頼性を証明するための装置、方法及びそのためのプログラム
CN110191415B (zh) * 2019-05-29 2022-01-25 深圳市元征科技股份有限公司 一种车辆信息的加密方法、车载设备及服务器
CN112350821A (zh) * 2019-08-06 2021-02-09 北京车和家信息技术有限公司 密钥的获取方法、装置及系统
CN111769953B (zh) * 2020-06-29 2023-03-24 中钞信用卡产业发展有限公司杭州区块链技术研究院 一种数字证照证明方法、装置、设备及可读存储介质

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB8819767D0 (en) * 1988-08-19 1989-07-05 Ncr Co Public key diversification method
FR2662007B1 (fr) * 1990-05-10 1992-07-10 Bull Sa Procede d'obtention d'une attestation en clair securisee dans un environnement de systeme informatique distribue.
US5164988A (en) * 1991-10-31 1992-11-17 International Business Machines Corporation Method to establish and enforce a network cryptographic security policy in a public key cryptosystem
GB9213169D0 (en) * 1992-06-22 1992-08-05 Ncr Int Inc Cryptographic key management apparatus and method
US5586186A (en) * 1994-07-15 1996-12-17 Microsoft Corporation Method and system for controlling unauthorized access to information distributed to users
US6134658A (en) * 1997-06-09 2000-10-17 Microsoft Corporation Multi-server location-independent authentication certificate management system
DE19748954A1 (de) * 1997-10-29 1999-05-06 Francotyp Postalia Gmbh Verfahren für eine digital druckende Frankiermaschine zur Erzeugung und Überprüfung eines Sicherheitsabdruckes

Also Published As

Publication number Publication date
ATE252795T1 (de) 2003-11-15
EP1072124A2 (de) 2001-01-31
FR2789829B1 (fr) 2001-04-20
CA2328101A1 (en) 2000-08-17
US6968060B1 (en) 2005-11-22
WO2000048355A2 (fr) 2000-08-17
JP4155712B2 (ja) 2008-09-24
DE60006041D1 (de) 2003-11-27
WO2000048355A3 (fr) 2000-11-16
EP1072124B1 (de) 2003-10-22
JP2002537685A (ja) 2002-11-05
CA2328101C (en) 2009-02-03
FR2789829A1 (fr) 2000-08-18

Similar Documents

Publication Publication Date Title
DE60006041T2 (de) Verfahren zur überprüfung der benützung von öffentlichen schlüsseln welche von einem geladenen system generiert werden
DE112011100182B4 (de) Datensicherheitsvorrichtung, Rechenprogramm, Endgerät und System für Transaktionsprüfung
EP3447667B1 (de) Kryptographische sicherung für eine verteilte datenspeicherung
DE602005002652T2 (de) System und Verfahren für das Erneuern von Schlüsseln, welche in Public-Key Kryptographie genutzt werden
EP2367128B1 (de) Verfahren und Vorrichtung zur elektronischen Signatur
DE69931967T2 (de) Methode zur sicherung von elektronischer information
DE3303846C2 (de)
DE102012206341B4 (de) Gemeinsame Verschlüsselung von Daten
DE69628321T2 (de) Rückgewinnung eines angegriffenen wurzel-schlüssels
DE69629857T2 (de) Datenkommunikationssystem unter Verwendung öffentlicher Schlüssel
DE10328328A1 (de) Produktschutz-Portal und Verfahren zur Echtheitsprüfung von Produkten
DE69737905T2 (de) Gültigkeitsprüfung kryptografischer öffentlicher Schlüssel für Chipkarten
EP4111348A1 (de) Verfahren zum direkten übertragen von elektronischen münzdatensätzen zwischen endgeräten, bezahlsystem, währungssystem und überwachungseinheit
EP3552344B1 (de) Bidirektional verkettete blockchainstruktur
AT519025B1 (de) Verfahren zum Austausch von Datenfeldern von zertifizierten Dokumenten
EP3767513B1 (de) Verfahren zur sicheren durchführung einer fernsignatur sowie sicherheitssystem
EP2893668B1 (de) Verfahren zur erstellung einer abgeleiteten instanz eines originaldatenträgers
EP1418704B1 (de) Verfahren und Vorrichtung zur Bildung einer Nachweisgrösse, die einen Nachweis eines digitalen Signierens einer elektronischen Datei ermöglicht, sowie Verwendung der Nachweisgrösse
EP1306820B1 (de) Signatur eines Dokuments
DE4420970A1 (de) Entschlüsselungseinrichtung von Entschlüsselungsalgorithmen und Verfahren zur Durchführung der Ver- und Entschlüsselung derselben
EP0400362A2 (de) Verfahren zur hierarchischen Schlüsselverwaltung mit Teilschlüsseln zur Übermittlung digitalisierter Information
WO2022069247A1 (de) Gerät und verfahren zur einrichtung einer dienstbezogenen authentisierung
WO2014019776A1 (de) Authentifizierung eines dokuments gegenüber einem lesegerät
WO2024038210A1 (de) Verfahren zum bereitstellen eines digitalen schlüssels
DE102022203327A1 (de) Verfahren und Vorrichtung zum Verarbeiten von mit einem Sicherheitsmodul assoziierten Daten

Legal Events

Date Code Title Description
8327 Change in the person/name/address of the patent owner

Owner name: BULL S.A., LES CLAYES SOUS BOIS, FR

8364 No opposition during term of opposition