DE112005001666B4 - Verfahren zum Bereitstellen von privaten Direktbeweis-Schlüsseln in signierten Gruppen für Vorrichtungen mit Hilfe einer Verteilungs-CD - Google Patents

Verfahren zum Bereitstellen von privaten Direktbeweis-Schlüsseln in signierten Gruppen für Vorrichtungen mit Hilfe einer Verteilungs-CD Download PDF

Info

Publication number
DE112005001666B4
DE112005001666B4 DE112005001666T DE112005001666T DE112005001666B4 DE 112005001666 B4 DE112005001666 B4 DE 112005001666B4 DE 112005001666 T DE112005001666 T DE 112005001666T DE 112005001666 T DE112005001666 T DE 112005001666T DE 112005001666 B4 DE112005001666 B4 DE 112005001666B4
Authority
DE
Germany
Prior art keywords
key
private key
data structure
encrypted data
private
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE112005001666T
Other languages
English (en)
Other versions
DE112005001666T5 (de
Inventor
James Portland Sutton
Clifford Orangevale Hall
Ernie Portland Brickell
David Aloha Grawrock
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.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of DE112005001666T5 publication Critical patent/DE112005001666T5/de
Application granted granted Critical
Publication of DE112005001666B4 publication Critical patent/DE112005001666B4/de
Expired - Fee Related 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1027Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
    • G06F12/1036Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] for multiple virtual address spaces, e.g. segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/73Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information by creating or determining hardware identification, e.g. serial numbers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • 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/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • H04L9/0897Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3218Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • 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

Abstract

Verfahren, umfassend:
Erzeugen einer verschlüsselten Datenstruktur, die mit einer Vorrichtung assoziiert ist, wobei die verschlüsselte Datenstruktur einen privaten Schlüssel und ein privates Schlüssel-Digest umfaßt;
Erzeugen (704) eines Identifikators, der auf einem pseudo-zufällig erzeugten Wert beruht, für die verschlüsselte Datenstruktur;
Speichern (716) des Identifikators und der verschlüsselten Datenstruktur in einem signierten Gruppenverzeichnis auf einem entfernbaren Speichermedium; und
Speichern des pseudo-zufälligen Wertes und einer Gruppenzahl, die dem signierten Gruppenverzeichnis entspricht, in einem nichtflüchtigen Speicher innerhalb der Vorrichtung.

