DE102021129554A1 - Verfahren und vorrichtung zur bereitstellung eines individuell sicheren systems für mehrere misstrauische parteien - Google Patents

Verfahren und vorrichtung zur bereitstellung eines individuell sicheren systems für mehrere misstrauische parteien Download PDF

Info

Publication number
DE102021129554A1
DE102021129554A1 DE102021129554.8A DE102021129554A DE102021129554A1 DE 102021129554 A1 DE102021129554 A1 DE 102021129554A1 DE 102021129554 A DE102021129554 A DE 102021129554A DE 102021129554 A1 DE102021129554 A1 DE 102021129554A1
Authority
DE
Germany
Prior art keywords
key
customer
response
processor
data
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.)
Pending
Application number
DE102021129554.8A
Other languages
English (en)
Inventor
Brian Farrell
David M. Nairn
Thomas M. Forest
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.)
GM Global Technology Operations LLC
Original Assignee
GM Global Technology Operations LLC
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 GM Global Technology Operations LLC filed Critical GM Global Technology Operations LLC
Publication of DE102021129554A1 publication Critical patent/DE102021129554A1/de
Pending legal-status Critical Current

Links

Images

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/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/45Structures or tools for the administration of authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40052High-speed IEEE 1394 serial bus
    • H04L12/40104Security; Encryption; Content protection
    • 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/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/061Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0822Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
    • 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/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2143Clearing memory, e.g. to prevent the data from being stolen
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40267Bus for use in transportation systems
    • H04L2012/40273Bus for use in transportation systems the transportation system being a vehicle
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/84Vehicles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/062Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying encryption of the keys

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Virology (AREA)
  • Computing Systems (AREA)
  • Automation & Control Theory (AREA)
  • Storage Device Security (AREA)
  • Lock And Its Accessories (AREA)

Abstract

Die vorliegende Anwendung bezieht sich auf ein Verfahren und eine Vorrichtung zur intelligenten drahtlosen Protokolloptimierung, einschließlich des Speicherns eines ersten Kundenschlüssels und eines zweiten Kundenschlüssels in einem Speicher, des Empfangens eines geheimen Schlüssels durch einen Prozessor, des Entschlüsselns des geheimen Schlüssels durch den Prozessor unter Verwendung eines ersten Kundenschlüssels, um einen Hauptschlüssel zu extrahieren, des Bereitstellens einer elektronischen Steuereinheit durch den Prozessor als Reaktion auf den Hauptschlüssel und des Löschens des zweiten Kundenschlüssels durch den Prozessor als Reaktion auf das Bereitstellen der elektronischen Steuereinheit als Reaktion auf den Hauptschlüssel.

Description

  • HINTERGRUND
  • Die vorliegende Offenlegung bezieht sich allgemein auf elektronische Computersysteme. Genauer gesagt beziehen sich Aspekte dieser Offenlegung auf Systeme, Verfahren und Geräte zur Bereitstellung identischer Computersysteme für mehrere misstrauische Parteien, wobei jede Partei einen sicheren Berechtigungsnachweis für den Zugriff auf das Computersystem und dessen Bereitstellung verwendet.
  • Die Hersteller elektronischer Komponenten und elektronischer Rechensysteme, wie z. B. Prozessoren, elektronische Steuereinheiten (ECUs) und dergleichen, stellen diese Systeme oft mehreren konkurrierenden Parteien zur Verfügung. Diese Systeme erfordern häufig einen sicheren Datenzugriff auf das Gerät, eine sichere Kommunikation zwischen den Geräten, und die Geräte können geschützte Algorithmen, elektronische Daten und Ähnliches enthalten. Daher kann es bei diesen Systemen erforderlich sein, dass geschützte Informationen für jede der konkurrierenden Parteien auf dem System installiert werden, bevor es an jede der Parteien ausgeliefert wird. Dies führt zu dem Problem, dass für jede Partei ein anderes System erstellt werden muss, damit die geschützten Informationen nicht unter den Parteien verteilt und/oder gemeinsam genutzt werden. Die Erstellung individueller Systeme für jeden Kunden führt zu einer Vervielfachung der Teile, was die mit dem System verbundenen Kosten erhöht und die Komplexität der Lieferung und Verteilung steigert. Es wäre wünschenswert, diese Probleme zu überwinden, indem man den Parteien, die sich gegenseitig misstrauen, ein einziges Teil zur Verfügung stellt, das die Sicherheitsdaten der einzelnen Parteien schützt.
  • Die in diesem Abschnitt über den Hintergrund offengelegten Informationen dienen lediglich dem besseren Verständnis des Hintergrunds der Erfindung und können daher Informationen enthalten, die nicht zum Stand der Technik gehören und die einem Fachmann in diesem Land bereits bekannt sind.
  • BESCHREIBUNG
  • Hierin werden verschiedene sichere elektronische Systeme und die zugehörige Steuerlogik zur Bereitstellung sicherer elektronischer Systeme, Verfahren zur Herstellung und zum Betrieb solcher Systeme sowie Kraftfahrzeuge, die mit sicheren elektronischen Systemen an Bord ausgestattet sind, vorgestellt. Als Beispiel und ohne Einschränkung wird ein Computersystem vorgestellt, das gegenseitig misstrauischen Parteien zur Verfügung gestellt werden kann und das die Sicherheitsnachweise jeder Partei schützt, indem es ein Verfahren und eine Vorrichtung für den sicheren Zugriff durch jede Partei und entsprechende Kontrollsysteme ermöglicht.
  • Gemäß einem Aspekt der vorliegenden Offenbarung umfasst ein Verfahren das Speichern eines ersten Kundenschlüssels und eines zweiten Kundenschlüssels in einem Speicher, das Empfangen eines geheimen Schlüssels durch einen Prozessor, das Entschlüsseln des geheimen Schlüssels durch den Prozessor unter Verwendung eines ersten Kundenschlüssels, um einen Hauptschlüssel zu extrahieren, das Bereitstellen einer elektronischen Steuereinheit durch den Prozessor in Reaktion auf den Hauptschlüssel und das Löschen des zweiten Kundenschlüssels durch den Prozessor in Reaktion auf das Bereitstellen der elektronischen Steuereinheit in Reaktion auf den Hauptschlüssel.
  • Gemäß einem anderen Aspekt der vorliegenden Offenbarung werden der erste Kundenschlüssel und der geheime Schlüssel als Reaktion auf eine eindeutige Kennung der elektronischen Steuereinheit unter Verwendung eines Algorithmus erzeugt, der einem ersten Kunden zugeordnet ist.
  • Gemäß einem anderen Aspekt der vorliegenden Offenbarung wird der geheime Schlüssel an einer Controller Area Network-Schnittstelle empfangen.
  • Gemäß einem anderen Aspekt der vorliegenden Offenbarung ist der zweite Kundenschlüssel einem zweiten Kunden zugeordnet.
  • Gemäß einem weiteren Aspekt der vorliegenden Offenbarung wird eine weitere Bereitstellung der elektronischen Steuereinheit als Reaktion auf eine Bestätigung des Löschens des zweiten Kundenschlüssels durch den Prozessor durchgeführt.
  • Gemäß einem anderen Aspekt der vorliegenden Offenbarung ist der Prozessor ferner so konfiguriert, dass er die Bereitstellung eines Sicherheitsnachweises zur Verwendung durch die elektronische Steuereinheit in Reaktion auf den Hauptschlüssel ermöglicht.
  • Gemäß einem anderen Aspekt der vorliegenden Offenbarung ist der Hauptschlüssel ein erster Sicherheitsausweis, der einem ersten Kunden zugeordnet ist.
  • Gemäß einem anderen Aspekt der vorliegenden Offenbarung werden der erste Kundenschlüssel und der zweite Kundenschlüssel von einem Lieferanten der elektronischen Steuereinheit als Reaktion auf die eindeutige Kennung der elektronischen Steuereinheit erzeugt und von dem Lieferanten im Speicher gespeichert.
  • Gemäß einem anderen Aspekt der vorliegenden Offenbarung ist der Prozessor ferner für den Empfang eines Standard-Entsperrungsschlüssels, der einem ersten Kunden zugeordnet ist, betriebsbereit, und wobei der Prozessor ferner für die Änderung des ersten Kundenschlüssels in Reaktion auf den Empfang des Standard-Entsperrungsschlüssels konfiguriert ist.
  • Gemäß einem anderen Aspekt der vorliegenden Offenbarung enthält ein sicheres Steuergerät einen Speicher, der zum Speichern eines ersten Schlüssels und erster Daten, die einem ersten Kunden zugeordnet sind, und eines zweiten Schlüssels und zweiter Daten, die einem zweiten Kunden zugeordnet sind, konfiguriert ist, eine Schnittstelle, die einen empfangenen Schlüssel empfängt, und einen Prozessor zum Entschlüsseln des empfangenen Schlüssels als Reaktion auf den ersten Schlüssel, um einen Hauptschlüssel zu erzeugen, zum Bereitstellen einer elektronischen Steuereinheit als Reaktion auf den Hauptschlüssel, zum Löschen des zweiten Schlüssels und der zweiten Daten als Reaktion auf die Bereitstellung der elektronischen Steuereinheit als Reaktion auf den Hauptschlüssel.
  • Gemäß einem anderen Aspekt der vorliegenden Offenbarung werden der erste Schlüssel und der empfangene Schlüssel als Reaktion auf eine eindeutige Kennung des sicheren Controllers unter Verwendung eines dem ersten Kunden zugeordneten Algorithmus erzeugt.
  • In Übereinstimmung mit einem anderen Aspekt der vorliegenden Offenbarung, wobei die Schnittstelle eine Controller Area Network-Schnittstelle ist.
  • Gemäß einem anderen Aspekt der vorliegenden Offenbarung sind die zweiten Daten ein Kontrollalgorithmus, der einem Ökosystem des zweiten Kunden zugeordnet ist.
  • Gemäß einem anderen Aspekt der vorliegenden Offenbarung ist der Prozessor ferner in der Lage zu bestätigen, dass die zweiten Daten gelöscht sind, bevor eine weitere Bereitstellung der elektronischen Steuereinheit zugelassen wird.
  • Gemäß einem anderen Aspekt der vorliegenden Offenbarung ist der Prozessor ferner so konfiguriert, dass er die Bereitstellung von Sicherheitsberechtigungsnachweisen zur Verwendung durch die sichere Steuereinheit in Reaktion auf den Hauptschlüssel ermöglicht.
  • Gemäß einem anderen Aspekt der vorliegenden Offenbarung sind die ersten Daten ein erster Sicherheitsnachweis, der einem ersten Kundensystem zugeordnet ist, und die zweiten Daten sind ein zweiter Sicherheitsnachweis, der einem zweiten Kundensystem zugeordnet ist.
  • Gemäß einem anderen Aspekt der vorliegenden Offenbarung werden der erste Schlüssel und der zweite Schlüssel von einem Lieferanten des sicheren Steuergeräts in Reaktion auf den eindeutigen Identifikator des sicheren Steuergeräts erzeugt und von dem Lieferanten im Speicher gespeichert.
  • Gemäß einem anderen Aspekt der vorliegenden Offenbarung ist die Schnittstelle ferner so konfiguriert, dass sie einen Standard-Entsperrschlüssel empfängt, der dem ersten Kunden zugeordnet ist, und wobei der Prozessor ferner so konfiguriert ist, dass er den ersten Schlüssel ändert und die ersten Daten, die zweiten Daten und den zweiten Schlüssel in Reaktion auf den Empfang des Standard-Entsperrschlüssels nicht ändert.
  • Gemäß einem weiteren Aspekt der vorliegenden Offenbarung enthält eine elektronische Steuereinheit für ein Fahrzeug einen Speicher, der zum Speichern eines ersten Kundenschlüssels, der einem ersten Kunden zugeordnet ist, eines ersten Bereitstellungsdatums, das dem ersten Kunden zugeordnet ist, eines zweiten Kundenschlüssels, der einem zweiten Kunden zugeordnet ist, und eines zweiten Bereitstellungsdatums, das dem zweiten Kunden zugeordnet ist, konfiguriert ist, eine Netzwerkschnittstelle, die zum Empfangen eines empfangenen Schlüssels konfiguriert ist, eine Netzwerkschnittstelle, die zum Empfangen eines empfangenen Schlüssels konfiguriert ist, und einen Prozessor, der zum Dekodieren des empfangenen Schlüssels konfiguriert ist, um einen Hauptschlüssel zu erzeugen, um die zweiten Bereitstellungsdaten und den zweiten geheimen Schlüssel als Reaktion auf die Erzeugung des Hauptschlüssels zu löschen und um die elektronische Steuereinheit des Fahrzeugs als Reaktion auf den Hauptschlüssel und die ersten Bereitstellungsdaten als Reaktion auf das Löschen der zweiten Bereitstellungsdaten und des zweiten geheimen Schlüssels bereitzustellen.
  • Gemäß einem anderen Aspekt der vorliegenden Offenbarung werden der erste Kundenschlüssel und der empfangene Schlüssel als Reaktion auf eine eindeutige Kennung der elektronischen Steuereinheit des Fahrzeugs unter Verwendung eines dem ersten Kunden zugeordneten Algorithmus erzeugt.
  • Der obige Vorteil und andere Vorteile und Merkmale der vorliegenden Offenbarung werden aus der folgenden detaillierten Beschreibung der bevorzugten Ausführungsformen ersichtlich sein, wenn sie in Verbindung mit den beigefügten Zeichnungen genommen werden.
  • Figurenliste
  • Die oben genannten und andere Merkmale und Vorteile dieser Erfindung und die Art und Weise, sie zu erreichen, werden deutlicher und die Erfindung wird besser verstanden werden durch Bezugnahme auf die folgende Beschreibung von Ausführungsformen der Erfindung in Verbindung mit den beigefügten Zeichnungen genommen.
    • 1 zeigt eine beispielhafte Umgebung für die Bereitstellung eines individuell sicheren Systems für mehrere misstrauische Parteien gemäß einer beispielhaften Ausführungsform.
    • 2 zeigt ein Blockdiagramm eines Systems zur Bereitstellung eines individuell sicheren Systems für mehrere misstrauische Parteien gemäß einer anderen beispielhaften Ausführungsform.
    • 3 zeigt ein Flussdiagramm, das ein Verfahren zur Bereitstellung eines individuell sicheren Systems für mehrere misstrauische Parteien gemäß einer beispielhaften Ausführungsform veranschaulicht.
    • 4 zeigt ein Blockdiagramm, das ein anderes System zur Bereitstellung eines individuell sicheren Systems für mehrere misstrauische Parteien gemäß einer anderen beispielhaften Ausführungsform veranschaulicht.
    • 5 zeigt ein Flussdiagramm, das ein weiteres Verfahren zur Bereitstellung eines individuell sicheren Systems für mehrere misstrauische Parteien gemäß einer anderen beispielhaften Ausführungsform veranschaulicht.
  • Die hier dargelegten Beispiele veranschaulichen bevorzugte Ausführungsformen der Erfindung, und diese Beispiele sind nicht so auszulegen, dass sie den Umfang der Erfindung in irgendeiner Weise einschränken.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Ausführungsformen der vorliegenden Offenbarung werden hier beschrieben. Es versteht sich jedoch von selbst, dass die offengelegten Ausführungsformen lediglich Beispiele sind und andere Ausführungsformen verschiedene und alternative Formen annehmen können. Die Abbildungen sind nicht notwendigerweise maßstabsgetreu; einige Merkmale könnten übertrieben oder verkleinert sein, um Details bestimmter Komponenten zu zeigen. Daher sind spezifische strukturelle und funktionelle Details, die hier offenbart werden, nicht als einschränkend zu verstehen, sondern lediglich repräsentativ. Die verschiedenen Merkmale, die unter Bezugnahme auf eine der Figuren dargestellt und beschrieben sind, können mit Merkmalen kombiniert werden, die in einer oder mehreren anderen Figuren dargestellt sind, um Ausführungsformen zu schaffen, die nicht ausdrücklich dargestellt oder beschrieben sind. Die abgebildeten Merkmalskombinationen stellen repräsentative Ausführungsformen für typische Anwendungen dar. Verschiedene Kombinationen und Modifikationen der Merkmale, die mit den Lehren dieser Offenbarung übereinstimmen, könnten jedoch für bestimmte Anwendungen oder Implementierungen erwünscht sein.
  • In 1 ist eine beispielhafte Umgebung 100 zur Bereitstellung eines individuell gesicherten Systems für mehrere Parteien gemäß einer beispielhaften Ausführungsform dargestellt. Die beispielhafte Umgebung 100 umfasst einen Lieferanten 110, ein Teil 120, einen ersten Kunden 130, einen zweiten Kunden 140 und einen dritten Kunden 150. Die Umgebung 100 umfasst ferner einen ersten Kundenschlüssel 135, einen zweiten Kundenschlüssel 145, einen dritten Kundenschlüssel 155 und einen öffentlichen Schlüssel 125. Das offengelegte System und Verfahren ist so konfiguriert, dass es die Lieferung eines Teils durch einen vertrauenswürdigen Lieferanten 110 an gegenseitig misstrauische Kunden 130, 140, 150 erleichtert, die in der Lage sein müssen, Sicherheitsnachweise für die Verwendung in ihrem Ökosystem auf eine Weise bereitzustellen, die es den anderen Parteien nicht ermöglicht, ihre Sicherheitsnachweise zu kennen oder unangemessen zu verwenden, selbst wenn sie die Bereitstellung beobachten.
  • In dieser beispielhaften Ausführungsform liefert ein vertrauenswürdiger Anbieter 110 dem Teil 120 einen öffentlichen Standardschlüssel 125 und einen eindeutigen geheimen Schlüssel, der für jeden Kunden 130, 140, 150, der das Teil 120 erhält, generiert wird. Das Teil 120 ist so konfiguriert, dass es Software-Updates ablehnt, die dazu führen könnten, dass das Teil 120 von einer Partei so verändert wird, dass es sich im Ökosystem einer anderen Partei bösartig verhält. Das Teil 120 ist so konfiguriert, dass es keine Software-Updates zulässt, bis das Teil für die Verwendung im Ökosystem einer bestimmten Partei konfiguriert wurde, was dazu führt, dass der geheime Schlüssel und alle damit verbundenen Daten aller anderen Parteien gelöscht werden. Der eindeutige geheime Schlüssel stellt sicher, dass jede Partei in der Lage ist, ihre Sicherheitsnachweise vertraulich zu halten, selbst wenn eine andere Partei die Bereitstellung dieser Sicherheitsnachweise beobachtet.
  • Um die Bereitstellung eines individuell sicheren Systems für mehrere Parteien zu erreichen, stellt der Lieferant 110 zunächst jedem der ersten Kunden 130, zweiten Kunden 140 und dritten Kunden 150 Teile 120 zur Verfügung, wobei jedes Teil 120 eine eindeutige ID (UID) hat. Jeder der Kunden hat einen Kundenschlüssel 135, 145, 155, der nur für diesen Kunden geheim ist. Unter Verwendung der UID und der Kundenschlüssel 135, 145, 155 wird für jedes Teil ein geheimer Schlüssel erzeugt. Der geheime Schlüssel jeder Partei wird von der UID unter Verwendung der Kundenschlüssel 135, 145, 155 abgeleitet, wodurch sichergestellt wird, dass jeder Kunde nur seinen eigenen geheimen Schlüssel kennt und nicht die geheimen Schlüssel der anderen Kunden 130, 140, 150.
  • Jeder der Kunden 130, 140, 150, die die Teile 120 erhalten, kann das Teil 120 für die Verwendung in seinem Ökosystem konfigurieren, indem er die UID und seinen Kundenschlüssel 135, 145, 155 verwendet, um den entsprechenden geheimen Schlüssel im Teil zu erzeugen und das Teil mit seinen Sicherheitsdaten zu versehen. Ein anderer Kunde 130, 140, 150, der das Teil erhält, kann das Teil ohne den entsprechenden Kundenschlüssel 135, 145, 155 nicht für die Verwendung im Ökosystem einer anderen Partei konfigurieren. Darüber hinaus können andere Kunden, die die Teile 120 erhalten, auch nicht die Sicherheitsdaten anderer Parteien ermitteln, wenn sie die Konfiguration des Teils beobachten, da die Sicherheitsdaten mit dem Kundenschlüssel 135, 145, 155 der Partei verschlüsselt sind, der den anderen Parteien nicht bekannt ist. Sobald auf das Teil 120 mit einem bestimmten Kundenschlüssel 135, 145, 155 zugegriffen wird, werden die Informationen über andere Kunden gelöscht, um zu verhindern, dass eine Partei die Sicherheitsdaten einer anderen Partei verwendet, nachdem sie die Kontrolle über das Teil übernommen hat. Dies wird dadurch erreicht, dass eine Softwareaktualisierung erst dann zugelassen wird, wenn alle anderen Kundenschlüssel 135, 145, 155 gelöscht sind. In einer beispielhaften Ausführungsform befindet sich jeder der Kunden 130, 140, 150 in einer anderen Region, wobei es für jede Region einen eigenen Kundenschlüssel 135, 145, 155 gibt.
  • Jedes Teil 120 wird außerdem mit einem öffentlichen Schlüssel 125 für jede Partei geliefert, die das Teil 120 erhält. Da das Teil 120 keine Software-Updates zulässt, bis es für die Verwendung durch einen bestimmten Kunden konfiguriert wurde, werden die öffentlichen Standard-Root-Schlüssel 125 für den Übergang zum öffentlichen Produktions-Root-Schlüssel des Kunden verwendet, dürfen aber nicht für Software-Updates verwendet werden. Bei der Bereitstellung des öffentlichen Produktions-Root-Schlüssels werden alle geheimen Schlüssel der anderen Parteien gelöscht, bevor der öffentliche Produktions-Root-Schlüssel für die Änderung der Software verwendet werden kann. Dadurch wird verhindert, dass eine andere Partei die Software des Teils ändern und den geheimen Schlüssel eines anderen Kunden verwenden kann, um die im Ökosystem dieses Kunden verwendeten Sicherheitsanmeldeinformationen zu ermitteln, oder in der Lage ist, Schadsoftware auf ein Teil 120 aufzuspielen, das über gültige Sicherheitsanmeldeinformationen für das Ökosystem eines anderen Kunden verfügt.
  • 2 zeigt ein System 200 zur Bereitstellung eines individuell gesicherten Systems für mehrere Parteien gemäß einer beispielhaften Ausführungsform. Das beispielhafte System 200 kann einen Prozessor 210, einen Speicher 220 und eine Schnittstelle 230 umfassen. In dieser beispielhaften Ausführungsform kann das System 200 ein Teil sein, z. B. ein elektronisches Steuergerät (ECU) für Kraftfahrzeuge, das von einem Anbieter an eine Reihe unabhängiger Kunden geliefert wird, wobei jeder Kunde eine einzigartige Konfiguration oder Bereitstellung des Teils benötigt oder eigene Software auf dem System 200 vorinstalliert hat. Diese vorkonfigurierte individuelle Kundensoftware kann geistiges Eigentum des Kunden enthalten, und es ist daher wünschenswert, den Zugriff auf die individuelle Kundensoftware nur auf autorisierte Parteien zu beschränken. In diesem Beispiel kann ein Kundenschlüssel ein Bereitstellungsschlüssel oder ähnliches sein, der verwendet wird, um einen geheimen Schlüssel als Antwort auf einen Hauptschlüssel und den Bereitstellungsschlüssel zu erzeugen.
  • In diesem Beispiel ist der Speicher 220 so konfiguriert, dass er mehrere Sätze von Kundendaten speichert. Diese Kundendaten können Software-Algorithmen, System- oder Teilebereitstellungsdaten und/oder andere sensible Informationen enthalten. Im Beispiel eines Steuergeräts kann das Teil 200 eine speziell entwickelte Software enthalten, um die Steuerfunktionen von Fahrzeugsystemen wie Antriebsstrang, Klimakontrollsystem, Infotainmentsystem, Karosseriesysteme, Fahrwerkssysteme und andere auszuführen. Darüber hinaus kann der Speicher 220 Sicherheitsnachweise enthalten, wie z. B. einen Kundenschlüssel zur Erleichterung der Bereitstellung eines Hauptschlüssels im System 200. In dieser beispielhaften Ausführungsform kann der Speicher 220 einen Kundenschlüssel enthalten, der für jeden Kunden eindeutig ist, wobei der Kundenschlüssel als Reaktion auf eine Teil-UID abgeleitet wird. Jeder Kundenschlüssel wird von der UID abgeleitet, wobei ein anderer geheimer Prozess oder Algorithmus verwendet wird, der nur dem Lieferanten und dem vorgesehenen Kunden bekannt ist. Darüber hinaus kann der Speicher 220 einen öffentlichen Standard-Stammschlüssel für jede Partei enthalten, die das Teil erhält. Der öffentliche Standard-Root-Schlüssel kann für den Übergang zum geheimen Schlüssel des Kunden verwendet werden, darf aber nicht für Software-Updates verwendet werden.
  • Die Schnittstelle 230 kann so konfiguriert sein, dass sie Daten zwischen dem Prozessor 210 und einem externen System empfängt und überträgt. In einer beispielhaften Ausführungsform kann die Schnittstelle 230 einen geheimen Schlüssel von einem Kunden empfangen, der den Zugriff auf das Teil zur Bereitstellung und/oder Konfiguration durch den Kunden ermöglichen soll. In einer beispielhaften Ausführungsform ist der geheime Schlüssel ein Hauptschlüssel, der als Antwort auf den Kundenschlüssel kodiert ist. Die Schnittstelle 230 kann eine Netzwerkschnittstelle sein, z. B. ein CAN-Bus (Controller Area Network), ein Ethernet-Anschluss, ein USB-Anschluss (Universal Serial Bus) oder eine drahtlose Netzwerkschnittstelle, z. B. eine Antenne oder ähnliches. Darüber hinaus kann die Schnittstelle 230 Programmierdaten oder Programmaktualisierungsdaten zur Durchführung eines Betriebsalgorithmus zur Steuerung externer Systeme empfangen. Die Schnittstelle 230 kann ferner Betriebsdaten und/oder Fehlercodes vom Prozessor 210 zur Verbindung mit externen Diagnosesystemen empfangen, beispielsweise über eine On-Board-Diagnosesystem-Schnittstelle (OBD-II) oder ähnliches.
  • Der Prozessor 210 ist so konfiguriert, dass er Daten von der Schnittstelle 230 empfängt. Als Reaktion auf die empfangenen Daten kann der Prozessor 210 feststellen, ob es sich bei den empfangenen Daten um einen geheimen Schlüssel oder einen öffentlichen Standardschlüssel handelt. Wenn es sich bei den Daten um einen öffentlichen Standardschlüssel handelt, kann der Prozessor 210 dann Anweisungen für die Umstellung des Teils auf einen geheimen Kundenschlüssel erhalten. Der Prozessor 210 darf jedoch keine Daten oder Software auf dem Teil als Reaktion auf einen öffentlichen Standardschlüssel ändern, um die Offenlegung privater Kundenalgorithmen oder -daten und/oder die Installation von Schadsoftware auf dem System zu vermeiden. In einem Beispiel handelt es sich bei den empfangenen Daten um einen Hauptschlüssel, der mit einem geheimen Kundenschlüssel codiert ist. Der Prozessor 210 ist so konfiguriert, dass er den geheimen Schlüssel unter Verwendung eines gespeicherten Kundenschlüssels entschlüsselt, um einen Hauptschlüssel zu extrahieren. Der Prozessor 210 ist dann so konfiguriert, dass er das Gerät unter Verwendung des Hauptschlüssels bereitstellt. Der Prozessor 210 löscht dann alle mit anderen Kunden verbundenen Daten aus dem Speicher 220. Sobald die anderen Kundendaten gelöscht sind, kann der Prozessor 210 die verbleibenden Daten im Speicher konfigurieren und/oder gespeicherte Algorithmen ausführen, die dem Kunden zugeordnet sind, und zwar als Reaktion auf zusätzliche Anweisungen, die an der Schnittstelle empfangen werden.
  • Wenn der geheime Schlüssel vom Prozessor 210 unter Verwendung des Kundenschlüssels entschlüsselt wird, um den Hauptschlüssel zu extrahieren, kann der Prozessor 210 das Teil zunächst bereitstellen, indem er den Hauptschlüssel im Teil bereitstellt und alle geheimen Schlüssel der anderen Parteien löscht, bevor er zulässt, dass der öffentliche Stammschlüssel zur Änderung der Software verwendet wird. Dadurch wird verhindert, dass eine Partei die Software des Teils ändern und den geheimen Schlüssel einer anderen Partei verwenden kann, um die im Ökosystem dieser Partei verwendeten Sicherheitsanmeldeinformationen zu ermitteln, oder in der Lage ist, Schadsoftware auf einem Teil zu installieren, das über gültige Sicherheitsanmeldeinformationen für das Ökosystem einer anderen Partei verfügt. Der Kunde kann den geheimen Schlüssel mit einem für diesen Kunden einzigartigen Schlüsselgenerierungsalgorithmus und einer UID des Teils erzeugen. Der geheime Schlüssel kann eine alphanumerische Ziffernfolge sein.
  • 3 zeigt ein Flussdiagramm, das ein Verfahren 300 zur Bereitstellung eines individuell sicheren Systems für mehrere Parteien gemäß einer beispielhaften Ausführungsform illustriert. Das beispielhafte Verfahren ist so konfiguriert, dass es einen geheimen Schlüssel empfängt, der von einem Kunden als Reaktion auf eine UID des Teils und einen dem Teil zugeordneten Hauptschlüssel erzeugt wurde, den geheimen Schlüssel dekodiert, um den Hauptschlüssel zu extrahieren, das Teil mit dem Hauptschlüssel bereitstellt, im Teil gespeicherte Informationen, die nicht dem Kunden zugeordnet sind, als Reaktion auf die Bereitstellung des Teils mit dem dekodierten Hauptschlüssel löscht und als Reaktion auf die Löschung der Informationen Zugang zu den Bereitstellungskontrollen des Teils gewährt. Die Daten können ferner einen öffentlichen Standard-Stammschlüssel für jeden potenziellen Kunden enthalten.
  • Das Verfahren dient zunächst dem Empfang von Daten 310 von einem Hersteller des Teils und der Speicherung der Daten in einem Speicher. Die Daten können geschützte oder vertrauliche Informationen für jeden der potenziellen Kunden des Teils enthalten. Die Daten können vom Kunden an den Hersteller geliefert werden, bevor sie dem Teil zur Verfügung gestellt werden. Darüber hinaus können die Daten einen geheimen Schlüssel für jeden der potenziellen Kunden enthalten, wobei der geheime Schlüssel vom Hersteller als Reaktion auf einen Algorithmus und eine UID des Teils und einen diesem Teil zugeordneten Hauptschlüssel erzeugt wird. Jeder der geheimen Schlüssel wird dann im Speicher abgelegt. Ein öffentlicher Standardschlüssel kann ebenfalls in den Daten enthalten sein und ebenfalls im Speicher abgelegt werden. Der öffentliche Standard-Stammschlüssel kann verwendet werden, um das Teil auf den geheimen Schlüssel eines Kunden umzustellen, darf aber nicht für Software-Updates verwendet werden, um eine Änderung der Software des Teils zu verhindern, oder um einen geheimen Schlüssel eines anderen Kunden zu ermitteln und/oder zu verwenden, um die im Ökosystem dieses Kunden verwendeten Sicherheitsanmeldeinformationen zu bestimmen, oder um Malware auf einem Teil zu verwenden, das gültige Sicherheitsanmeldeinformationen für das Ökosystem eines anderen Kunden hat.
  • Als nächstes empfängt das Verfahren 315 einen geheimen Schlüssel über die Schnittstelle. Der geheime Schlüssel kann eine alphanumerische Zeichenfolge sein. Das Verfahren bestimmt dann 320, ob der Schlüssel ein geheimer Kundenschlüssel ist. Die Feststellung, dass es sich bei dem Schlüssel um einen geheimen Schlüssel handelt, kann anhand des Formats des Schlüssels, als Reaktion auf andere mit dem Schlüssel empfangene Daten, wie z. B. einen Datenkopf oder ähnliches, oder durch Vergleich des Schlüssels mit gespeicherten geheimen Schlüsseln erfolgen. Darüber hinaus kann ein mit dem geheimen Schlüssel oder als Teil des geheimen Schlüssels empfangener Bereitstellungsdatensatz einen Parameter enthalten, der den Kunden oder eine Region angibt, in der das Teil konfiguriert wird, so dass das Teil bestimmen kann, welcher der gespeicherten Kundenschlüssel mit den empfangenen geheimen Schlüsseln verbunden ist. Wird festgestellt, dass der empfangene Schlüssel ein geheimer Schlüssel ist, dekodiert das Verfahren den geheimen Schlüssel unter Verwendung eines in einem Speicher gespeicherten Kundenschlüssels. 325. Wenn der geheime Schlüssel nicht mit einem im Speicher gespeicherten geheimen Schlüssel übereinstimmt, wird der Zugriff verweigert 335 und das Verfahren kehrt zum Warten auf zusätzliche Daten 310 zurück.
  • Wird der geheime Schlüssel mit einem Kundenschlüssel dekodiert, bestimmt das Verfahren als nächstes 330, ob der dekodierte geheime Schlüssel einen gültigen Hauptschlüssel ergibt. Ist der dekodierte geheime Schlüssel kein gültiger Hauptschlüssel, verweigert das Verfahren 335 den Zugriff auf das Teil. Wenn der dekodierte geheime Schlüssel ein gültiger Hauptschlüssel ist, ist das Verfahren so konfiguriert, dass es 337 das Teil mit dem Hauptschlüssel versieht und 340 alle mit anderen Kunden verbundenen Daten löscht, die im Speicher oder im Teil gespeichert sind. Daten, die mit dem Kunden verbunden sind, der den geheimen Schlüssel übermittelt, werden nicht gelöscht. Nachdem die anderen Kundendaten gelöscht wurden, ermöglicht das Verfahren 345 dem zugelassenen Kunden den Zugriff auf das Teil. Der zugelassene Kunde kann dann das Teil neu konfigurieren oder es in ein Kundensystem integrieren.
  • Wird der dekodierte geheime Schlüssel nicht als gültiger Hauptschlüssel ermittelt (320), bestimmt das Verfahren als Nächstes (350), ob der empfangene Schlüssel ein öffentlicher Schlüssel ist. Handelt es sich bei dem empfangenen Schlüssel um einen öffentlichen Schlüssel, kann das Verfahren 355 den Zugriff auf das Teil für den Wechsel des Kundenschlüssels oder ähnliches gestatten, nicht aber den Zugriff auf Daten innerhalb des Teils oder das Löschen von Daten und das Aktualisieren, Löschen oder Ändern von Software innerhalb des Teils. Das Verfahren kehrt zurück, um 310 auf den Empfang weiterer Daten zu warten.
  • 4 zeigt ein Diagramm einer beispielhaften Ausführungsform eines sicheren Steuergeräts 400 zur Bereitstellung eines individuell sicheren Systems für mehrere Parteien. Die beispielhafte elektronische Steuereinheit 400 kann einen Speicher 410, einen Prozessor 420 und eine Schnittstelle 430 umfassen. Das sichere Steuergerät 400 ist so konfiguriert, dass es einen geheimen Schlüssel von einem Kunden empfängt, der als Reaktion auf einen dem Kunden zugeordneten Algorithmus und eine UID des sicheren Steuergeräts erzeugt wird. In diesem Beispiel ist der geheime Schlüssel ein Hauptschlüssel, der durch den Algorithmus in Reaktion auf die UID kodiert wird. Um dem Kunden einen sicheren Zugang zu gewähren, um das sichere Steuergerät 400 entsprechend dem Ökosystem des Kunden unter Verwendung eines dem Kunden zugeordneten Hauptschlüssels bereitzustellen, ohne die in einem Speicher des sicheren Steuergeräts 400 gespeicherten geschützten Informationen anderer Kunden preiszugeben, ist das sichere Steuergerät 400 so konfiguriert, dass es alle Informationen, die allen anderen Kunden zugeordnet sind, löscht, nachdem ein geheimer Schlüssel von dem Kunden empfangen und validiert wurde.
  • In dieser beispielhaften Ausführungsform ist der Speicher 410 zum Speichern eines ersten Kundenschlüssels und erster Daten, die einem ersten Kunden zugeordnet sind, und eines zweiten Kundenschlüssels und zweiter Daten, die einem zweiten Kunden zugeordnet sind, konfiguriert. Bei den ersten Daten kann es sich beispielsweise um einen ersten Sicherheitsnachweis handeln, der einem ersten Kundensystem zugeordnet ist, und bei den zweiten Daten kann es sich um einen zweiten Sicherheitsnachweis handeln, der einem zweiten Kundensystem zugeordnet ist. Alternativ können die ersten Daten erste Bereitstellungsdaten sein, die mit einem ersten Kunden-Ökosystem verbunden sind, und die zweiten Daten können zweite Bereitstellungsdaten sein, die mit einem zweiten Kunden-Ökosystem verbunden sind. Der erste Kundenschlüssel und der zweite Kundenschlüssel können von einem Lieferanten des sicheren Controllers als Reaktion auf die eindeutige Kennung des sicheren Controllers und einen ersten Algorithmus, der dem ersten Kunden zugeordnet ist, und einen zweiten Algorithmus, der dem zweiten Kunden zugeordnet ist, erzeugt werden. Diese Schlüssel können dann von dem Lieferanten in dem Speicher 410 gespeichert werden. Beispielsweise kann der Schlüssel des ersten Kunden in dem Speicher gespeichert werden, und ein geheimer Schlüssel, der von dem Kunden über die Schnittstelle 430 empfangen wird, kann als Reaktion auf eine eindeutige Kennung des sicheren Steuergeräts 400, einen Hauptschlüssel, der dem ersten Kunden zugeordnet ist, und einen Algorithmus, der dem ersten Kunden zugeordnet ist, erzeugt werden.
  • Die Schnittstelle 430 kann ein Datenport für den Empfang und die Übertragung von Daten an einen Prozessor innerhalb der sicheren Schnittstelle 400 sein. Die Schnittstelle 430 kann eine CAN-Bus-Schnittstelle, ein Ethernet-Anschluss, eine drahtlose Netzwerkschnittstelle oder ein anderer Datenkopplungsanschluss sein. In einer beispielhaften Ausführungsform kann die Schnittstelle 430 so konfiguriert sein, dass sie einen geheimen Schlüssel vom ersten Kunden empfängt, nachdem das sichere Steuergerät vom Lieferanten an den ersten Kunden geliefert worden ist.
  • Das sichere Steuergerät 400 kann ferner einen Prozessor 420 zum Entschlüsseln des geheimen Schlüssels als Reaktion auf den ersten Kundenschlüssel oder den zweiten Kundenschlüssel zum Erzeugen, Entschlüsseln oder Entschlüsseln eines Hauptschlüssels, zum Validieren des Hauptschlüssels, zum Löschen des zweiten Kundenschlüssels und der zweiten Daten als Reaktion auf die Bereitstellung eines elektronischen Steuergeräts als Reaktion auf den Hauptschlüssel umfassen. Der Prozessor 420 kann dann als Reaktion auf die Bereitstellung des elektronischen Steuergeräts und/oder eine zusätzliche Sicherheitsbereitstellung des elektronischen Steuergeräts einen zusätzlichen Zugriff auf die ersten Daten und/oder das elektronische Steuergerät ermöglichen. Der Prozessor 420 kann ferner in der Lage sein, zu bestätigen, dass die zweiten Daten gelöscht sind, bevor er den Zugriff auf die ersten Daten erlaubt. Der Prozessor 420 kann ferner so konfiguriert sein, dass er als Reaktion auf die Bereitstellung des elektronischen Steuergeräts als Reaktion auf den Hauptschlüssel und/oder die Löschung des zweiten Kundenschlüssels und der zweiten Daten die Bereitstellung von Sicherheitsberechtigungsnachweisen zur Verwendung durch das sichere Steuergerät ermöglicht. Die Schnittstelle 430 kann ferner so konfiguriert sein, dass sie einen Standard-Entsperrungsschlüssel empfängt, der dem ersten Kunden zugeordnet ist, und wobei der Prozessor 420 ferner so konfiguriert ist, dass er den ersten Schlüssel ändert und die ersten Daten, die zweiten Daten und den zweiten Schlüssel in Reaktion auf den Empfang des Standard-Entsperrungsschlüssels nicht ändert.
  • In einer beispielhaften Ausführungsform kann das sichere Steuergerät 400 ein Fahrzeugsteuergerät sein, das einen Speicher enthält, der zum Speichern eines ersten Kundenschlüssels, der einem ersten Kunden zugeordnet ist, eines ersten Bereitstellungsdatums, das dem ersten Kunden zugeordnet ist, eines zweiten Kundenschlüssels, der einem zweiten Kunden zugeordnet ist, und eines zweiten Bereitstellungsdatums, das dem zweiten Kunden zugeordnet ist, konfiguriert ist, sowie eine Netzwerkschnittstelle, die zum Empfangen eines empfangenen Schlüssels konfiguriert ist, eine Netzwerkschnittstelle, die zum Empfangen eines empfangenen Schlüssels konfiguriert ist, und einen Prozessor, der zum Decodieren des empfangenen Schlüssels konfiguriert ist, um einen Hauptschlüssel zu erzeugen, um die zweiten Bereitstellungsdaten und den zweiten geheimen Schlüssel als Reaktion auf die Erzeugung des Hauptschlüssels zu löschen und um die elektronische Steuereinheit des Fahrzeugs als Reaktion auf den Hauptschlüssel und die ersten Bereitstellungsdaten als Reaktion auf die Löschung der zweiten Bereitstellungsdaten und des zweiten geheimen Schlüssels bereitzustellen. In einem Beispiel können der erste Kundenschlüssel und der empfangene Schlüssel als Reaktion auf eine eindeutige Kennung des elektronischen Steuergeräts des Fahrzeugs unter Verwendung eines mit dem ersten Kunden verbundenen Algorithmus erzeugt werden.
  • zeigt ein Flussdiagramm, das eine beispielhafte Implementierung eines Verfahrens 500 zur intelligenten drahtlosen Protokolloptimierung veranschaulicht. Das Verfahren dient zunächst dazu, 505 in einem Speicher einen ersten Kundenschlüssel und einen zweiten Kundenschlüssel zu speichern. Der erste Kundenschlüssel und der zweite Kundenschlüssel können von einem Lieferanten eines Geräts unter Verwendung eines Algorithmus oder Prozesses erzeugt werden, der für jeden Kunden einzigartig und für diesen Kunden privat ist, und zwar als Reaktion auf eine UID des Geräts.
  • Das Verfahren ist als nächstes für den Empfang eines geheimen Schlüssels 510 durch einen Prozessor konfiguriert. Der geheime Schlüssel kann über eine Datenschnittstelle, wie z. B. eine Controller Area Network-Schnittstelle, empfangen werden. Der geheime Schlüssel kann vom Kunden als Reaktion auf einen Hauptschlüssel und eine UID eines Geräts, z. B. eines Steuergeräts, unter Verwendung eines für jeden potenziellen Kunden eindeutigen Algorithmus generiert werden. Somit würde ein für jeden Kunden unter Verwendung der Geräte-UID und eines für jeden Kunden eindeutigen Algorithmus erzeugtes Geheimnis eindeutige Sicherheitsschlüssel für jeden Kunden und jedes Gerät erzeugen.
  • Das Verfahren dient als nächstes der Entschlüsselung des geheimen Schlüssels durch den Prozessor unter Verwendung eines ersten Kundenschlüssels, der in einem Speicher innerhalb des Geräts gespeichert ist, um einen Hauptschlüssel zu extrahieren. In dieser beispielhaften Ausführungsform werden der erste geheime Schlüssel und der zweite geheime Schlüssel von einem Lieferanten des Geräts als Reaktion auf die UID des Geräts und einen eindeutigen Algorithmus für jeden Kunden erzeugt und von dem Lieferanten in einem Speicher innerhalb des Geräts gespeichert. Das Verfahren ist als nächstes für die Bereitstellung 530 einer elektronischen Steuereinheit durch den Prozessor in Reaktion auf den Hauptschlüssel konfiguriert. Die Bereitstellung als Reaktion auf den Hauptschlüssel kann die Kommunikation zwischen anderen Komponenten innerhalb des Systems entsprechend dem Ökosystem eines Kunden ermöglichen.
  • In Reaktion auf eine Bereitstellung als Reaktion auf den Hauptschlüssel löscht das Verfahren als Nächstes den zweiten Kundenschlüssel 540 durch den Prozessor als Reaktion auf die Bereitstellung der elektronischen Steuereinheit als Reaktion auf den Hauptschlüssel. In dieser beispielhaften Ausführungsform sind die ersten Bereitstellungsdaten und der erste Kundenschlüssel einem ersten Kunden und die zweiten Bereitstellungsdaten und der zweite Kundenschlüssel einem zweiten Kunden zugeordnet. Alle Daten, die in Verbindung mit einem anderen Kunden als dem ersten Kunden gespeichert sind, können als Reaktion auf die Bereitstellung eines geheimen Schlüssels durch den ersten Kunden, der zu einem gültigen Hauptschlüssel führt, an der Geräteschnittstelle gelöscht werden, um die Vertraulichkeit des geistigen Eigentums des anderen Kunden und die Sicherheit seines Ökosystems zu wahren.
  • Das Verfahren ist als nächstes so konfiguriert, dass der Prozessor das Gerät, z. B. ein Steuergerät, als Reaktion auf die ersten Bereitstellungsdaten und die Löschung des zweiten Kundenschlüssels und der zweiten Bereitstellungsdaten bereitstellt. Der Prozessor kann so konfiguriert sein, dass er die Bereitstellung eines Sicherheitsnachweises zur Verwendung durch das Steuergerät unter Verwendung der ersten Bereitstellungsdaten als Reaktion auf die Decodierung des geheimen Schlüssels zur Erzeugung eines gültigen Hauptschlüssels ermöglicht. In einem Beispiel kann die Bereitstellung des elektronischen Steuergeräts als Reaktion auf die ersten Bereitstellungsdaten in Reaktion auf eine Bestätigung der Löschung des zweiten Kundenschlüssels und der zweiten Bereitstellungsdaten durch den Prozessor erfolgen, um die Vertraulichkeit der anderen zweiten Kundendaten zu gewährleisten.
  • In einer beispielhaften Ausführungsform kann das Verfahren ferner dazu dienen, einen Standardfreischaltschlüssel zu empfangen, der einem ersten Kunden zugeordnet ist, und wobei der Prozessor ferner so konfiguriert ist, dass er den ersten Kundenschlüssel ändert und die ersten Bereitstellungsdaten, die zweiten Bereitstellungsdaten und den zweiten Kundenschlüssel in Reaktion auf den Empfang des Standardfreischaltschlüssels nicht ändert. Darüber hinaus sind die ersten Bereitstellungsdaten ein erster Sicherheitsnachweis, der einem ersten Kundensystem zugeordnet ist, und wobei die zweiten Bereitstellungsdaten ein zweiter Sicherheitsnachweis sind, der einem zweiten Kundensystem zugeordnet ist. Die Sicherheitsnachweise können für die Kommunikation in einem sicheren Netzwerk, wie einem CAN-Bus-Netzwerk oder ähnlichem, verwendet werden.
  • Obwohl in der vorangegangenen detaillierten Beschreibung mindestens eine beispielhafte Ausführungsform vorgestellt wurde, sollte man sich darüber im Klaren sein, dass es eine Vielzahl von Varianten gibt. Es sollte auch gewürdigt werden, dass die beispielhafte Ausführungsform oder die beispielhaften Ausführungsformen nur Beispiele sind und nicht dazu gedacht sind, den Umfang, die Anwendbarkeit oder die Konfiguration der Offenbarung in irgendeiner Weise zu begrenzen. Vielmehr soll die vorstehende detaillierte Beschreibung dem Fachmann einen praktischen Leitfaden für die Umsetzung der beispielhaften Ausführungsform oder der beispielhaften Ausführungsformen an die Hand geben. Es versteht sich von selbst, dass verschiedene Änderungen in der Funktion und Anordnung der Elemente vorgenommen werden können, ohne dass der Umfang der Offenbarung, wie er in den beigefügten Ansprüchen und deren gesetzlichen Entsprechungen dargelegt ist, verlassen wird.

Claims (10)

  1. Verfahren, umfassend: Speicherung eines ersten Kundenschlüssels und eines zweiten Kundenschlüssels in einem Speicher; Empfang eines Geheimschlüssels durch einen Prozessor; Entschlüsselung des Geheimschlüssels durch den Prozessor unter Verwendung eines ersten Kundenschlüssels, um einen Hauptschlüssel zu extrahieren; Bereitstellen einer elektronischen Steuereinheit durch den Prozessor in Reaktion auf den Hauptschlüssel; und Löschen des zweiten Kundenschlüssels durch den Prozessor in Reaktion auf die Bereitstellung der elektronischen Steuereinheit in Reaktion auf den Hauptschlüssel.
  2. Verfahren nach Anspruch 1, wobei der erste Kundenschlüssel und der Geheimschlüssel als Reaktion auf eine eindeutige Kennung der elektronischen Steuereinheit unter Verwendung eines einem ersten Kunden zugeordneten Algorithmus erzeugt werden.
  3. Verfahren nach Anspruch 1, wobei der Geheimschlüssel an einer Controller Area Network-Schnittstelle empfangen wird.
  4. Verfahren nach Anspruch 1, wobei der zweite Kundenschlüssel einem zweiten Kunden zugeordnet ist.
  5. Verfahren nach Anspruch 1, wobei eine weitere Bereitstellung der elektronischen Steuereinheit als Reaktion auf eine Bestätigung des Löschens des zweiten Kundenschlüssels durch den Prozessor erfolgt.
  6. Verfahren nach Anspruch 1, wobei der Prozessor ferner so konfiguriert ist, dass er die Bereitstellung eines Sicherheitsnachweises zur Verwendung durch die elektronische Steuereinheit in Reaktion auf den Hauptschlüssel ermöglicht.
  7. Verfahren nach Anspruch 1, wobei der Hauptschlüssel ein erster Sicherheitsausweis ist, der einem ersten Kunden zugeordnet ist.
  8. Verfahren nach Anspruch 1, wobei der erste Kundenschlüssel und der zweite Kundenschlüssel von einem Lieferanten der elektronischen Steuereinheit als Reaktion auf den eindeutigen Identifikator der elektronischen Steuereinheit erzeugt und von dem Lieferanten in dem Speicher gespeichert werden.
  9. Verfahren nach Anspruch 1, das ferner zum Empfangen eines Standard-Entsperrungsschlüssels dient, wobei der Prozessor ferner zum Ändern des ersten Kundenschlüssels in Reaktion auf den Empfang des Standard-Entsperrungsschlüssels konfiguriert ist.
  10. Sicheres Steuergerät, aufweisend: einen Speicher, der zum Speichern eines ersten Schlüssels und erster Daten, die einem ersten Kunden zugeordnet sind, und eines zweiten Schlüssels und zweiter Daten, die einem zweiten Kunden zugeordnet sind, konfiguriert ist; eine Schnittstelle, die einen empfangenen Schlüssel empfängt; und einen Prozessor zum Entschlüsseln des empfangenen Schlüssels unter Verwendung des ersten Schlüssels, um einen Hauptschlüssel zu erzeugen, zum Bereitstellen einer elektronischen Steuereinheit in Reaktion auf den Hauptschlüssel, zum Löschen des zweiten Schlüssels und der zweiten Daten in Reaktion auf die Bereitstellung der elektronischen Steuereinheit in Reaktion auf den Hauptschlüssel.
DE102021129554.8A 2021-01-14 2021-11-12 Verfahren und vorrichtung zur bereitstellung eines individuell sicheren systems für mehrere misstrauische parteien Pending DE102021129554A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/149,453 US11804981B2 (en) 2021-01-14 2021-01-14 Method and apparatus for providing an individually secure system to multiple distrusting parties
US17/149,453 2021-01-14

Publications (1)

Publication Number Publication Date
DE102021129554A1 true DE102021129554A1 (de) 2022-07-14

Family

ID=82116450

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021129554.8A Pending DE102021129554A1 (de) 2021-01-14 2021-11-12 Verfahren und vorrichtung zur bereitstellung eines individuell sicheren systems für mehrere misstrauische parteien

Country Status (3)

Country Link
US (1) US11804981B2 (de)
CN (1) CN114764496A (de)
DE (1) DE102021129554A1 (de)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10008974B4 (de) * 2000-02-25 2005-12-29 Bayerische Motoren Werke Ag Signaturverfahren
US9280653B2 (en) * 2011-10-28 2016-03-08 GM Global Technology Operations LLC Security access method for automotive electronic control units
US11210678B2 (en) * 2016-11-18 2021-12-28 Samsung Electronics Co., Ltd. Component for provisioning security data and product including the same
US11228421B1 (en) * 2017-02-03 2022-01-18 Apple Inc. Secure secrets to mitigate against attacks on cryptographic systems

Also Published As

Publication number Publication date
US20220224561A1 (en) 2022-07-14
CN114764496A (zh) 2022-07-19
US11804981B2 (en) 2023-10-31

Similar Documents

Publication Publication Date Title
DE102012110499B4 (de) Sicherheitszugangsverfahren für elektronische Automobil-Steuergeräte
DE60316585T2 (de) Verfahren und system zum aufrechterhalten eines zeitlichen konfigurationsverlaufs eines fahrzeugs
EP2689553B1 (de) Kraftwagen-steuergerät mit kryptographischer einrichtung
DE102020124163A1 (de) Verifizierung von fahrzeugdaten
DE102014114607A1 (de) Programmierung von Fahrzeugmodulen mit Remotevorrichtungen und zugehörige Methoden und Systeme
DE102015209108A1 (de) Verfahren und Entscheidungsgateway zum Autorisieren einer Funktion eines eingebetteten Steuergerätes
DE112019000485T5 (de) System und verfahren zum bereitstellen der sicherheit für einfahrzeuginternes netzwerk
DE102013108020A1 (de) Authentifizierungsschema zum Aktivieren eines Spezial-Privileg-Modus in einem gesicherten elektronischen Steuergerät
DE102013108022A1 (de) Verfahren zum Aktivieren des Entwicklungsmodus eines gesicherten elektronischen Steuergeräts
DE102017107879A1 (de) Nachrichten-Authentifizierungsbibliothek
DE102019101788A1 (de) Sicherheitsberechtigungssprogrammiersystem zum Programmieren von Sicherheitsprozessor-Chips von Fahrzeugsteuermodulen
DE102014220616A1 (de) Verfahren zum Laden von ausführbaren Programminstruktionen in eine Chipkarte im Wirkbetrieb
EP3743844B1 (de) Blockchain-basiertes identitätssystem
EP3080950B1 (de) Verfahren und system zur deterministischen autokonfiguration eines gerätes
DE102021129554A1 (de) Verfahren und vorrichtung zur bereitstellung eines individuell sicheren systems für mehrere misstrauische parteien
DE102008042582A1 (de) Telekommunikationsverfahren, Computerprogrammprodukt und Computersystem
DE102010004786A1 (de) Verfahren zum rechnergestützten Bereitstellen einer Entwicklungsumgebung zur Implementierung von Sicherheitsanwendungen in einer Fahrzeug-Architektur
DE102023107659A1 (de) Unleugbarer verlauf von fahrzeugänderungen
DE112021006369T5 (de) Provisionierungssystem für cloud-verbundene drucker
DE102016207339A1 (de) Verfahren zur sicheren Interaktion eines Nutzers mit einem mobilen Endgerät und einer weiteren Instanz
DE102021129442A1 (de) Fehlertolerante überprüfung der bereitstellung von kryptografischen schlüsseln
DE102022128286A1 (de) Sicherheitskontrolle für eine elektronische steuereinheit
DE102022128289A1 (de) Leistungsabstimmung für elektronische steuereinheit
DE102009053230A1 (de) Verfahren zur Autorisierung eines externen Systems auf einem Steuergerät eines Fahrzeugs, insbesondere eines Kraftfahrzeugs
DE102022126459A1 (de) Authentifizierung von softparts für ein elektronisches steuergerät

Legal Events

Date Code Title Description
R012 Request for examination validly filed