Description

  • ALLGEMEINER STAND DER TECHNIK
  • 1. GEBIET
  • Die vorliegende Erfindung betrifft im allgemeinen die Computersicherheit und genauer das sichere Verteilen kryptographischer Schlüssel an Vorrichtungen in Verarbeitungssystemen.
  • 2. BESCHREIBUNG
  • Einige Verarbeitungssystemarchitekturen, welche Inhaltsschutz- und/oder Computersicherheitsmerkmale unterstützen, erfordern, daß speziell geschützte oder „vertrauenswürdige” Softwaremodule eine authentisierte verschlüsselte Kommunikationssitzung mit spezifisch geschützten oder „vertrauenswürdigen” Hardwarevorrichtungen in dem Verarbeitungssystem (wie zum Beispiel Grafiksteuerkarten) erzeugen können. Ein üblicherweise angewendetes Verfahren sowohl zum Identifizieren der Vorrichtung als auch zum gleichzeitigen Erstellen der verschlüsselten Kommunikationssitzung ist die Benutzung eines einseitig authentisierten Diffie-Helman(DH)-Schlüsselaustauschprozesses. In diesem Prozeß wird der Vorrichtung ein einmaliges öffentliches/privates Schlüsselpaar mit Rivest-Shamir-Adelman(RSA)-Algorithmus oder ein einmaliges Schlüsselpaar mit elliptischer Kurvenkryptographie (ECC) zugewiesen. Da dieser Authentifizierungsprozeß jedoch RSA- oder ECC-Schlüssel benutzt, hat die Vorrichtung eine einmalige und beweisbare Identität, was Datenschutzprobleme verursachen kann. Im schlimmsten Fall können diese Probleme zu einem Mangel an Unterstützung seitens der Hersteller von Originalteilen (OEMs) zum Herstellen vertrauenswürdiger Vorrichtungen führen, welche diese Art Sicherheit bereitstellen.
  • WO 2004/051923 A1 offenbart ein System und ein Verfahren mit dem einem „Challenger” nachgewiesen werden kann, dass eine „Prover”-Vorrichtung von einem Hersteller der Vorrichtung eine Signatur erhalten hat, ohne dem Challenger die Signatur preiszugeben. Dazu sendet der Challenger eine Nachricht an die „Prover”-Vorrichtung, mit der um eine Versicherung der Validität der Vorrichtung nachsucht. Die „Prover”-Vorrichtung sendet ein Vorrichtungszertifikat einschließlich einer Zahl n an den Challenger und erzeugt ein Attestation Identify Key (AIK) Schlüsselpaar mit einem privaten und öffentlichen Schlüssel. Die „Prover”-Vorrichtung erzeugt einen zufälligen oder pseudo-zufälligen Wert h, berechnet damit einen Wert k = hmmodP und sendet den berechneten Wert k und den öffentlichen AIK Schlüssel an den Challenger.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • Die Merkmale und Vorteile der vorliegenden Erfindung werden aus der folgenden ausführlichen Beschreibung der vorliegenden Erfindung offensichtlich. Es zeigen:
  • 1 ein System, das durch eine Plattform gekennzeichnet ist, die mit einem vertrauenswürdigen Plattformmodul (TPM) versehen ist, das gemäß einer Ausführungsform der Erfindung arbeitet;
  • 2 eine erste Ausführungsform der Plattform, die das TPM aus 1 aufweist;
  • 3 eine zweite Ausführungsform der Plattform, die das TPM aus 1 aufweist;
  • 4 ein Ausführungsbeispiel eines Computersystems, das mit dem TPM aus 2 ausgeführt ist;
  • 5 ein Diagramm eines Systems zum Verteilen von Direktbeweis-Schlüsseln in signierten Gruppen gemäß einer Ausführungsform der vorliegenden Erfindung;
  • 6 ein Flußdiagramm, das Schritte eines Verfahrens zum Verteilen von Direktbeweis-Schlüsseln in signierten Gruppen gemäß einer Ausführungsform der vorliegenden Erfindung darstellt;
  • 7 und 8 Flußdiagramme, die eine Herstellungsaufbauverarbeitung der Vorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung darstellen;
  • 9 ein Flußdiagramm, das eine Herstellungsproduktionsverarbeitung der Vorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung darstellt;
  • 10 und 11 Flußdiagramme einer Aufbauverarbeitung eines Client-Computersystems gemäß einer Ausführungsform der vorliegenden Erfindung; und
  • 12 ein Flußdiagramm der Verarbeitung eines Client-Computersystems gemäß einer Ausführungsform der vorliegenden Erfindung.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Die Verwendung des auf Direktbeweis beruhenden Diffie-Helman-Schlüsselaustauschprotokolls, damit sich geschützte/vertrauenswürdige Vorrichtungen selbst authentisieren und eine verschlüsselte Kommunikationssitzung mit vertrauenswürdigen Softwaremodulen erstellen können, vermeidet die Erzeugung von einmaliger Identitätsinformation in dem Verarbeitungssystem und vermeidet dadurch Datenschutzprobleme. Jedoch erfordert die direkte Einbettung eines privaten Direktbeweis-Schlüssels in eine Vorrichtung auf einem Herstellungsband mehr geschützten nichtflüchtigen Speicher auf der Vorrichtung als andere Ansätze, was zu erhöhten Vorrichtungskosten führt. Eine Ausführungsform der vorliegenden Erfindung ist ein Verfahren, das ermöglicht, daß private Direktbeweis-Schlüssel (die zum Beispiel zum Signieren benutzt werden) in signierten Gruppen in sicherer Weise auf einem Verteilungs-Kompaktplatten-Nurlesespeicher (CD-ROM oder CD) geliefert und nachfolgend in der Vorrichtung von der Vorrichtung selbst installiert werden. In einer Ausführungsform kann die Reduzierung des Vorrichtungsspeichers, der zur Unterstützung dieser Fähigkeit erforderlich ist, von etwa 300 bis 700 Bytes bis zu etwa 20 bis 25 Bytes betragen. Diese Reduzierung der Menge des nichtflüchtigen Speichers, die zur Umsetzung des auf Direktbeweis beruhenden Diffie-Helman-Schlüsselaustauschs für Vorrichtungen erforderlich ist, kann zu einer breiteren Anwendung dieser Technik führen.
  • Bezugnahmen in der Beschreibung auf ”eine Ausführungsform” der vorliegenden Erfindung bedeuten, daß ein bestimmtes Merkmal, eine bestimmte Struktur oder Eigenschaft, die in Verbindung mit der Ausführungsform beschrieben wird, in mindestens einer Ausführungsform der vorliegenden Erfindung enthalten ist. Folglich bezieht sich das Vorkommen des Ausdrucks „in einer Ausführungsform” an verschiedenen Stellen in der Beschreibung nicht unbedingt auf die gleiche Ausführungsform.
  • In der folgenden Beschreibung wird eine bestimmte Terminologie benutzt, um bestimmte Merkmale einer oder mehrerer Ausführungsformen der Erfindung zu beschreiben. Zum Beispiel wird ”Plattform” als jede beliebige Art von Kommunikationsvorrichtung definiert, die zum Senden und Empfangen von Information geeignet ist. Beispiele verschiedener Plattformen schließen ein, sind jedoch nicht beschränkt oder eingeschränkt auf Computersysteme, persönliche digitale Assistenten, Mobiltelefone, Set-Top-Boxes, Faxgeräte, Drucker, Modems, Router oder dergleichen. Eine ”Kommunikationsverbindung” wird allgemein als ein oder mehrere Information tragende Medien definiert, die an eine Plattform angepaßt sind. Beispiele verschiedener Arten von Kommunikationsverbindungen schließen ein, sind jedoch nicht beschränkt oder eingeschränkt auf einen elektrischen Draht oder elektrische Drähte, optische Faser(n), Kabel, Busablaufverfolgung(en) oder drahtlose Signalisierungstechnologie.
  • Ein ”Herausfordernder” (Challenger) bezieht sich auf jede beliebige Entität (zum Beispiel Person, Plattform, System, Software und/oder Vorrichtung), die eine Verifizierung der Authentizität oder Berechtigung einer anderen Entität anfordert. Im Normalfall wird dies vor dem Offenbaren oder Bereitstellen der angeforderten Information ausgeführt. Ein ”Antwortender” (Responder) bezieht sich auf jede beliebige Entität, die aufgefordert worden ist, einen Beweis ihrer Berechtigung, Gültigkeit und/oder Identität bereitzustellen. Der Ausdruck „Vorrichtungshersteller”, der mit „bescheinigender Hersteller” austauschbar benutzt werden kann, bezieht sich auf jede beliebige Entität, die eine Plattform oder Vorrichtung herstellt oder konfiguriert.
  • Wie hier verwendet, bedeutet einem Herausfordernden ”beweisen” oder einen Herausfordernden davon ”überzeugen”, daß ein Antwortsender eine gewisse kryptographische Information (zum Beispiel digitale Signatur, ein Geheimnis wie einen Schlüssel usw.) besitzt oder kennt, daß basierend auf der dem Herausfordernden offenbarten Information und Nachweis eine hohe Wahrscheinlichkeit besteht, daß der Antwortende kryptographische Information hat. Dies einem Herausfordernden zu beweisen, ohne dem Herausfordernden die kryptographische Information zu „enthüllen” oder zu „offenbaren”, bedeutet, daß es für den Herausfordernden basierend auf der dem Herausfordernden offenbarten Information rechnerisch undurchführbar wäre, die kryptographische Information zu bestimmen.
  • Solche Beweise werden nachstehend als Direktbeweise bezeichnet. Der Ausdruck ”Direktbeweis” bezieht sich auf Nullkenntnisbeweise, wobei diese Beweisarten auf dem Fachgebiet allgemein bekannt sind. Insbesondere ist ein spezifisches Direktbeweis-Protokoll wie hier verwendet Gegenstand der ebenfalls abhängigen Patentanmeldung mit Anmeldenummer 10/306,336, die am 27.11.2002 mit der Bezeichnung „System and Method for Establishing Trust Without Revealing Identity” eingereicht und an den Inhaber der vorliegenden Anmeldung übertragen wurde. Ein Direktbeweis definiert ein Protokoll, in dem ein Aussteller eine Familie vieler Mitglieder definiert, die gemeinsame Eigenschaften teilen, die von dem Aussteller definiert werden. Der Aussteller erzeugt ein Familienpaar eines öffentlichen und privaten Schlüssels (Fpub und Fpri), das für die gesamte Familie steht. Mit Hilfe des Fpri kann der Aussteller auch einen einmaligen privaten Direktbeweis-Signierschlüssel (DPpri) für jedes einzelne Mitglied in der Familie erzeugen. Jede Nachricht, die von einem einzelnen DPpri signiert wird, kann mit Hilfe des öffentlichen Familienschlüssels Fpub verifiziert werden. Jedoch identifiziert solch eine Verifikation nur, daß der Signierer ein Mitglied der Familie ist; es wird keine eindeutig identifizierende Information über das einzelne Mitglied dargelegt. In einer Ausführungsform kann der Aussteller ein Vorrichtungshersteller oder Vertreter sein. Das heißt, der Aussteller kann eine Entität mit der Fähigkeit zum Definieren von Vorrichtungsfamilien basierend auf den gemeinsamen Eigenschaften, zum Erzeugen des öffentlichen/privaten Familienschlüsselpaars und zum Erzeugen und Einführen privater DP-Schlüssel in die Vorrichtungen sein. Der Aussteller kann auch Zertifikate für den öffentlichen Familienschlüssel erzeugen, welche die Quelle des Schlüssels und die Eigenschaften der Vorrichtungsfamilie identifizieren.
  • Mit Bezug auf 1 ist eine Ausführungsform eines Systems, das durch eine Plattform gekennzeichnet ist, die mit einer vertrauenswürdigen Hardwarevorrichtung (als „vertrauenswürdiges Plattformmodul” oder „TPM” bezeichnet) ausgeführt ist, die gemäß einer Ausführungsform der Erfindung arbeitet, dargestellt. Eine erste Plattform 102 (Herausfordernder) sendet eine Aufforderung 106, daß eine zweite Plattform 104 (Antwortender) Information über sich selbst bereitstellt. In Antwort auf die Aufforderung 106 stellt die zweite Plattform 104 die angeforderte Information 108 bereit.
  • Außerdem muß die erste Plattform 102 für eine erhöhte Sicherheit möglicherweise verifizieren, daß die angeforderte Information 108 von einer Vorrichtung kommt, die entweder von einem ausgewählten Vorrichtungshersteller oder einer ausgewählten Gruppe von Vorrichtungsherstellern (nachstehend als „Vorrichtungshersteller 110” bezeichnet) kommt. Zum Beispiel fordert die erste Plattform 102 in einer Ausführungsform der Erfindung die zweite Plattform 104 heraus, zu zeigen, daß sie kryptographische Information (zum Beispiel eine Signatur) hat, die von dem(den) Vorrichtungshersteller(n) 110 erzeugt ist. Die Herausforderung kann entweder in einer Aufforderung 106 (wie dargestellt) enthalten sein oder in eine getrennte Übertragung sein. Die zweite Plattform 104 antwortet auf die Herausforderung durch Bereitstellen von Information in Form einer Antwort, um die erste Plattform 102 zu überzeugen, daß die zweite Plattform 104 kryptographische Information hat, die von dem(den) Vorrichtungshersteller(n) 110 erzeugt ist, ohne die kryptographische Information zu enthüllen. Die Antwort kann entweder Teil der angeforderten Information 108 (wie dargestellt) oder eine getrennte Übertragung sein.
  • In einer Ausführungsform der Erfindung umfaßt die zweite Plattform 104 ein vertrauenswürdiges Platform-Modul (TPM) 115. Das TPM 115 ist eine kryptographische Vorrichtung, die von dem(den) Vorrichtungshersteller(n) 110 hergestellt wird. In einer Ausführungsform der Erfindung umfaßt das TPM 115 einen Prozessor mit einer kleinen Menge von Speicher auf einem Chip, der innerhalb eines Gehäuses eingekapselt ist. Das TPM 115 ist konfiguriert, um der ersten Plattform 102 Information bereitzustellen, die sie dazu befähigen würde, zu bestimmen, daß eine Antwort von einem gültigen TPM gesendet wird. Die benutzte Information ist Inhalt, der es nicht wahrscheinlich macht, daß die Identität des TPM oder der zweiten Plattform bestimmt werden kann.
  • 2 stellt eine erste Ausführungsform der zweiten Plattform 104 mit dem TPM 115 dar. Für diese Ausführungsform der Erfindung umfaßt die zweite Plattform 104 einen Prozessor 202, der mit dem TPM 115 verbunden ist. Im allgemeinen ist der Prozessor 202 eine Vorrichtung, die Information verarbeitet. Zum Beispiel kann der Prozessor 202 in einer Ausführungsform der Erfindung als ein Mikroprozessor, digitaler Signalprozessor, eine Mikrosteuerung oder sogar Zustandsmaschine ausgeführt sein. Als Alternative kann der Prozessor 202 in einer anderen Ausführungsform der Erfindung als eine programmierbare oder hartcodierte Logik, wie feldprogrammierbare Gate-Arrays (FPGAs); eine Transistor-Transistor-Logik (TTL) oder sogar eine anwendungsspezifische integrierte Schaltung (ASIC) ausgeführt sein.
  • Hierin umfaßt die zweite Plattform 104 ferner eine Speichereinheit 206, um die Speicherung kryptographischer Information wie eines oder mehrere der Folgenden zu ermöglichen: Schlüssel, Hash-Werte (Streuwerte), Signaturen, Zertifikate usw. Ein Hash-Wert von „X” kann als „HASH(X)” dargestellt werden. Es wird berücksichtigt, daß solche Information in dem internen Speicher 220 des TPMs 115 anstatt der Speichereinheit 206 gespeichert werden kann, wie in 3 dargestellt. Die kryptographische Information kann verschlüsselt werden, besonders wenn sie außerhalb des TPMs 115 gespeichert wird.
  • 4 stellt eine Ausführungsform einer Plattform dar, die ein Computersystem 300 aufweist, das mit dem TPM 115 aus 2 implementiert ist. Das Computersystem 300 umfaßt einen Bus 302 und einen Prozessor 310, der mit dem Bus 302 verbunden ist. Das Computersystem 300 umfaßt ferner eine Hauptspeichereinheit 304 und eine statische Speichereinheit 306.
  • Hierin ist die Hauptspeichereinheit 304 ein flüchtiger Halbleiterspeicher zum Speichern von Information und Befehlen, die von dem Prozessor 310 ausgeführt werden. Der Hauptspeicher 304 kann auch zum Speichern temporärer Variablen oder anderer Zwischeninformation während der Ausführung von Befehlen durch den Prozessor 310 sein. Die statische Speichereinheit 306 ist ein nichtflüchtiger Halbleiterspeicher zum Speichern von Information und Befehlen von dauerhafterer Natur für den Prozessor 310. Beispiele eines statischen Speichers 306 schließen ein, sind jedoch nicht beschränkt oder eingeschränkt auf Nurlesespeicher (ROM). Sowohl die Hauptspeichereinheit 304 als auch die statische Speichereinheit 306 sind mit dem Bus 302 verbunden.
  • In einer Ausführungsform der Erfindung umfaßt ein Computersystem 300 ferner eine Datenspeichervorrichtung 308, wie eine Magnetplatte oder optische Platte, und ihr entsprechendes Laufwerk kann auch mit dem Computersystem 300 zum Speichern von Information und Befehlen verbunden sein.
  • Das Computersystem 300 kann auch über den Bus 302 mit der Grafiksteuervorrichtung 314 verbunden sein, die eine Anzeige (nicht dargestellt) wie eine Kathodenstrahlröhre (CRT), Flüssigkristallanzeige (LCD) oder jeden beliebigen Flachbildschirm zum Anzeigen von Information für einen Endbenutzer steuert. In einer Ausführungsform kann gewünscht werden, daß die Grafiksteuerung oder eine andere periphere Vorrichtung eine authentisierte verschlüsselte Kommunikationssitzung mit einem Softwaremodul erstellt, das von dem Prozessor ausgeführt wird.
  • In der Regel kann eine alphanumerische Eingabevorrichtung 316 (zum Beispiel eine Tastatur, Kleintastatur usw.) mit dem Bus 302 verbunden sein, um dem Prozessor 310 Information und/oder Befehlsauswahlen mitzuteilen. Eine andere Art Benutzereingabevorrichtung ist die Kursorsteuereinheit 318, wie z. B. eine Maus, eine Steuerkugel, Berührungsfeld, Eingabestift oder Kursorrichtungstasten, um dem Prozessor 310 Richtungsinformation und Befehlsauswahlen mitzuteilen und die Kursorbewegung auf der Anzeige 314 zu steuern.
  • Eine Kommunikationsschnittstelleneinheit 320 ist auch mit dem Bus 302 verbunden. Beispiele einer Schnittstelleneinheit 320 sind ein Modem, eine Netzwerkschnittstellenkarte oder andere gut bekannte Schnittstellen, die zum Verbinden mit einer Kommunikationsverbindung benutzt werden, die Teil eines lokalen Netzes oder Fernnetzes sind. Auf diese Weise kann das Computersystem 300 mit einer Anzahl von Kunden und/oder Servern über eine herkömmliche Netzwerkinfrastruktur wie zum Beispiel das Intranet eines Unternehmens und/oder das Internet verbunden werden.
  • Es versteht sich, daß für bestimmte Ausführungen ein Computersystem wünschenswert sein kann, das weniger oder mehr Ausstattung aufweist als das beschriebene. Folglich variiert die Konfiguration des Computersystems 300 von Ausführung zu Ausführung abhängig von zahlreichen Faktoren, wie Preiseinschränkungen, Leistungsanforderungen, technologische Verbesserungen und/oder anderen Umständen.
  • In mindestens einer Ausführungsform kann das Computersystem 300 die Verwendung speziell geschützter „vertrauenswürdiger” Softwaremodule (zum Beispiel manipulationssichere Software oder Systeme mit der Fähigkeit zum Ausführen geschützter Programme) unterstützen, die in dem Hauptspeicher 304 und/oder Massenspeichervorrichtung 308 gespeichert sind und von dem Prozessor 310 ausgeführt werden, um spezifische Aktivitäten sogar bei Vorhandensein einer anderen feindlichen Software in dem System auszuführen. Einige dieser vertrauenswürdigen Softwaremodule erfordern einen gleichermaßen „vertrauenswürdigen” geschützten Zugang nicht nur zu anderen Plattformen, sondern auch zu einer oder mehreren Vorrichtungen innerhalb der gleichen Plattform, wie zum Beispiel der Grafiksteuerung 314. Im allgemeinen erfordert solch ein Zugang, daß das vertrauenswürdige Softwaremodul die Fähigkeiten und/oder spezifische Identität der Vorrichtung identifizieren und dann eine verschlüsselte Sitzung mit der Vorrichtung einrichten kann, um den Austausch von Daten zu ermöglichen, die von einer anderen Software in dem System nicht ausspioniert oder verfälscht werden können.
  • Ein Verfahren des Standes der Technik sowohl zum Identifizieren der Vorrichtung als auch zum gleichzeitigen Erstellen der verschlüsselten Sitzung ist die Benutzung eines einseitig authentisierten Diffie-Helman(DH)-Schlüsselaustauschprozesses. In diesem Prozeß wird der Vorrichtung ein einmaliges öffentliches/privates RSA- oder ECC-Schlüsselpaar zugewiesen. Die Vorrichtung enthält den privaten Schlüssel und schützt ihn, während der öffentliche Schlüssel zusammen mit Authentifizierungszertifikaten an das Softwaremodul freigegeben werden kann. Während des DH-Schlüsselaustauschprozesses signiert die Vorrichtung eine Nachricht mittels ihres privaten Schlüssels, den das Softwaremodul mit Hilfe des entsprechenden öffentlichen Schlüssels verifizieren kann. Dies ermöglicht, daß das Softwaremodul authentisieren kann, daß die Nachricht tatsächlich aus der fraglichen Vorrichtung gekommen ist.
  • Da dieser Authentifizierungsprozeß jedoch RSA- oder ECC-Schlüssel benutzt, hat die Vorrichtung eine einmalige und nachweisbare Identität. Jedes beliebige Softwaremodul, das die Vorrichtung dazu bringen kann, um eine Nachricht mit ihrem privaten Schlüssel zu signieren, kann beweisen, daß diese spezifische einmalige Vorrichtung in dem Computersystem vorhanden ist. Da Vorrichtungen selten zwischen Verarbeitungssystemen wandern, stellt dies auch eine beweisbare eindeutige Computersystemidentität dar. Darüber hinaus repräsentiert der öffentliche Schlüssel der Vorrichtung selbst einen konstanten eindeutigen Wert; quasi einen permanenten „Cookie”. In manchen Fällen können diese Eigenschaften als ein bedeutendes Datenschutzproblem verstanden werden.
  • Ein alternativer Ansatz ist in der ebenfalls abhängigen Patentanmeldung mit Anmeldenummer 10/???,??? beschrieben, die am ?.?.2004 mit der Bezeichnung ”An Apparatus and Method for Establishing an Authenticated Encrypted Session with a Device Without Exposing Privacy-Sensitive Information” eingereicht und auf den Inhaber der vorliegenden Anmeldung übertragen wurde. In diesem Ansatz wird die Verwendung von RSA- oder ECC-Schlüsseln in dem einseitig authentisierten Diffie-Helman-Prozeß durch Direktbeweis-Schlüssel ersetzt. Eine Vorrichtung, welche diesen Ansatz anwendet, kann als zu einer spezifischen Familie von Vorrichtungen zugehörig authentisiert werden, was Zusicherungen über das Verhalten oder die Vertrauenswürdigkeit der Vorrichtung umfassen kann. Der Ansatz legt keinerlei eindeutig identifizierende Information offen, die benutzt werden könnte, um eine eindeutige Identität zu erstellen, die das Verarbeitungssystem repräsentiert.
  • Obwohl dieser Ansatz gut funktioniert, erfordert er zusätzlichen Speicher in der Vorrichtung, um den privaten Direktbeweis-Schlüssel zu halten, der größer als ein RSA- oder ECC-Schlüssel sein kann. Um die Probleme dieses zusätzlichen Speichererfordernisses abzuschwächen, definieren Ausführungsformen der vorliegenden Erfindung ein System und Verfahren zur Gewährleistung, daß die Vorrichtung den privaten Direktbeweis-Schlüssel aufweist, sie den Schlüssel benötigt, ohne im wesentlichen zusätzlichen Speicher in der Vorrichtung zu benötigen. In einer Ausführungsform werden die DP-Schlüssel dem Client-Computersystem in signierten Gruppen geliefert.
  • In mindestens einer Ausführungsform der vorliegenden Erfindung speichert ein Vorrichtungshersteller nur eine pseudo-zufällige 128-Bit-Zahl in einer Vorrichtung, während die Vorrichtung auf dem Herstellungsband hergestellt wird, während ein viel größerer privater Direktbeweis-Schlüssel (DPpri) verschlüsselt und mit Hilfe einer Verteilungs-CD bereitgestellt werden kann. Andere Ausführungsformen können eine Zahl in der Vorrichtung speichern, die länger oder kürzer als 128 Bit ist. Dieser Prozeß gewährleistet, daß nur eine bestimmte Vorrichtung ihren zugewiesenen DPpri-Schlüssel entschlüsseln und benutzen kann.
  • In mindestens einer Ausführungsform der vorliegenden Erfindung können verschlüsselte DPpri-Datenstrukturen, die „Schlüssel-Blobs” genannt werden, in Gruppenverzeichnissen geliefert werden, die von einem Vorrichtungshersteller signiert werden. Das gesamte Gruppenverzeichnis muß zur Vorrichtung geliefert werden, die nur ihren eigenen verschlüsselten Schlüssel-Blob extrahiert. Ein Angreifer kann basierend auf der zeitlichen Abstimmung von Angriffen nicht folgern, welcher Schlüssel-Blob ausgewählt wurde, da die Vorrichtung das gesamte Verzeichnis syntaktisch analysieren muß und mit der Verarbeitung des extrahierten Schlüssel-Blobs nicht beginnen darf, bis das gesamte Verzeichnis syntaktisch analysiert worden ist. Durch Signieren des Verzeichnisses und Fordern, daß die Vorrichtung die Signatur vor der Verarbeitung ihres Schlüssel-Blobs verifiziert, kann gewährleistet werden, daß ein Angreifer zur Prüfung der Antwort der Vorrichtung keine Mehrfachkopien eines einzigen Schlüssel-Blobs liefern kann. In einer Ausführungsform kann ein Angreifer bestenfalls bestimmen, daß die Vorrichtung ein Mitglied der Gruppe ist. In einer Ausführungsform speichert die Vorrichtung einen pseudo-zufälligen Wert einer vorbestimmten Größe (zum Beispiel 128 Bit), einen Gruppenidentifikator (zum Beispiel 4 Byte) und einen 20-Byte-Streuwert (Hash) des öffentlichen Gruppenschlüssels des Vorrichtungsherstellers für eine Gesamtanzahl von etwa 40 Datenbytes.
  • 5 ist ein Diagramm eines Systems zum Verteilen von Direktbeweis-Schlüsseln in signierten Gruppen gemäß einer Ausführungsform der vorliegenden Erfindung. Es gibt drei Entitäten in diesem System, ein geschütztes Vorrichtungsherstellungssystem 502, ein Vorrichtungsherstellungs-Produktionssystem 503 und ein Client-Computersystem 504. Das geschützte Vorrichtungsherstellungssystem umfaßt ein Verarbeitungssystem, das in dem Aufbauprozeß vor der Herstellung einer Vorrichtung 506 benutzt wird. Das geschützte System 502 kann von einem Vorrichtungshersteller oder einer anderen Entität derart betrieben werden, daß das geschützte System vor Angriffen von Hackern außerhalb des Vorrichtungsherstellungsortes geschützt wird (zum Beispiel ein geschlossenes System ist). Das Herstellungsproduktionssystem 503 kann bei der Herstellung der Vorrichtungen benutzt werden. In einer Ausführungsform können das geschützte System und das Produktionssystem das gleiche System sein. Die Vorrichtung 506 umfaßt jede beliebige Hardwarevorrichtung zur Einbeziehung in das Client-Computersystem (zum Beispiel eine Speichersteuerung, eine periphere Vorrichtung wie eine Grafiksteuerung, eine I/O-Vorrichtung, andere Vorrichtungen usw.). In Ausführungsformen der vorliegenden Erfindung umfaßt die Vorrichtung einen pseudo-zufälligen Wert RAND 508 und eine Gruppenzahl 509, die in einem nichtflüchtigen Speicher der Vorrichtung gespeichert ist.
  • Das geschützte Herstellungssystem weist eine geschützte Datenbank 510 und eine Erzeugungsfunktion 512 auf. Die geschützte Datenbank umfaßt eine Datenstruktur zum Speichern einer Vielzahl pseudo-zufälliger Werte (mindestens einen pro herzustellender Vorrichtung), die durch die Erzeugungsfunktion 512 in einer unten beschriebenen Weise erzeugt werden. Die Erzeugungsfunktion umfaßt eine Logik (entweder in Software oder Hardware umgesetzt), um eine Datenstruktur zu erzeugen, die hierin als ein Schlüssel-Blob 514 bezeichnet wird. Das Schlüssel-Blob 514 umfaßt mindestens drei Datenelemente. Ein einmaliger privater Direktbeweis-Schlüssel (DPpri) umfaßt einen kryptographischen Schlüssel, der von einer Vorrichtung zum Signieren benutzt werden kann. Die private DP-Übersicht 516 (DPpri-Übersicht) umfaßt eine Nachrichtenübersicht von DPpri gemäß jedem beliebigen gut bekannten Verfahren zum Erzeugen einer sicheren Nachrichtenübersicht, wie beispielsweise SHA-1. Einige Ausführungsformen können einen pseudo-zufälligen Initialisierungsvektor (IV) 518 aufweisen, der zu Kompatibilitätszwecken einen Bitstrom als Teil des Schlüssel-Blobs umfaßt. Wenn eine Stromchiffrierung zur Verschlüsselung benutzt wird, dann wird der IV in einem gut bekannten Verfahren zur Verwendung eines IV in einem Stromchiffrierverfahren benutzt. Wenn eine Blockchiffrierung zur Verschlüsselung benutzt wird, dann wird der IV als Teil der zu verschlüsselnden Nachricht benutzt, wodurch jedes Exemplar der Verschlüsselung anders gemacht wird.
  • In Ausführungsformen der vorliegenden Erfindung erzeugt das geschützte Herstellungssystem einen oder mehrere Schlüssel-Blobs (wie nachstehend ausführlich beschrieben) und speichert die Schlüssel-Blobs in den Gruppenverzeichnissen 515 in einer Schlüssel-Blob-Datenbank 520 auf einer CD 522. In einer Ausführungsform kann es in jedem Gruppenverzeichnis viele Schlüssel-Blobs und viele Gruppenverzeichnisse auf einer einzigen CD in jeder beliebigen Kombination geben, wobei die einzige Einschränkung die physikalische Speichergrenze der CD ist. Folglich umfaßt jedes Gruppenverzeichnis mehrere Schlüssel-Blobs. Die CD wird dann durch typische physikalische Kanäle an Computersystemhersteller, Computervertreiber, Client-Computersystem-Verbraucher und andere verteilt. Wenngleich eine CD hierin als Speicherme dium beschrieben wird, kann jedes beliebige geeignete entfernbare Speichermedium (zum Beispiel eine digitale vielseitige Platte (DVD) oder anderes Medium) benutzt werden.
  • Ein Client-Computersystem 504, das die Verwendung eines Direktbeweis-Protokolls zur Authentifizierung und zum Schlüsselaustausch einer Kommunikationssitzung mit der Vorrichtung 506 wünscht, die innerhalb des Systems 504 enthalten ist, kann ein ausgewähltes Gruppenverzeichnis 515 aus der Schlüssel-Blob-Datenbank 520 auf der CD lesen, sobald die CD in ein CDROM-Laufwerk (nicht dargestellt) des Client-Computersystems eingelegt ist. Die Schlüssel-Blob-Daten können von dem Gruppenverzeichnis erhalten und von der Vorrichtung benutzt werden, um einen lokalisierten Schlüssel-Blob 524 (wie unten beschrieben) zum Gebrauch bei der Implementierung des Direktbeweis-Protokolls zu erzeugen. In Ausführungsformen der vorliegenden Erfindung wird ein gesamtes Gruppenverzeichnis, das mehrere Schlüssel-Blobs umfaßt, von der Vorrichtung auf einmal verarbeitet, wobei ein Angreifer nicht bestimmen kann, welches spezifische Schlüssel-Blob derzeit benutzt wird, um den verschlüsselten lokalisierten Schlüssel-Blob zu erzeugen. Die Vorrichtungstreibersoftware 526 wird von dem Client-Computersystem ausgeführt, um die Vorrichtung 506 zu starten und zu steuern.
  • In Ausführungsformen der vorliegenden Erfindung kann es vier unterschiedliche Betriebsstufen geben. 6 ist ein Flußdiagramm, das die Schritte eines Verfahrens zum Verteilen von Direktbeweis-Schlüsseln gemäß einer Ausführungsform der vorliegenden Erfindung darstellt. Gemäß Ausführungsformen der vorliegenden Erfindung können bei jedem Schritt bestimmte Funktionen ausgeführt werden. An einem Vorrichtungsherstellungsort gibt es mindestens zwei Stufen: die Aufbaustufe 602 und die Herstellungsproduktionsstufe 604. Die Aufbaustufe wird hierin mit Bezug auf 7 beschrieben. Die Herstellungsproduktionsstufe wird hierin mit Bezug auf 8 beschrieben. An einem Verbraucherort, an dem sich das Client-Computersystem befindet, gibt es mindestens zwei Stufen: die Aufbaustufe 606 und die Benutzungsstufe 608. Die Aufbaustufe des Client-Computersystems wird hierin mit Bezug auf 9 beschrieben. Die Benutzungsstufe des Client-Computersystems wird hierin mit Bezug auf 10 beschrieben.
  • 7 und 8 sind Flußdiagramme 700 und 800, die eine Herstellungsaufbauverarbeitung der Vorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung darstellen. In einer Ausführungsform kann ein Vorrichtungshersteller diese Handlungen mit Hilfe eines geschützten Herstellungssystems 502 ausführen. Bei Block 701 erzeugt der Vorrichtungshersteller ein Direktbeweis-Familienschlüsselpaar (Fpub und Fpri) für jede Klasse von herzustellenden Vorrichtungen. Jede einmalige Vorrichtung weist einen entsprechenden DPpri-Schlüssel auf, so daß eine Signatur, die mit Hilfe des DPpri erzeugt wird, von dem Fpub verifiziert werden kann. Eine Vorrichtungsklasse kann basierend auf der Versionsnummer oder anderen Eigenschaften der Vorrichtungen jeden beliebigen Satz oder untergeordneten Satz von Vorrichtungen wie eine ausgewählte Produktlinie (das heißt, Vorrichtungsart) oder untergeordnete Sätze einer Produktlinie umfassen. Das Familienschlüsselpaar dient dem Gebrauch der Vorrichtungsklasse, für welche es erzeugt wurde.
  • Bei Block 702 erzeugt der Vorrichtungshersteller ein RSA-Schlüsselpaar (Gpri, Gpub), das zum Signieren und Verifizieren des Gruppenverzeichnisses benutzt wird. In anderen Ausführungsformen kann statt RSA jedes beliebige digitale Signatursystem benutzt werden. Dieses Schlüsselpaar ist unabhängig von dem Familienschlüsselpaar, das in Block 701 erzeugt wird, und kann für alle Vorrichtungsgruppierungen benutzt werden, die von dem Vorrichtungshersteller erzeugt werden. Bei Block 703 wählt der Vorrichtungshersteller eine gewünschte Gruppengröße aus. Die Gruppengröße kann die Anzahl von Vorrichtungen in der Familie sein, die gruppiert wird. Die Gruppengröße wird groß genug ausgewählt, so daß sich eine einzelne Vorrichtung innerhalb der Gruppe „verstecken” kann, jedoch nicht so groß, daß während der Schlüssel-Blob-Extraktionsverarbeitung von der Vorrichtung unangemessen viel Zeit verbraucht wird. In einer Ausführungsform kann die Gruppengröße mit 5.000 Vorrichtungen ausgewählt werden. In anderen Ausführungsformen können andere Größen benutzt werden.
  • Der Vorrichtungshersteller kann dann die Anzahl von Vorrichtungsschlüsseln erzeugen, die von der Gruppengröße spezifiziert wird. Jeder Gruppe mit einer Anzahl von Vorrichtungen, die von der Gruppengröße spezifiziert wird, kann mit einer Gruppenzahl bezeichnet werden. Für jede Vorrichtung, die für eine gegebene Gruppe herzustellen ist, können die Erzeugungsfunktion 512 oder anderen Module des geschützten Herstellungssystems 502 die Blöcke 704 aus 7 bis 802 aus 8 ausführen. Zuerst erzeugt die Erzeugungsfunktion bei Block 704 einen einmaligen pseudo-zufälligen Wert (RAND) 508. In einer Ausführungsform beträgt die Länge des RAND 128 Bit. In anderen Ausführungsformen können andere Werte benutzt werden. In einer Ausführungsform können die pseudo-zufälligen Werte für eine Anzahl von Vorrichtungen im Vorfeld erzeugt werden. Bei Block 706 erzeugt die Erzeugungsfunktion mit Hilfe einer Einwegfunktion f, die von der Vorrichtung unterstützt wird, einen symmetrischen Verschlüsse lungsschlüssel SKEY aus dem eindeutigen RAND-Wert (SKEY = f(RAND). Die Einwegfunktion kann ein beliebiger bekannter Algorithmus sein, der zu diesem Zweck geeignet ist (zum Beispiel SHA-1, MGF1, Datenverschlüsselungsstandard (DES), Dreifach-DES usw.). Bei Block 708 erzeugt die Erzeugungsfunktion ein Identifikator(ID)-Etikett, das benutzt wird, um das Schlüssel-Blob 515 dieser Vorrichtung auf der Verteilungs-CD zu referenzieren, indem der SKEY benutzt wird, um einen „Nulleintrag” (zum Beispiel eine kleine Anzahl von Nullbytes) (Vorrichtungs-ID = Verschlüsseln von (0..0) mit Hilfe von SKEY zu verschlüsseln. In anderen Ausführungsformen können andere Art und Weisen zum Erzeugen der Vorrichtungs-ID benutzt werden oder andere Werte können von dem SKEY verschlüsselt werden.
  • Danach erzeugt die Erzeugungsfunktion in Block 710 den privaten DP-Signierschlüssel, der mit dem öffentlichen Familienschlüssel (Fpub) der Vorrichtung in Beziehung steht. Bei Block 712 hashed die Erzeugungsfunktion DPpri, um ein DPpri-Digest mittels bekannter Verfahren (zum Beispiel mittels SHA-1 oder einem anderen Hash-Algorithmus) zu erzeugen. Bei Block 714 bildet die Erzeugungsfunktion eine Schlüssel-Blob-Datenstruktur für die Vorrichtung. Das Schlüssel-Blob weist mindestens DPpri und den DPpri-Digest auf. In einer Ausführungsform weist das Schlüssel-Blob auch einen zufälligen Initialisierungsvektor (IV) auf, der mehrere pseudo-zufällig erzeugte Bits aufweist. Diese Werte können unter Verwendung von SKEY verschlüsselt werden, um ein verschlüsseltes Schlüssel-Blob 514 zu erzeugen. Bei Block 716 können die in Block 708 erzeugte Vorrichtungs-ID und das in Block 714 erzeugte verschlüsselte Schlüssel-Blob 514 in einem Verzeichnis in der Schlüssel-Blob-Datenbank 520 gespeichert und auf der Verteilungs-CD 522 freigegeben werden. In einer Ausführungsform kann das Verzeichnis in der Schlüssel-Blob-Datenbank mit der Vorrichtungs-ID gekennzeichnet werden.
  • Die Verarbeitung geht bei Block 801 in 8 weiter. In Block 801 können der derzeitige RAND-Wert und die derzeitige Gruppenzahl für die Gruppe, zu der die Vorrichtung gehört, in der geschützten Datenbank 510 gespeichert werden. In Block 802 können der SKEY und DPpri gelöscht werden, da sie von der Vorrichtung in dem Feld erneut erzeugt werden. Die Gruppenzahl kann für jede nachfolgende Gruppe von hergestellten Vorrichtungen erhöht werden. Die Erschaffung des DPpri-Digest und die nachfolgende Verschlüsselung durch den SKEY sind derart gestaltet, daß die Inhalte des DPpri von keiner Entität bestimmt werden können, die nicht im Besitz des SKEY ist, und derart, daß die Inhalte des Schlüssel-Blobs von keiner Entität modifiziert werden können, die nicht im Besitz des SKEY ist, ohne danach von einer Entität erfasst zu werden, die in Besitz des SKEY ist. In anderen Ausführungsformen können andere Verfahren zum Bereitstellen dieses Datenschutzes und Integritätsschutzes angewendet werden. In einigen Ausführungsformen kann der Integritätsschutz nicht erforderlich sein und es könnte ein Verfahren, das nur den Datenschutz bereitstellt, angewendet werden. In diesem Fall wäre der Wert des DPpri-Digest nicht notwendig.
  • Wenn der gesamte Datensatz von Schlüssel-Blobs für eine Gruppe von Vorrichtungen erzeugt worden ist, kann zumindest die Schlüssel-Blob-Datenbank 520 dieser Gruppe signiert und auf eine gewöhnliche Verteilungs-CD gebrannt werden, die mit der jeweiligen Vorrichtung vertrieben wird (in einer Ausführungsform kann ein Eintrag der Schlüssel-Blob-Datenbank für jede Vorrichtung benutzt werden, die von dem Vorrichtungs-ID-Feld indexiert wird). Folglich erzeugt der Vorrichtungshersteller bei Block 804 ein Gruppenverzeichnis 515. Das Gruppenverzeichnis umfaßt die Gruppenzahl, den öffentlichen Gruppenschlüssel Gpub, die Gruppengröße und die Schlüssel-Blob-Verzeichnisse der gesamten Gruppe (<Group Number, Gpub, Group Size, <Device ID1, Encrypted Keyblob1>, <Device ID2, Encrypted Keyblob2>, ...>). Bei Block 806 signiert der Vorrichtungshersteller das Gruppenverzeichnis mit Hilfe des privaten Gruppenschlüssels Gpri und hängt die digitale Signatur an das Gruppenverzeichnis an. In Block 808 kann das signierte Gruppenverzeichnis zu der Schlüssel-Blob-Datenbank auf der Verteilungs-CD hinzugefügt werden. In einer Ausführungsform umfaßt die Verteilungs-CD auch ein Schlüsselabruf-Utility-Softwaremodul zur zukünftigen Verarbeitung auf dem Client-Computersystem, dessen Benutzung nachstehend ausführlicher beschrieben wird.
  • Zu jedem beliebigen Zeitpunkt nach Block 802 kann die geschützte Datenbank von RAND- und Gruppenzahl-Wertpaaren sicher auf das Herstellungsproduktionssystem 503 hochgeladen werden, das die RAND- und Gruppenzahl-Werte während des Herstellungsprozesses in den Vorrichtungen speichert. Sobald dieser Upload verifiziert worden ist, können die RAND-Werte aus dem geschützten Herstellungssystem 502 sicher gelöscht werden.
  • 9 ist ein Flußdiagramm 900, das eine Herstellungsproduktionsverarbeitung der Vorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung darstellt. Während die Vorrichtungen in einer Produktionslinie hergestellt werden, wählt das Herstellungsproduktionssystem bei Block 902 ein unbenutztes RAND- und Gruppenzahl-Wertepaar aus der geschützten Datenbank aus. Der ausgewählte RAND- und Gruppenzahl-Wert kann dann in dem nichtflüchtigen Speicher in einer Vorrichtung gespeichert werden. In einer Ausführungsform umfaßt der nichtflüchtige Speicher ein TPM. In Block 904 kann ein Streuwert des öffentlichen Gruppenschlüssels Gpub auch in dem nichtflüchtigen Speicher der Vorrichtung gespeichert werden. In Block 906 zerstört das Herstellungsproduktionssystem sämtliche Aufzeichnungen des RAND-Wertes dieser Vorrichtung in der geschützten Datenbank, sobald die Speicherung des RAND-Wertes in der Vorrichtung erfolgreich ist. An diesem Punkt wird die einzige Kopie des RAND-Wertes in der Vorrichtung gespeichert.
  • In einer alternativen Ausführungsform kann der RAND-Wert während der Herstellung einer Vorrichtung erzeugt und danach an das geschützte Herstellungssystem für die Berechnung eines Schlüssel-Blobs gesendet werden.
  • In einer anderen Vorrichtung kann der RAND-Wert auf der Vorrichtung erzeugt werden und die Vorrichtung und das geschützte Herstellungssystem können in ein Protokoll verknüpft sein, um den DPpri-Schlüssel mit Hilfe eines Verfahrens zu erzeugen, das den DPpri-Schlüssel außerhalb der Vorrichtung nicht enthüllt. Dann kann die Vorrichtung die Vorrichtungs-ID, den SKEY und den Schlüssel-Blob erzeugen. Die Vorrichtung leitet die Vorrichtungs-ID und den Schlüssel-Blob an das Herstellungssystem zur Speicherung in der geschützten Datenbank 510 weiter. In diesem Verfahren weist das Herstellungssystem am Ende die gleiche Information (Vorrichtungs-ID, Schlüssel-Blob) in der geschützten Datenbank auf, kennt jedoch nicht die Werte von RAND oder von DPpri.
  • 10 und 11 sind Flußdiagramme 1000 und 1100 einer Aufbauverarbeitung eines Client-Computersystems gemäß einer Ausführungsform der vorliegenden Erfindung. Ein Client-Computersystem kann diese Handlungen als Teil des Hochfahrens des Systems ausführen. Bei Block 1002 kann das Client-Computersystem auf normale Weise hochgefahren werden und ein Vorrichtungstreiber 526 für die Vorrichtung kann in den Hauptspeicher geladen werden. Wenn der Vorrichtungstreiber initialisiert wird und mit der Ausführung beginnt, bestimmt der Vorrichtungstreiber bei Block 1004, ob in der Massenspeichervorrichtung 308 für die Vorrichtung 506 bereits ein verschlüsseltes lokalisiertes Schlüssel-Blob 524 gespeichert ist. Falls ja, muß keine weitere Aufbauverarbeitung ausgeführt werden und die Aufbauverarbeitung endet bei Block 1006. Falls nicht, geht die Verarbeitung in Block 1008 weiter. In Block 1008 veranlasst der Vorrichtungstreiber die Anzeige einer Nachricht für den Benutzer des Client-Computersystems, in der dieser zum Einlegen der Verteilungs-CD 522 aufgefordert wird. Sobald die CD von dem Computersystem gelesen wird, startet der Vorrichtungstreiber das Schlüsselabruf-Utility-Softwaremodul (in 5 nicht dargestellt), das auf der CD gespeichert ist. Die Schlüsselabruf-Utility fragt die Vorrichtung nach ihrer Gruppen-ID, die der Streuwert des öffentlichen Gruppenschlüssels Gpub sein kann, und nach der Gruppenzahl 509. Die Vorrichtung sendet diese Werte zurück, welche die Utility benutzt, um das richtig signierte Gruppenverzeichnis aus der Schlüssel-Blob-Datenbank auf der CD zu finden. Diese Utility erteilt der Vorrichtung 506 auch einen Schlüsselerfassungsbefehl, um den Prozeß zur Erfassung eines privaten DP-Schlüssels der Vorrichtung zu initiieren.
  • Daraufhin benutzt die Vorrichtung in Block 1010 ihre Einwegfunktion f, um den symmetrischen Schlüssel SKEY (nun zur Verwendung bei der Entschlüsselung) aus dem eingebetteten RAND-Wert 508 (SKEY = f(RAND)) erneut zu erzeugen. Bei Block 1012 erzeugt die Vorrichtung dann ihr eindeutiges Vorrichtungs-ID-Etikett, indem sie den SKEY zum Verschlüsseln eines „Nulleintrags” (zum Beispiel einer kleinen Anzahl von Nullbytes) (Vorrichtung-ID = Verschlüsseln (0..0) mit Hilfe des SKEY) benutzt. In einer Ausführungsform der vorliegenden Erfindung kann keiner dieser Werte außerhalb der Vorrichtung enthüllt werden. Die Vorrichtung signalisiert dann ihre Bereitschaft zum Fortschreiten.
  • Bei Block 1014 durchsucht die Schlüsselabruf-Utility die Schlüssel-Blob-Datenbank 520 auf der CD nach dem Gruppenverzeichnis, das die passende Gruppenzahl enthält, extrahiert das Gruppenverzeichnis und transferiert das gesamte Gruppenverzeichnis an die Vorrichtung.
  • Bei Block 1016 analysiert die Vorrichtung das gesamte gelieferte Gruppenverzeichnis syntaktisch, bewahrt jedoch nur die Gruppenzahl, den Streuwert des Gruppenverzeichnisses, den öffentlichen Gruppenschlüssel Gpub und das erste Feld <Device ID, Encrypted Keyblob>, das mit der eigenen Vorrichtungs-ID der Vorrichtung (die in Block 1012 erzeugt wird) übereinstimmt. Bei Block 1018 verifiziert die Vorrichtung nun das Gruppenverzeichnis. In einer Ausführungsform vergleicht die Vorrichtung das extrahierte Gruppennummernfeld mit der Gruppenzahl, die in der Vorrichtung eingebettet ist. Wenn sie nicht übereinstimmen, kann der Schlüsselerfassungsprozeß beendet werden. Falls nicht, hashed die Vorrichtung das extrahierte Gpub-Feld und vergleicht es mit dem Gpub-Hash in der Vorrichtung. Wenn die Hashes nicht übereinstimmen, kann der Schlüsselerfassungsprozeß beendet werden. Falls nicht, benutzt die Vorrichtung den validierten Gpub-Schlüssel, um die bereitgestellte Signatur auf dem Streuwert des Gruppenverzeichnisses zu verifizieren. Wenn die Signatur verifiziert ist, ist das Gruppenverzeichnis verifiziert und der Prozeß geht in Block 1120 von 11 weiter.
  • Wenn in einer Ausführungsform eine Rogue-Software versucht, einen Schlüsselerfassungsbefehl an die Vorrichtung zu senden, nachdem die Vorrichtung das Schlüssel-Blob hat, antwortet die Vorrichtung nicht auf die Rogue-Software mit der Gruppenzahl. Statt dessen antwortet die Vorrichtung mit einer Fehleranzeige. Wenn die Vorrichtung Zugang zu einem lokalisierten Schlüssel-Blob hat, dann wird die Funktionalität des Schlüsselerfassungsbefehls in der Tat deaktiviert. Folglich enthüllt die Vorrichtung die Gruppenzahl nicht, außer wenn sie das Schlüssel-Blob nicht aufweist.
  • Bei Block 1120 entschlüsselt die Vorrichtung das verschlüsselte Schlüssel-Blob mit Hilfe des symmetrischen Schlüssels SKEY, um DPpri und den DPpri-Digest zu liefern, und speichert diese Werte in ihrem nichtflüchtigen Speicher (Entschlüsseltes Schlüssel-Blob = Entschlüsseln (IV, DPpri, DPpri-Digest mittels SKEY). Der Initialisierungsvektor (IV) kann verworfen werden. Bei Block 1122 überprüft die Vorrichtung dann die Integrität des DPpri durch Hashen des DPpri und Vergleichen des Ergebnisses mit dem DPpri-Digest. Wenn der Vergleich positiv ist, akzeptiert die Vorrichtung DPpri als ihren gültigen Schlüssel. Die Vorrichtung kann auch ein Schlüssel-Erfaßt-Flag als wahr setzen, um anzuzeigen, daß der private DP-Schlüssel erfolgreich erfaßt worden ist. Bei Block 1124 wählt die Vorrichtung einen neuen IV und erzeugt ein neues verschlüsseltes lokalisiertes Schlüssel-Blob mit Hilfe des neuen IV (Lokalisiertes Schlüssel-Blob = Verschlüsseln (IV2, DPpri, DPpri-Digest) mittels SKEY). Das neue verschlüsselte lokalisierte Schlüssel-Blob kann zur Schlüsselabruf-Utility zurückgesendet werden. Bei Block 1126 speichert die Schlüsselabruf-Utility das verschlüsselte, lokalisierte Schlüssel-Blob in dem Speicher innerhalb des Client-Computersystems (wie zum Beispiel einer Massenspeichervorrichtung 308). Der DPpri der Vorrichtung wird nun in dem Client-Computersystem sicher gespeichert.
  • Sobald die Vorrichtung den DPpri während der Aufbauverarbeitung erfaßt hat, kann die Vorrichtung den DPpri benutzen. 12 ist ein Flußdiagramm, das die Verarbeitung eines Client-Computersystems gemäß einer Ausführungsform der vorliegenden Erfindung darstellt. Das Client-Computersystem kann diese Handlungen zu jeder Zeit nach Abschluß des Setups ausführen. Bei Block 1202 kann das Client-Computersystem normal hochgefahren werden und ein Vorrichtungstreiber 526 für die Vorrichtung kann in den Hauptspeicher geladen werden. Wenn der Vorrichtungstreiber gestartet wird und mit der Ausführung beginnt, bestimmt der Vorrichtungstreiber, ob in der Massenspeichervorrichtung 308 für die Vorrichtung 506 bereits ein verschlüsseltes lokalisiertes Schlüssel-Blob 524 gespeichert ist. Falls nicht, wird die Setup- Verarbeitung aus 10 und 11 ausgeführt. Wenn ein verschlüsseltes lokalisiertes Schlüssel-Blob für diese Vorrichtung verfügbar ist, geht die Verarbeitung in Block 1206 weiter. Bei Block 1206 ruft der Vorrichtungstreiber das verschlüsselte lokalisierte Schlüssel-Blob ab und transferiert das Schlüssel-Blob an die Vorrichtung. In einer Ausführungsform kann der Transfer des Schlüssel-Blobs durch Ausführen eines Schlüssel-Blob-Ladebefehls erreicht werden.
  • Die Vorrichtung benutzt in Block 1208 ihre Einwegfunktion f, um den symmetrischen Schlüssel SKEY (nun zur Verwendung bei der Entschlüsselung) aus dem eingebetteten RAND-Wert 508 (SKEY = f(RAND)) erneut zu erzeugen. Bei Block 1210 entschlüsselt die Vorrichtung das verschlüsselte Schlüssel-Blob mit Hilfe des symmetrischen Schlüssels SKEY, um DPpri und den DPpri-Digest zu liefern, und speichert diese Werte in ihrem nichtflüchtigen Speicher (Entschlüsseltes Schlüssel-Blob = Entschlüsseln (IV, DPpri, DPpri-Digest mittels SKEY). Der zweite Initialisierungsvektor (IV2) kann verworfen werden. Bei Block 1212 überprüft die Vorrichtung dann die Integrität von DPpri durch Hashen von DPpri und Vergleichen des Ergebnisses mit dem DPpri-Digest. Wenn der Vergleich positiv ist (zum Beispiel die Digests übereinstimmen), akzeptiert die Vorrichtung den DPpri als den vorher erfaßten gültigen Schlüssel und aktiviert ihn zur Benutzung. Die Vorrichtung kann auch ein Schlüssel-Erfaßt-Flag als wahr setzen, um anzuzeigen, daß der private DP-Schlüssel erfolgreich erfaßt worden ist. Bei Block 1214 wählt die Vorrichtung wieder einen anderen IV und erzeugt ein neues verschlüsseltes lokalisiertes Schlüssel-Blob mit Hilfe des neuen IV (Lokalisiertes Schlüssel-Blob = Verschlüsseln (IV3, DPpri, DPpri-Digest) mittels SKEY). Das neue verschlüsselte lokalisierte Schlüssel-Blob kann zur Schlüsselabruf-Utility zurückgesendet werden. Bei Block 1216 speichert die Schlüsselabruf-Utility das verschlüsselte, lokalisierte Schlüssel-Blob in dem Speicher innerhalb des Client-Computersystems (wie zum Beispiel einer Massenspeichervorrichtung 308). Der DPpri der Vorrichtung wird nun erneut in dem Client-Computersystem sicher gespeichert.
  • In einer Ausführungsform der vorliegenden Erfindung ist es nicht notwenig, alle privaten DP-Schlüssel der Vorrichtung für die signierten Gruppen auf einmal zu erzeugen. Unter der Annahme, daß die Verteilungs-CD regelmäßig aktualisiert wird, könnten die privaten DP-Schlüssel der Vorrichtung je nach Bedarf in Bündeln erzeugt werden. Immer wenn die Verteilungs-CD „gebrannt” wird, enthält sie die signierten Gruppen für die Schlüssel-Blob-Datenbank, die bisher erzeugt worden ist, einschließlich derjenigen Vorrichtungsschlüssel, die erzeugt, jedoch den Vorrichtungen noch nicht zugewiesen worden sind.
  • Wenn das gesamte Gruppenverzeichnis in einer Ausführungsform in Block 1018 aus 10 verarbeitet wird, kann die Vorrichtung im Falle einer Fehlererkennung ein Flag setzen, das anzeigt, daß der Fehler aufgetreten ist, sollte jedoch mit der Verarbeitung fortfahren. Wenn alle Schritte für den System-Setup vollendet worden sind, kann die Vorrichtung dem Vorrichtungstreiber den Fehler signalisieren. Dies kann einen Angreifer daran hindern, Information aus der Art und dem Ort des Fehlers zu erhalten.
  • In einer Ausführungsform können die hierin beschriebenen Verfahren etwa 40 Byte an nichtflüchtigem Speicher in der Vorrichtung benutzen. In einer anderen Ausführungsform kann dieser auf etwa 20 Byte reduziert werden, wenn der Gpub-Schlüssel-Hash in dem verschlüsselten Schlüssel-Blob der Vorrichtung enthalten und nicht in dem nichtflüchtigen Speicher auf der Vorrichtung gespeichert ist. Wenn die Vorrichtung das verschlüsselte Schlüssel-Blob entschlüsselt, kann die Vorrichtung in diesem Fall den Gpub-Hash abrufen, den Hash zum Überprüfen des Gpub-Schlüssels benutzen und den Gpub-Schlüssel zum Überprüfen der Signatur auf dem gesamten Gruppenverzeichnis benutzen.
  • Obwohl die hierin erläuterten Vorgänge als ein sequentieller Prozeß beschrieben werden können, können einige der Vorgänge in der Tat parallel oder gleichzeitig ausgeführt werden. Außerdem kann die Reihenfolge der Vorgänge in einigen Ausführungsformen neu angeordnet werden, ohne von dem Geist der Erfindung abzuweichen.
  • Die hierin beschriebenen Techniken sind nicht auf eine bestimmte Hardware- oder Softwarekonfiguration eingeschränkt; sie können in jeder beliebigen Rechen- oder Verarbeitungsumgebung Anwendung finden. Die Techniken können in Hardware, Software oder einer Kombination der beiden umgesetzt werden. Die Techniken können in Programmen, die auf programmierbaren Maschinen wie mobilen oder stationären Computer, persönlichen digitalen Assistenten, Set-Top-Boxes, Mobiltelefonen und Funkrufempfängern und anderen elektronischen Vorrichtungen ausgeführt werden, die jeweils einen Prozessor, ein Speichermedium, das von dem Prozessor gelesen werden kann (einschließlich eines flüchtigen und nichtflüchtigen Speichers und/oder Speicherelementen), mindestens eine Eingabevorrichtung und eine oder mehrere Ausgabevorrichtungen aufweisen. Ein Programmcode wird auf die Daten angewendet, die mit Hilfe der Eingabevorrichtung eingegeben werden, um die beschriebenen Funktionen auszuführen und Ausgabeinformation zu erzeugen. Die Ausgabeinformation kann auf eine oder mehrere Ausgabevorrichtungen angewendet werden. Der Durchschnittsfachmann versteht, daß die Erfindung mit verschiedenen Computersystemkonfigurationen umgesetzt werden kann, einschließlich Mehrprozessorsystemen, Minicomputern, Großrechnern und dergleichen. Die Erfindung kann auch in verteilten Rechenumgebungen umgesetzt werden, in denen Befehle von entfernten Verarbeitungsvorrichtungen ausgeführt werden, die durch ein Kommunikationsnetzwerk verbunden sind.
  • Jedes Programm kann in einer verfahrensorientierten oder Objekt-orientierten Programmiersprache auf hoher Ebene ausgeführt werden, um mit einem Verarbeitungssystem zu kommunizieren. Die Programme können jedoch je nach Wunsch in Assemblersprache oder Maschinensprache ausgeführt werden. In jedem Fall kann die Sprache kompiliert oder interpretiert werden.
  • Programmbefehle können benutzt werden, um zu bewirken, daß ein Universal- oder Spezialverarbeitungssystem, das mit den Befehlen programmiert ist, die hierin beschriebenen Vorgänge ausführt. Als Alternative können die Vorgänge durch spezifische Hardwarekomponenten ausgeführt werden, die eine festverdrahtete Logik zum Ausführen von Vorgängen enthalten, oder durch jede beliebige Kombination von programmierten Computerkomponenten und kundenspezifischen Hardwarekomponenten. Die hierin beschriebenen Verfahren können als ein Computerprogrammprodukt bereitgestellt werden, das ein maschinenlesbares Medium aufweisen kann, auf dem Befehle gespeichert sind, die zum Programmieren eines Verarbeitungssystems oder einer anderen elektronischen Vorrichtung zur Ausführung der Verfahren benutzt werden können. Der hierin verwendete Ausdruck ”maschinenlesbares Medium” soll jedes Medium einschließen, das eine Sequenz von Befehlen zur Ausführung durch die Maschine speichern oder verschlüsseln und bewirken kann, daß die Maschine jedes der hierin beschriebenen Verfahren ausführt. Der Ausdruck ”maschinenlesbares Medium” soll dementsprechend einschließen, jedoch nicht beschränkt sein auf Festspeicher, optische und magnetische Platten und eine Trägerwelle, die ein Datensignal verschlüsselt. Darüber hinaus wird im Stand der Technik im allgemeinen von einer Software in der einen oder anderen Form (zum Beispiel Programm, Prozedur, Prozeß, Anwendung, Modul, Logik und so weiter) gesprochen, wenn diese eine Handlung ausführt oder ein Ergebnis bewirkt. Solche Ausdrücke sind lediglich eine Kurzform zur Bezeichnung dessen, daß die Ausführung der Software von einem Verarbeitungssystem bewirkt, daß der Prozessor eine Handlung ausführt oder ein Ergebnis hervorbringt.
  • Wenngleich diese Erfindung mit Bezug auf die beispielhaften Ausführungsformen beschrieben worden ist, soll diese Beschreibung nicht in einschränkendem Sinne verstanden werden. Verschiedene Modifikationen der beispielhaften Ausführungsformen sowie andere Ausführungsformen der Erfindung, die für den Fachmann des Gebiets, zu dem die Erfindung gehört, offensichtlich sind, gelten als innerhalb des Geistes und des Schutzbereichs der Erfindung liegend.

Claims (45)

  1. Verfahren, umfassend: Erzeugen einer verschlüsselten Datenstruktur, die mit einer Vorrichtung assoziiert ist, wobei die verschlüsselte Datenstruktur einen privaten Schlüssel und ein privates Schlüssel-Digest umfaßt; Erzeugen (704) eines Identifikators, der auf einem pseudo-zufällig erzeugten Wert beruht, für die verschlüsselte Datenstruktur; Speichern (716) des Identifikators und der verschlüsselten Datenstruktur in einem signierten Gruppenverzeichnis auf einem entfernbaren Speichermedium; und Speichern des pseudo-zufälligen Wertes und einer Gruppenzahl, die dem signierten Gruppenverzeichnis entspricht, in einem nichtflüchtigen Speicher innerhalb der Vorrichtung.
  2. Verfahren nach Anspruch 1, ferner umfassend das Verteilen des entfernbaren Speichermediums und der Vorrichtung.
  3. Verfahren nach Anspruch 1, ferner umfassend das Erzeugen (701) eines Direktbeweis-Familienschlüsselpaars für eine Klasse von Vorrichtungen.
  4. Verfahren nach Anspruch 1, ferner umfassend das Erzeugen (702) eines Schlüsselpaars zum Signieren und Verifizieren des Gruppenverzeichnisses.
  5. Verfahren nach Anspruch 4, ferner umfassend das Speichern eines Hashs des öffentlichen Schlüssels des Gruppenverzeichnis-Schlüsselpaars in einem nichtflüchtigen Speicher der Vorrichtung.
  6. Verfahren nach Anspruch 1, ferner umfassend das Auswählen (703) einer Gruppengröße für das signierte Gruppenverzeichnis.
  7. Verfahren nach Anspruch 3, wobei der private Schlüssel einen privaten Direktbeweis-Schlüssel umfaßt, der mit einem öffentlichen Schlüssel des Direktbeweis-Familienschlüsselpaars assoziiert ist, und ferner umfassend das Hashen des privaten Direktbeweis-Schlüssels, um den privaten Schlüssel-Digest zu erzeugen.
  8. Verfahren nach Anspruch 1, ferner umfassend das Erzeugen (706) eines symmetrischen Schlüssels, der auf dem pseudo-zufälligen Wert für die Vorrichtung beruht.
  9. Verfahren nach Anspruch 8, wobei das Erzeugen des Identifikators das Verschlüsseln eines Datenwertes unter Verwendung des symmetrischen Schlüssels umfaßt.
  10. Verfahren nach Anspruch 8, ferner umfassend das Verschlüsseln der Datenstruktur unter Verwendung des symmetrischen Schlüssels.
  11. Verfahren nach Anspruch 1, wobei die verschlüsselte Datenstruktur ferner einen zufälligen Initialisierungsvektor umfaßt.
  12. Verfahren nach Anspruch 1, wobei das entfernbare Speichermedium mindestens eine von einer CD oder einer digitalen Videoplatte (DVD) umfaßt.
  13. Verfahren nach Anspruch 1, wobei der pseudo-zufällige Wert für die Vorrichtung eindeutig ist.
  14. Gegenstand, umfassend: ein erstes Speichermedium mit mehreren maschinenlesbaren Befehlen, wobei, wenn die Befehle von einem Prozessor ausgeführt werden, die Befehle die Lieferung privater Schlüssel in signierten Gruppen an Vorrichtungen bereitstellen, durch Erzeugen einer verschlüsselten Datenstruktur, die mit einer Vorrichtung assoziiert ist, wobei die verschlüsselte Datenstruktur einen privaten Schlüssel und ein privates Schlüssel-Digest umfaßt; Erzeugen (704) eines Identifikators, der auf einem pseudo-zufällig erzeugten Wert beruht, für die verschlüsselte Datenstruktur; Speichern (716) des Identifikators und der verschlüsselten Datenstruktur in einem signierten Gruppenverzeichnis auf einem entfernbaren Speichermedium; und Bewirken des Speicherns des pseudo-zufälligen Wertes und einer Gruppenzahl, die dem signierten Gruppenverzeichnis entspricht, in einen nichtflüchtigen Speicher innerhalb der Vorrichtung.
  15. Gegenstand nach Anspruch 14, ferner umfassend Befehle zum Erzeugen (702) eines Schlüsselpaars zum Signieren und Verifizieren des Gruppenverzeichnisses.
  16. Gegenstand nach Anspruch 15, ferner umfassend Befehle zum Speichern eines Hashes des öffentlichen Schlüssels des Gruppenverzeichnis-Schlüsselpaars in einen nichtflüchtigen Speicher der Vorrichtung.
  17. Gegenstand nach Anspruch 14, ferner umfassend Befehle zum Auswählen einer Gruppengröße für das signierte Gruppenverzeichnis.
  18. Gegenstand nach Anspruch 14, ferner umfassend Befehle zum Erzeugen (701) eines Direktbeweis-Familienschlüsselpaars für eine Klasse von Vorrichtungen.
  19. Gegenstand nach Anspruch 14, wobei der private Schlüssel einen privaten Direktbeweis-Schlüssel umfaßt, der mit einem öffentlichen Schlüssel des Direktbeweis-Familienschlüsselpaars assoziiert ist, und ferner umfassend Befehle zum Hashen des privaten Direktbeweis-Schlüssels, um den privaten Schlüssel-Digest zu erzeugen.
  20. Gegenstand nach Anspruch 14, ferner umfassend Befehle zum Erzeugen (706) eines symmetrischen Schlüssels, der auf dem pseudo-zufälligen Wert für die Vorrichtung beruht.
  21. Gegenstand nach Anspruch 20, wobei Befehle zum Erzeugen des Identifikators Befehle zum Verschlüsseln eines Datenwertes unter Verwendung des symmetrischen Schlüssels umfassen.
  22. Gegenstand nach Anspruch 20, ferner umfassend Befehle zum Verschlüsseln der Datenstruktur mit Hilfe des symmetrischen Schlüssels.
  23. Gegenstand nach Anspruch 14, wobei die verschlüsselte Datenstruktur ferner einen zufälligen Initialisierungsvektor umfaßt.
  24. Gegenstand nach Anspruch 14, wobei der pseudo-zufällige Wert für die Vorrichtung einmalig ist.
  25. Verfahren, umfassend: Bestimmen, ob eine verschlüsselte Datenstruktur, die einen privaten Schlüssel und ein privates Schlüssel-Digest umfaßt, die mit einer Vorrichtung assoziiert ist, die in einem Computersystem installiert ist, in einem Speicher auf dem Computersystem gespeichert wird; und wenn die verschlüsselte Datenstruktur nicht gespeichert wird, Erhalten der verschlüsselten Datenstruktur, die mit der Vorrichtung assoziiert ist, in einem signierten Gruppenverzeichnis von einem entfernbaren Speichermedium, auf das das Computersystem zugreifen kann, wobei das entfernbare Speichermedium eine Datenbank von signierten Gruppenverzeichnissen speichert.
  26. Verfahren nach Anspruch 25, wobei das entfernbare Speichermedium mindestens eines von einer CD oder einer digitalen Videoplatte (DVD) umfaßt, die von einem Hersteller der Vorrichtung erzeugt wird.
  27. Verfahren nach Anspruch 25, wobei das Erhalten der verschlüsselten Datenstruktur das Erteilen des Schlüsselerfassungsbefehls an die Vorrichtung zum Initiieren eines privaten Schlüsselerfassungsprozesses umfaßt.
  28. Verfahren nach Anspruch 25, wobei der private Schlüssel einen privaten Direktbeweis-Schlüssel umfaßt, der mit einem öffentlichen Schlüssel eines Direktbeweis- Familienschlüsselpaars für eine Klasse von Vorrichtungen assoziiert ist.
  29. Verfahren nach Anspruch 27, wobei der Prozeß zur Erfassung des privaten Schlüssels das Erzeugen (1010) eines symmetrischen Schlüssels umfaßt, der auf einem einmaligen pseudo-zufälligen Wert basiert, der in der Vorrichtung gespeichert ist.
  30. Verfahren nach Anspruch 29, wobei der Prozeß zur Erfassung des privaten Schlüssels das Erzeugen (1012) eines Vorrichtungsidentifikators, der auf dem pseudo-zufälligen Wert basiert, für die verschlüsselte Datenstruktur umfaßt.
  31. Verfahren nach Anspruch 27, wobei der Prozeß zur Erfassung des privaten Schlüssels das Erhalten des signierten Gruppenverzeichnisses aus dem entfernbaren Speichermedium umfaßt, entsprechend einer Gruppenzahl der Vorrichtung.
  32. Verfahren nach Anspruch 30, ferner umfassend das syntaktische Analysieren (1016) des signierten Gruppenverzeichnisses, um eine Gruppenzahl, einen öffentlichen Gruppenschlüssel und die verschlüsselte Datenstruktur, die dem Vorrichtungsidentifikator entspricht, zu erhalten.
  33. Verfahren nach Anspruch 31, ferner umfassend das Verifizieren (1018) des signierten Gruppenverzeichnisses.
  34. Verfahren nach Anspruch 32, wobei der Prozeß zur Erfassung des privaten Schlüssels ferner das Entschlüsseln (1120) der verschlüsselten Datenstruktur umfaßt, die von dem entfernbaren Speichermedium unter Verwendung des symmetrischen Schlüssels empfangen wird, um den privaten Schlüssel und den privaten Schlüssel-Digest zu erhalten.
  35. Verfahren nach Anspruch 34, wobei der Prozeß zur Erfassung des privaten Schlüssels ferner das Hashen (1122) des privaten Schlüssels, um einen neuen privaten Schlüssel-Digest zu erzeugen, das Vergleichen des privaten Schlüssel-Digest aus der entschlüsselten Datenstruktur mit dem neuen privaten Schlüssel-Digest und das Akzeptieren des privaten Schlüssels als gültig für die Vorrichtung umfaßt, wenn die Digests übereinstimmen.
  36. Gegenstand, umfassend: ein erstes Speichermedium mit mehreren maschinenlesbaren Befehlen, wobei, wenn die Befehle von einem Prozessor ausgeführt werden, die Befehle für den Erhalt eines privaten Schlüssels aus einem signierten Gruppenverzeichnis für eine Vorrichtung sorgen, die in einem Computersystem installiert ist, durch Bestimmen, ob eine verschlüsselte Datenstruktur, die einen privaten Schlüssel und ein privates Schlüssel-Digest umfaßt, die mit einer Vorrichtung assoziiert ist, die in einem Computersystem installiert ist, in einem Speicher auf dem Computersystem (904) gespeichert ist; und wenn die verschlüsselte Datenstruktur nicht gespeichert ist, Erhalten der verschlüsselten Datenstruktur, die mit der Vorrichtung assoziiert ist, in einem signierten Gruppenverzeichnis von einem entfernbaren Speichermedium, auf das das Computersystem zugreifen kann, wobei das entfernbare Speichermedium eine Datenbank von signierten Gruppenverzeichnissen speichert.
  37. Gegenstand nach Anspruch 36, wobei Befehle zum Erhalten der verschlüsselten Datenstruktur Befehle zum Erteilen des Schlüsselerfassungsbefehls an die Vorrichtung zum Initiieren eines Prozesses zur Erfassung des privaten Schlüssels umfassen.
  38. Gegenstand nach Anspruch 36, wobei der private Schlüssel einen privaten Direktbeweis-Schlüssel umfaßt, der mit einem öffentlichen Schlüssel eines Direktbeweis-Familienschlüsselpaars für eine Klasse von Vorrichtungen assoziiert ist.
  39. Gegenstand nach Anspruch 37, wobei der Prozeß zur Erfassung des privaten Schlüssels das Erzeugen (1010) eines symmetrischen Schlüssels umfaßt, der auf einem einmaligen pseudo-zufälligen Wert basiert, der in der Vorrichtung gespeichert ist.
  40. Gegenstand nach Anspruch 37, wobei der Prozeß zur Erfassung des privaten Schlüssels das Erzeugen (1012) eines Vorrichtungsidentifikators, der auf dem pseudo-zufälligen Wert basiert, für die verschlüsselte Datenstruktur umfaßt.
  41. Gegenstand nach Anspruch 37, wobei der Prozeß zur Erfassung des privaten Schlüssels das Erhalten des signierten Gruppenverzeichnisses aus dem entfernbaren Speichermedium umfaßt, entsprechend einer Gruppenzahl der Vorrichtung.
  42. Gegenstand nach Anspruch 40, ferner umfassend das syntaktische Analysieren (1016) des signierten Gruppenverzeichnisses, um eine Gruppenzahl, einen öffentlichen Gruppenschlüssel und die verschlüsselte Datenstruktur, die dem Vorrichtungsidentifikator entspricht, zu erhalten.
  43. Gegenstand nach Anspruch 41, ferner umfassend das Verifizieren (1018) des signierten Gruppenverzeichnisses.
  44. Gegenstand nach Anspruch 42, wobei der Prozeß zur Erfassung des privaten Schlüssels ferner das Entschlüsseln (1120) der verschlüsselten Datenstruktur umfaßt, die von dem entfernbaren Speichermedium unter Verwendung des symmetrischen Schlüssels empfangen wird, um den privaten Schlüssel und den privaten Schlüssel-Digest zu erhalten.
  45. Gegenstand nach Anspruch 44, wobei der Prozeß zur Erfassung des privaten Schlüssels ferner das Hashen des privaten Schlüssels, um einen neuen privaten Schlüssel-Digest zu erzeugen, das Vergleichen des privaten Schlüssel-Digest aus der entschlüsselten Datenstruktur mit dem neuen privaten Schlüssel-Digest und das Akzeptieren des privaten Schlüssels als gültig für die Vorrichtung umfaßt, wenn die Digests übereinstimmen.
DE112005001666T 2004-07-14 2005-07-08 Verfahren zum Bereitstellen von privaten Direktbeweis-Schlüsseln in signierten Gruppen für Vorrichtungen mit Hilfe einer Verteilungs-CD Expired - Fee Related DE112005001666B4 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/892,280 US7693286B2 (en) 2004-07-14 2004-07-14 Method of delivering direct proof private keys in signed groups to devices using a distribution CD
US10/892,280 2004-07-14
PCT/US2005/024253 WO2006019614A2 (en) 2004-07-14 2005-07-08 Method of delivering direct proof private keys in signed groups to devices using a distribution cd

Publications (2)

Publication Number Publication Date
DE112005001666T5 DE112005001666T5 (de) 2007-05-03
DE112005001666B4 true DE112005001666B4 (de) 2009-12-31

Family

ID=35599439

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112005001666T Expired - Fee Related DE112005001666B4 (de) 2004-07-14 2005-07-08 Verfahren zum Bereitstellen von privaten Direktbeweis-Schlüsseln in signierten Gruppen für Vorrichtungen mit Hilfe einer Verteilungs-CD

Country Status (6)

Country Link
US (1) US7693286B2 (de)
JP (1) JP4638912B2 (de)
CN (1) CN1985466B (de)
DE (1) DE112005001666B4 (de)
GB (1) GB2439160B (de)
WO (1) WO2006019614A2 (de)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8285991B2 (en) * 2000-10-25 2012-10-09 Tecsec Inc. Electronically signing a document
US7802085B2 (en) * 2004-02-18 2010-09-21 Intel Corporation Apparatus and method for distributing private keys to an entity with minimal secret, unique information
US7697691B2 (en) * 2004-07-14 2010-04-13 Intel Corporation Method of delivering Direct Proof private keys to devices using an on-line service
US7792303B2 (en) * 2004-07-14 2010-09-07 Intel Corporation Method of delivering direct proof private keys to devices using a distribution CD
US7693286B2 (en) 2004-07-14 2010-04-06 Intel Corporation Method of delivering direct proof private keys in signed groups to devices using a distribution CD
US8924728B2 (en) * 2004-11-30 2014-12-30 Intel Corporation Apparatus and method for establishing a secure session with a device without exposing privacy-sensitive information
CA2510366C (en) 2005-06-14 2013-02-26 Certicom Corp. System and method for remote device registration
JP4989806B2 (ja) * 2005-06-14 2012-08-01 サーティコム コーポレーション 遠隔装置登録のためのシステムと方法
US7894606B2 (en) * 2005-11-28 2011-02-22 Panasonic Electric Works Co., Ltd. Systems and methods for facilitating secure key distribution to an embedded device
EP1826979A1 (de) * 2006-02-27 2007-08-29 BRITISH TELECOMMUNICATIONS public limited company System und Verfahren zur Einrichtung einer sicheren Gruppe von Dateneinheiten in einem Computernetzwerk
KR101421202B1 (ko) 2006-02-28 2014-07-22 써티콤 코포레이션 제품 등록 시스템 및 방법
US8856862B2 (en) * 2006-03-02 2014-10-07 British Telecommunications Public Limited Company Message processing methods and systems
US8014530B2 (en) 2006-03-22 2011-09-06 Intel Corporation Method and apparatus for authenticated, recoverable key distribution with no database secrets
EP2122900A4 (de) 2007-01-22 2014-07-23 Spyrus Inc Tragbares datenverschlüsselungsgerät mit konfigurierbaren sicherheitsfunktionen und verfahren zur dateienverschlüsselung
EP1975830A1 (de) * 2007-03-30 2008-10-01 British Telecommunications Public Limited Company Verteiltes Computersystem
EP1976220A1 (de) * 2007-03-30 2008-10-01 British Telecommunications Public Limited Company Computernetzwerk
WO2009050324A1 (en) * 2007-10-16 2009-04-23 Nokia Corporation Credential provisioning
JP5393038B2 (ja) * 2008-03-04 2014-01-22 キヤノン株式会社 情報処理装置、情報処理方法及びシステム
US8234502B2 (en) 2008-08-29 2012-07-31 International Business Machines Corporation Automated password authentication
CN101986596B (zh) * 2010-10-21 2014-06-25 无锡江南信息安全工程技术中心 密钥管理方法
CN105681032B (zh) * 2016-01-08 2017-09-12 腾讯科技(深圳)有限公司 密钥存储方法、密钥管理方法及装置
CN110582774B (zh) * 2017-05-03 2023-07-28 维萨国际服务协会 用于软件模块绑定的系统和方法
US11343093B2 (en) * 2019-02-08 2022-05-24 Fisher Controls International Llc Methods and apparatus to broadcast data packets in a process control environment
CN110113173B (zh) * 2019-05-20 2022-01-21 上海链朗信息科技有限公司 多输入且可验证的伪随机数的生成方法
DE102019130067B4 (de) * 2019-11-07 2022-06-02 Krohne Messtechnik Gmbh Verfahren zur Durchführung einer erlaubnisabhängigen Kommunikation zwischen wenigstens einem Feldgerät der Automatisierungstechnik und einem Bediengerät

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004051923A1 (en) * 2002-11-27 2004-06-17 Intel Corporation System and method for establishing trust without revealing identity

Family Cites Families (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5724425A (en) * 1994-06-10 1998-03-03 Sun Microsystems, Inc. Method and apparatus for enhancing software security and distributing software
US5857021A (en) * 1995-11-07 1999-01-05 Fujitsu Ltd. Security system for protecting information stored in portable storage media
US5771291A (en) * 1995-12-11 1998-06-23 Newton; Farrell User identification and authentication system using ultra long identification keys and ultra large databases of identification keys for secure remote terminal access to a host computer
EP0877314A4 (de) 1996-01-23 2005-10-19 Global Media Online Inc Informationsanzeigesystem
US5924094A (en) 1996-11-01 1999-07-13 Current Network Technologies Corporation Independent distributed database system
US6438666B2 (en) * 1997-09-26 2002-08-20 Hughes Electronics Corporation Method and apparatus for controlling access to confidential data by analyzing property inherent in data
US6185316B1 (en) * 1997-11-12 2001-02-06 Unisys Corporation Self-authentication apparatus and method
US6032260A (en) 1997-11-13 2000-02-29 Ncr Corporation Method for issuing a new authenticated electronic ticket based on an expired authenticated ticket and distributed server architecture for using same
US5991399A (en) 1997-12-18 1999-11-23 Intel Corporation Method for securely distributing a conditional use private key to a trusted entity on a remote system
US6151676A (en) * 1997-12-24 2000-11-21 Philips Electronics North America Corporation Administration and utilization of secret fresh random numbers in a networked environment
US6032261A (en) 1997-12-30 2000-02-29 Philips Electronics North America Corp. Bus bridge with distribution of a common cycle clock to all bridge portals to provide synchronization of local buses, and method of operation thereof
US6036061A (en) 1998-04-27 2000-03-14 O'donnell; Thomas F. Retainer for blank of split cap
US6611812B2 (en) * 1998-08-13 2003-08-26 International Business Machines Corporation Secure electronic content distribution on CDS and DVDs
US6389403B1 (en) * 1998-08-13 2002-05-14 International Business Machines Corporation Method and apparatus for uniquely identifying a customer purchase in an electronic distribution system
US7188180B2 (en) * 1998-10-30 2007-03-06 Vimetx, Inc. Method for establishing secure communication link between computers of virtual private network
AU2998100A (en) 1999-02-18 2000-09-04 Sun Microsystems, Inc. Data authentication system employing encrypted integrity blocks
US6036601A (en) 1999-02-24 2000-03-14 Adaboy, Inc. Method for advertising over a computer network utilizing virtual environments of games
FI112315B (fi) 1999-05-11 2003-11-14 Nokia Corp Integriteetin suojausmenetelmä radioverkkosignalointia varten
US6928615B1 (en) 1999-07-07 2005-08-09 Netzero, Inc. Independent internet client object with ad display capabilities
US7216110B1 (en) 1999-10-18 2007-05-08 Stamps.Com Cryptographic module for secure processing of value-bearing items
GB9929050D0 (en) 1999-12-08 2000-02-02 Nokia Networks Oy Communication method
GB0004178D0 (en) 2000-02-22 2000-04-12 Nokia Networks Oy Integrity check in a communication system
US6829250B2 (en) 2000-08-10 2004-12-07 Verizon Communications Inc. Automatic programming of customer premises equipment for vertical services integration
WO2002015103A1 (en) 2000-08-17 2002-02-21 Day Adam S Website promotional applet process
US7178030B2 (en) 2000-10-25 2007-02-13 Tecsec, Inc. Electronically signing a document
FI111423B (fi) 2000-11-28 2003-07-15 Nokia Corp Järjestelmä kanavanvaihdon jälkeen tapahtuvan tietoliikenteen salauksen varmistamiseksi
US20020080190A1 (en) * 2000-12-23 2002-06-27 International Business Machines Corporation Back-up and usage of secure copies of smart card data objects
GB0103416D0 (en) 2001-02-12 2001-03-28 Nokia Networks Oy Message authentication
US20030037237A1 (en) 2001-04-09 2003-02-20 Jean-Paul Abgrall Systems and methods for computer device authentication
US6941456B2 (en) * 2001-05-02 2005-09-06 Sun Microsystems, Inc. Method, system, and program for encrypting files in a computer system
ITPD20010125A1 (it) 2001-05-31 2002-12-01 Lindhaus Srl Utensile perfezionato multiuso per macchine di pulizia.
JP4145118B2 (ja) 2001-11-26 2008-09-03 松下電器産業株式会社 アプリケーション認証システム
US7242768B2 (en) * 2002-01-14 2007-07-10 Lenovo (Singapore) Pte. Ltd. Super secure migratable keys in TCPA
US8332650B2 (en) * 2002-03-22 2012-12-11 Microsoft Corporation Systems and methods for setting and resetting a password
JP4115175B2 (ja) * 2002-06-28 2008-07-09 富士通株式会社 情報記憶装置、情報処理装置、特定番号作成方法、特定番号作成プログラム
IL153751A (en) * 2002-12-30 2010-12-30 Eyal Artsiely Lock assembly with common faceplate
EP1617587A1 (de) 2004-07-12 2006-01-18 International Business Machines Corporation Methode, System und Computerprogrammprodukt zur vertraulichen Integritätsbestätigung einer Computer Plattform
US7693286B2 (en) 2004-07-14 2010-04-06 Intel Corporation Method of delivering direct proof private keys in signed groups to devices using a distribution CD
US7792303B2 (en) 2004-07-14 2010-09-07 Intel Corporation Method of delivering direct proof private keys to devices using a distribution CD
US7697691B2 (en) 2004-07-14 2010-04-13 Intel Corporation Method of delivering Direct Proof private keys to devices using an on-line service
US8924728B2 (en) * 2004-11-30 2014-12-30 Intel Corporation Apparatus and method for establishing a secure session with a device without exposing privacy-sensitive information

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004051923A1 (en) * 2002-11-27 2004-06-17 Intel Corporation System and method for establishing trust without revealing identity

Also Published As

Publication number Publication date
WO2006019614A3 (en) 2006-12-07
GB2439160B (en) 2009-01-14
WO2006019614A2 (en) 2006-02-23
CN1985466B (zh) 2013-03-06
GB0700525D0 (en) 2007-02-21
US7693286B2 (en) 2010-04-06
JP2008507203A (ja) 2008-03-06
CN1985466A (zh) 2007-06-20
GB2439160A (en) 2007-12-19
JP4638912B2 (ja) 2011-02-23
DE112005001666T5 (de) 2007-05-03
US20060013400A1 (en) 2006-01-19

Similar Documents

Publication Publication Date Title
DE112005001666B4 (de) Verfahren zum Bereitstellen von privaten Direktbeweis-Schlüsseln in signierten Gruppen für Vorrichtungen mit Hilfe einer Verteilungs-CD
DE112005001672B4 (de) Verfahren zum Liefern eines geheimen Direktnachweisschlüssels an Vorrichtungen unter Verwendung eines Onlinedienstes
DE112005001654B4 (de) Verfahren zum Übermitteln von Direct-Proof-Privatschlüsseln an Geräte mittels einer Verteilungs-CD
DE102005030590B4 (de) Sicheres Patchsystem
DE69837303T2 (de) Informationsverarbeitungsvorrichtung und Verfahren und Aufzeichnungsmedium zum Ausführen mittels öffentlicher Schlüssel verschlüsselter Programme
DE102013203415B4 (de) Erstellen eines abgeleiteten Schlüssels aus einem kryptographischen Schlüssel mittels einer physikalisch nicht klonbaren Funktion
DE69720614T2 (de) Verschlüsselungseinheit mit Kontaktpunktlogik
DE112011100182B4 (de) Datensicherheitsvorrichtung, Rechenprogramm, Endgerät und System für Transaktionsprüfung
DE102007057900B4 (de) Authentifikation von verdächtigen Daten unter Verwendung von Schlüsseltabellen
DE10392528T5 (de) Microcode-Patch-Authentifizierung
DE102020116791A1 (de) Vorrichtung und Verfahren zum computergestützten Verarbeiten von Daten
WO2015124726A1 (de) Verfarhen und system zum erstellen und zur gültigkeitsprüfung von gerätezertifikaten
DE112008003931T5 (de) Systeme und Verfahren für Datensicherheit
DE102010027586B4 (de) Verfahren zum kryptographischen Schutz einer Applikation
DE102013108020A1 (de) Authentifizierungsschema zum Aktivieren eines Spezial-Privileg-Modus in einem gesicherten elektronischen Steuergerät
DE102020121533A1 (de) Vertrauenswürdige authentifizierung von automotiven mikrocon-trollern
EP3337085B1 (de) Nachladen kryptographischer programminstruktionen
EP3465513B1 (de) Nutzerauthentifizierung mittels eines id-tokens
EP2442251B9 (de) Individuelle Aktualisierung von Computerprogrammen
DE112019003096B4 (de) Abgesicherte kommunikation aus einer nichtflüchtigen speichervorrichtung heraus
EP3422274A1 (de) Verfahren zur konfiguration oder änderung einer konfiguration eines bezahlterminals und/oder zur zuordnung eines bezahlterminals zu einem betreiber
EP2434424B1 (de) Verfahren zur Erhöhung der Sicherheit von sicherheitsrelevanten Online-Diensten
CN113242219A (zh) 数据传输方法、区块链网络及存储介质
EP3767513A1 (de) Verfahren zur sicheren durchführung einer fernsignatur sowie sicherheitssystem
DE102015208176A1 (de) Gerät und Verfahren zur Autorisierung eines privaten kryptographischen Schlüssels in einem Gerät

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8364 No opposition during term of opposition
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee