DE102015202935A1 - Verfahren zum Manipulationsschutz - Google Patents

Verfahren zum Manipulationsschutz Download PDF

Info

Publication number
DE102015202935A1
DE102015202935A1 DE102015202935.2A DE102015202935A DE102015202935A1 DE 102015202935 A1 DE102015202935 A1 DE 102015202935A1 DE 102015202935 A DE102015202935 A DE 102015202935A DE 102015202935 A1 DE102015202935 A1 DE 102015202935A1
Authority
DE
Germany
Prior art keywords
data packet
time
data
link
variant parameter
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
DE102015202935.2A
Other languages
English (en)
Inventor
Jamshid Shokrollahi
Jan Zibuschka
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.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
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 Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE102015202935.2A priority Critical patent/DE102015202935A1/de
Priority to JP2016027932A priority patent/JP2016152623A/ja
Priority to US15/046,137 priority patent/US10461938B2/en
Priority to CN201610088418.1A priority patent/CN105897423B/zh
Publication of DE102015202935A1 publication Critical patent/DE102015202935A1/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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
    • 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/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • 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
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • 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
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • 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/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
    • H04L9/3242Cryptographic 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 involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • H04L9/3252Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using DSA or related signature schemes, e.g. elliptic based signatures, ElGamal or Schnorr schemes

Abstract

Verfahren und Vorrichtung zum Manipulationsschutz, umfassend Empfangen (202) eines von einem ersten Gerät (E) gesendeten ersten Datenpakets durch ein zweites Gerät (S), wobei das erste Datenpaket einen ersten zeitvarianten Parameter umfasst;
Signieren (207) einer Verknüpfung eines ersten Hashwertes mit dem ersten zeitvarianten Parameter und einer Identifikation des zweiten Geräts (S) mittels eines dem zweiten Gerät (S) zugeordneten privaten Schlüssel eines asymmetrischen Verschlüsselungsverfahrens, wobei zur Bestimmung des Hashwerts auf dem zweiten Gerät (S) gespeicherte, zur Ausführung im Betrieb des zweiten Geräts vorgesehene Programmanweisungen oder Daten herangezogen werden;
Erzeugen (207) eines zweiten Datenpakets umfassend die Signatur und die Verknüpfung;
Senden (209) des zweiten Datenpakets vom zweiten Gerät (S) an das erste Gerät (E).

Description

  • Stand der Technik
  • Aus der DE 10 2009 002 396 A1 ist ein Verfahren zum Manipulationsschutz eines Sensors und von Sensordaten des Sensors bekannt, bei dem im Rahmen einer Authentifizierung des Sensors eine Zufallszahl von einem Steuergerät an den Sensor geschickt wird. Dabei sind die Sensordaten zum einen mit einem kryptographischen Integritätsschutz versehen und zum anderen werden den Sensordaten zusätzliche zeitvariante Parameter hinzugefügt. Die Sensordaten werden dabei mit dem Integritätsschutz und den hinzugefügten zeitvarianten Parametern von dem Sensor an das Steuergerät geschickt. Dabei werden für die zeitvarianten Parameter bei der Authentifizierung des Sensors die Zufallszahl oder ein Teil der Zufallszahl oder eine durch eine Funktion aus der zufallszahl gewonnen Zahl herangezogen.
  • Dadurch wird sowohl die Identität des Sensors als auch die Integrität der vom Sensor übertragenen Daten geschützt.
  • Offenbarung der Erfindung
  • Zusätzlich zum Schutz der Identität eines Senders und der Integrität der vom Sender übertragenen Daten ist ein Schutz der Integrität der auf dem Sender eingesetzten Software oder Firmware wünschenswert.
  • Das erfindungsgemäße Verfahren, die erfindungsgemäße Vorrichtung und das erfindungsgemäße Computerprogramm gemäß den unabhängigen Ansprüchen ermöglichen es, die Integrität der auf einem Gerät vorhandenen Firmware oder Software zu schützen und auf einem anderen Gerät zu bestätigen.
  • Dadurch wird Integritätsschutz abhängig von der Integrität der Firmware oder Software ermöglicht, die auf einem geschützten Gerät abläuft. Bei einem Sensor kann so beispielsweise die Integrität der den Sensor oder die Messungen des Sensors steuernden Firmware oder Software geschützt werden.
  • Der Einsatz von asymmetrischer Kryptographie erleichtert die Handhabung des Schutzes für eine Vielzahl unterschiedlicher zu schützender Geräte eines oder einer Vielzahl unterschiedlicher Gerätehersteller.
  • Durch die in den abhängigen Ansprüchen aufgeführten Maßnahmen sind vorteilhafte Weiterbildungen und Verbesserungen möglich.
  • Vorzugsweise umfasst das erste Datenpaket eine Verknüpfung einer Identifikation des ersten Geräts mit dem ersten zeitvarianten Parameter und ein Message Authentication Code wird abhängig von der Verknüpfung erzeugt und übermittelt. Dies ermöglicht zusätzlichen Integritätsschutz der übertragen Daten.
  • Vorzugsweise ist vorgesehen, dass der private Schlüssel in einem vertrauenswürdigen Bereich, insbesondere einer Physically Unclonable Function (PUF) oder ein Trusted Platform Module (TPM), abgelegt wird. Dies erhöht die Sicherheit zusätzlich, insbesondere wenn die verwendete Hardware so ausgebildet ist, dass, außer dem vom Hersteller vorgesehenen Datenzugriff, kein anderer zerstörungsfreier Zugriff auf den vertrauenswürdigen Bereich möglich ist.
  • Vorzugsweise ist der zeitvariante Parameter eine Zufallszahl, ein Teil einer Zufallszahl oder eine Zahl, die aus der Anwendung einer Funktion auf eine Zufallszahl berechnet wurde ist. Die Verwendung von Zufallszahlen erhöht die Resistenz gegen Replay Angriffe zusätzlich.
  • Vorzugsweise wird das zweite Datenpaket in Teile bestimmter (Bit-)Länge unterteilt und zumindest ein Teil des zweiten Datenpakets wird mit anderer, vom zweiten Gerät an das erste Gerät zu sendender, Information verknüpft übermittelt. Dadurch ist die Signalübertragung besonders effizient. Dies gilt vor allem wenn vorzugsweise die niedrigstwertigen Bits der anderen zu sendenden Information durch die Verknüpfung mit einem oder mehreren Teilen des zweiten Datenpakets ersetzt werden.
  • Vorzugsweise ist ein Error-Correction-Code als zusätzlicher Wert, der übermittelt und beim Empfänger ausgewertet wird, zur Übermittlung des zweiten Datenpakets und bei einer erkannten Manipulation eine Korrektur mittels Error-Correction-Code vorgesehen. Dadurch wird die Verlässlichkeit der Übertragung gesteigert.
  • Vorzugsweise ist bei einer erkannten Manipulation eine wiederholte Übertragung des betroffenen zweiten Datenpakets oder eine Abschaltung des ersten Geräts, der zweiten Geräts oder eines Systems zu dem mindestens eines der Geräte gehört vorgesehen. Dadurch wird entweder die Robustheit gegenüber Übertragungsfehlern gesteigert oder ein besonders sicheres System umgesetzt.
  • Ausführungsbeispiele der Erfindung sind in den Zeichnungen dargestellt und in der nachfolgenden Beschreibung näher erläutert.
  • Es zeigen:
  • 1 eine schematische Darstellung eines Teils eines Systems zum Manipulationsschutz,
  • 2 ein Signalflussdiagramm.
  • 1 zeigt schematisch eine Darstellung eines Teils eines Systems 100 zum Manipulationsschutz umfassend ein erstes Gerät 110 und ein zweites Gerät 120.
  • Das erste Gerät 110 umfasst eine erste Netzwerkschnittstelle 111. Das zweite Gerät 120 umfasst eine zweite Netzwerkschnittstelle 121. Die erste Netzwerkschnittstelle 111 und die zweite Netzwerkschnittstelle 121 sind so ausgebildet, dass sie über eine Datenverbindung 190 zum Datenaustausch miteinander verbindbar sind. Zum Datenaustausch ist bevorzugt eine digitale PSI5-Schnittstelle vorgesehen. Genauso kann beispielsweise ein Feldbus wie ein Controller Area Network vorgesehen sein. Andere kabelgebundene Datenverbindungen oder drahtlose Datenverbindungen wie WLAN sowie beliebige Protokolle zur Netzwerkkommunikation, wie z.B. das Internet Protocol / Transmission Control Protocol können ebenfalls vorgesehen sein. Die Netzwerkschnittstellen 111 und 121 sind in diesem Fall entsprechend angepasst.
  • Das erste Gerät 110 umfasst einen Speicherbereich 112, beispielsweise einen Electrically Eraseable Programmable Read Only Memory (EEPROM) auf dem im Beispiel ein öffentlicher Schlüssel PKCA eines aus dem öffentlichen Schlüssel PKCA und dem geheimen Schlüssel SKCA bestehenden ersten Schlüsselpaares PKCA, SKCA eines asymmetrischen Verschlüsselungs- oder Signaturverfahrens gespeichert ist.
  • Das zweite Gerät 120 umfasst einen vertrauenswürdigen Bereich 122, beispielsweise eine Physically Unclonable Function (PUF) oder ein Trusted Platform Module (TPM) in dem ein dem zweiten Gerät 120 zugeordneter geheimer Schlüssel PKS eines aus einem dem zweiten Gerät zugeordneten öffentlichen Schlüssel PKS und dem geheimen Schlüssel SKS bestehenden Schlüsselpaares PKS, SKS desselben asymmetrischen Verschlüsselungsverfahrens abgelegt ist.
  • Als asymmetrisches Verschlüsselungs- oder Signaturverfahren wird beispielsweise ein RSA oder als Signaturverfahren ein Elliptic Curve Digital Signature Algorithm (ECDSA) Verfahren verwendet.
  • Das erste Gerät 110 umfasst zudem einen nicht flüchtigen Speicher 113, beispielsweise einen Flash-EEPROM, auf dem zur Ausführung im Betrieb des ersten Geräts 110 vorgesehene Programmanweisungen oder Daten, beispielsweise eine Firmware oder Software, abgespeichert sind.
  • Das erste Gerät 110 umfasst zudem einen Prozessor 114, der mit der zweiten Netzwerkschnittstelle 111, Speicherbereich 112 und dem nicht flüchtigen Speicher 113 zur Kommunikation, beispielsweise über einen nicht dargestellten Datenbus, verbunden ist.
  • Der Prozessor 114 ist ausgebildet, die Anweisungen zum Betrieb des ersten Geräts 110 bei Start des Systems 100 auszuführen und dazu mittels der ersten Netzwerkschnittstelle 111 mit dem zweiten Gerät 120 zu kommunizieren.
  • Der Prozessor 114 ist zudem ausgebildet, die das im Folgenden beschriebene Verfahren zum Manipulationsschutz auszuführen.
  • Das zweite Gerät 120 umfasst einen nicht flüchtigen Speicher 123, beispielsweise einen Flash-EEPROM, auf dem zur Ausführung im Betrieb des zweiten Geräts 120 vorgesehene Programmanweisungen oder Daten, beispielsweise eine Firmware oder Software, abgespeichert sind.
  • Das zweite Gerät 120 umfasst zudem einen Prozessor 124, der mit der zweiten Netzwerkschnittstelle 121, dem vertrauenswürdigen Bereich 122 und dem nicht flüchtigen Speicher 123 zur Kommunikation, beispielsweise über einen nicht dargestellten Datenbus, verbunden ist.
  • Der Prozessor 124 ist ausgebildet, die Anweisungen zum Betrieb des zweiten Geräts 120 bei Start des Systems 100 auszuführen und dazu mittels der zweiten Netzwerkschnittstelle 121 mit dem zweiten Gerät 110 zu kommunizieren.
  • Der Prozessor 124 ist zudem ausgebildet, die das im Folgenden beschriebene Verfahren zum Manipulationsschutz auszuführen.
  • Durch das im Folgenden beschriebene Beispiel wird die Integrität der Anweisungen und Daten zum Betrieb des zweiten Geräts 120 vor Manipulation geschützt. Das Verfahren wird dabei anhand des Beispiels einer Firmware FWS' beschrieben, ist jedoch auf andere Anweisungen und Daten genauso anwendbar. Im Folgenden Beispiel ist das erste Gerät 110 ein Steuergerät E und das zweite Gerät 120 ein Sensor S. Das Verfahren ist jedoch auch auf andere Geräte genauso anwendbar.
  • Vor dem Start des Verfahrens wird von einer Zertifizierungsstelle CA, beispielsweise eine Certificate Authority, mittels ihres ersten Schlüsselpaares PKCA, SKCA, aus einem Hashwert h'(FWS') der Firmware FWS' eine erste Signatur SigCA(h'(FWS')) erzeugt. Beispielsweise wird der Hashwert mit einer MD5 oder ein SHA-1 Hashfunktion erzeugt. Zudem wird eine zweite Signatur SigCA(PKS) des öffentlichen Schlüssels des zweiten Schlüsselpaares PKS, SKS erzeugt.
  • Beispielsweise erzeugt die Zertifizierungsstelle CA als eine verbundene Signatur SigCA(...) entweder eine integrierte Signatur SigCA(h'(FWS')|PKS) oder zwei Signaturen SigCA(h'(FWS'), r), SigCA(PKS, r) mit gemeinsamem aber zufälligem Wert r.
  • Dazu erzeugt der Hersteller des Sensors S den Hashwert h'(FWS') und übermittelt ihn der Zertifizierungsstelle CA zusammen mit seinem öffentlichen Schlüssel PKS und der Firmware FW.
  • Die Zertifizierungsstelle CA sendet die verbundene Signatur SigCA(...) an den Hersteller des Steuergeräts E.
  • Nach Empfang der verbundenen Signatur SigCA(...) beschafft der Hersteller E auch die öffentlichen Schlüssel aller gewünschten vertrauenswürdigen Zertifizierungsstellen, insbesondere den öffentlichen Schlüssel PKCA der Zertifizierungsstelle CA, der wie oben beschrieben im Speicherbereich 112 abgelegt wird.
  • Zudem ist im Sensor S und im Steuergerät E eine Identifikation des jeweiligen Geräts in einem der erwähnten Speicher abgelegt. Als Identifikation dient beispielsweise eine jeweilige Seriennummern oder Teile davon. Jede andere Identifikation, beispielsweise eine Alphanummerische Zeichenfolge, kann ebenfalls verwendet werden.
  • Das Verfahren beginnt beispielsweise wenn der Sensor S und das Steuergerät E miteinander über die jeweilige Netzwerkschnittstelle und Datenverbindung verbunden werden. Im Beispiel werden der Sensor S und das Steuergerät E dazu in einem Fahrzeug verbaut und miteinander verbunden. Das Verfahren kann beispielsweise bei jedem Fahrzeugneustart oder auch in belieben vorgebbaren Zeitabständen wiederholt werden.
  • 2 stellt einen Signalfluss dar, anhand dessen das Verfahren im Folgenden erläutert wird. Der Sensor S und das Steuergerät E sind in 2 entsprechend mit S bzw. E gekennzeichnet.
  • Nach dem Start beginnt eine Authentifizierungsphase in der in einem Schritt 201 ein erstes Datenpaket DK1 erzeugt wird. Zur Authentifizierung wird im Beispiel ein gemeinsamer symmetrischer Authentifizierungsschlüssel K beispielsweise eines AES 128 oder PRESENT Verschlüsselungsverfahrens verwendet. Dieser ist im Beispiel in jedem der Geräte in einem der Speicher gespeichert. Die Authentifizierung ist jedoch auch mit anderen Verschlüsselungs- oder Authentifizierungsverfahren, beispielsweise unter Verwendung der abgespeicherten asymmetrischen Schlüssel möglich. Weiterhin kann eine im sicheren Speicher abgelegte Tabelle mit challenge-response-Paaren verwendet werden.
  • Dabei wird das erste Datenpaket DK1 als challenge an den Sensor S gesendet. Dieser erzeugt im vertrauenswürdigen Bereich daraus eine Response. Im Beispiel wird mittels des PUF und des darin enthaltenen kryptographischen geheimen Schlüssels SKS die Response durch Verschlüsselung des ersten Datenpakets DK1 erzeugt. Alternativ könnte auch ein vom TPM als Antwort auf das erste Datenpaket DK1 erzeugtes Messergebnis als Response verwendet werden.
  • Das erste Datenpaket DK1 umfasst einen ersten zeitvarianten Parameter. Der zeitvariante Parameter ist beispielsweise eine Zufallszahl ch, ein Teil einer Zufallszahl oder eine Zahl, die aus der Anwendung einer Funktion auf eine Zufallszahl berechnet wurde ist. Die Verwendung einer ohne Kenntnis des Berechnungsalgorithmus, also für einen Angreifer, nicht von einer Zufallszahl unterscheidbaren berechneten Zahl, beispielsweise einer Pseudozufallszahl, ist ebenfalls möglich.
  • Im Folgenden wird das Verfahren am Beispiel der Zufallszahl ch erläutert. Die Zufallszahl wird beispielweise als 64 Bit Zufallszahl ch im Steuergerät E erzeugt.
  • Das erste Datenpaket DK1 umfasst im Beispiel zudem eine Identifikation des Steuergeräts E, beispielsweise die Seriennummer idR des Steuergeräts E. Die Seriennummer idR hat beispielsweise die Länge 32 Bit.
  • Das erste Datenpaket D1 wird dabei als Verknüpfung der Zufallszahl ch mit der Seriennummer idR erzeugt: D1 = ch||idR.
  • Das erste Datenpaket DK1 wird in einer Nachricht 202 durch das Steuergerät E gesendet und vom Sensor S empfangen wird
  • Nach Empfang der Nachricht 202 verschlüsselt der Sensor S in einem Schritt 203 die Nachricht 202 mittels des gemeinsamen symmetrischen Authentifizierungsschlüssels K zu einem verschlüsselten Datenpaket DK = EncK(ch||idR).
  • Anschließend sendet der Sensor eine Nachricht 204 an das Steuergerät E. Die Nachricht 204 umfasst eine Verknüpfung EncK(ch||idR)||idS der verschlüsselten Nachricht 202 mit der Seriennummer idS des Sensors, im Beispiel der Seriennummer idS des Sensors S. Die Seriennummer idS hat beispielsweise die Länge 32 Bit.
  • Nach Senden der Nachricht 202 verschlüsselt das Steuergerät E die Nachricht 202 ebenfalls in einem Schritt 205 mit dem gemeinsamen symmetrischen Authentifizierungsschlüssel K zu einem weiteren verschlüsselten Datenpaket DK' = EncK(ch||idR).
  • Nach Empfang der Nachricht 204 vergleicht das Steuergerät E die Seriennummer idS des Sensors S aus der Nachricht 204 in einem Schritt 206 mit der erwarteten Seriennummer idS'. Die erwartete Seriennummer idS' wird beispielsweise im Rahmen des Einbaus im Steuergerät E passend zu dem dann verbauten Sensor S in einem der Speicher abgelegt. Zudem wird im Schritt 206 das verschlüsselte Datenpaket DK mit dem weiteren verschlüsselten Datenpaket DK' verglichen.
  • Wenn die Seriennummer idS mit der erwarteten Seriennummer idS' übereinstimmt, und das verschlüsselte Datenpaket DK mit dem weiteren verschlüsselten Datenpaket DK' übereinstimmt, hat sich der Sensor S gegenüber dem Steuergerät E erfolgreich authentifiziert.
  • Im Beispiel wird das verschlüsselte Datenpaket DK mittels der DUF erzeugt. Statt dessen kann auch eine Messung des TPM verwendet werden. In diesem Fall wird anstelle des weiteren verschlüsselten Datenpakets DK' eine Tabelle von Challenge-Response Werten vorgesehen. Das Datenpaket DK umfasst in diesem Falle die Response und durch einen Vergleich der Response, d.h. des Messergebnisses, mit einer erwarteten Response aus der Tabelle wird die Authethifizierung bei Übereinstimmung bestätigt.
  • Nach Empfang der Nachricht 202 wird vom Sensor S in einem Schritt 207 ein zweites Datenpaket DK2 erzeugt.
  • Dazu wird vom Sensor S im vertrauenswürdigen Bereich der weitere Hashwert h(FWS) der zum Betrieb des Sensors S vorgesehenen Firmware FWS erzeugt. Dabei wird dieselbe Hashfunktion, beispielsweise MD5 oder SHA-1 Hashfunktion verwendet, die auch in oben genannter Berechnung des Hashwerts für die Zertifizierungsstelle CA verwendet wurde.
  • Dadurch stimmen die beiden Hashwerte h(FWS) und h'(FWS') nur überein, sofern es sich um dieselbe Firmware handelt, d.h. FWS = FWS'.
  • Dann wird eine Verknüpfung des weiteren Hashwertes h(FWS) mit der Zufallszahl ch und der Seriennummer idS des Sensors S mittels des dem Sensor S zugeordneten privaten Schlüssel SKS des asymmetrischen Verschlüsselungsverfahrens signiert.
  • Dadurch wird das zweite Datenpaket DK2 = sigSKS(h(FWS)||ch||idS) erzeugt. Das zweite Datenpaket DK2 umfasst somit die Signatur und die Verknüpfung.
  • Vorzugsweise wird das zweite Datenpaket DK2 in einem Schritt 208 in N Teile, beispielsweise N Bit bestimmter Länge, unterteilt. Diese werden zusammen mit Nutzdaten m übertragen.
  • Anschließend wird das zweite Datenpaket DK2 vom Sensor S an das Steuergerät E gesendet. Die N Teile werden im Beispiel in N Iterationen in N Nachrichten 209 (1...N) an das Steuergerät übertragen.
  • Alternativ können auch mehrere Teile gemeinsam in weniger als N Nachrichten 203 übertragen werden. Genauso kann das zweite Datenpaket DK2 auch in einer einzigen Nachricht 203 übertragen werden.
  • Im Beispiel wird ein Message Authentication Code (MAC), beispielsweise Cipher Based MAC (CMAC) verwendet. Dazu ist ein gemeinsamer Message Authentication Code Schlüssel kMAC in beiden Geräten beispielsweise in einem der Speicher abgelegt.
  • Der Sensor S unterteilt das zweite Datenpaket DK2 = sigSKS(h(FWS)||ch||idS) in N gleichlange Teile: (s[0], s[1], ..., s[N]) = sigSKS(h(FWS)||ch||idS).
  • Dann erzeugt der Sensor S in N Iterationen durch Anwendung des MAC auf eine Verknüpfung umfassend jeweilige Nutzdaten m[i], die Seriennummern idS des Sensors S, die Seriennummer idR des Steuergeräts E und den jeweiligen Teil s[i] für i = 1...N die N Nachrichten 209: MACkMAC(m[i]||(ch + i)||idS||idR||s[i]).
  • Das Steuergerät E empfängt die Nachrichten 209 und prüft nach Erhalt der N Nachrichten 209 in einem Schritt 210 den Message Authentication Code.
  • Anschließend ermittelt das Steuergerät E in einem Schritt 211 eine weitere Verknüpfung h'(FWS')||ch||idS'. Diese Verknüpfung entspricht dem integren Wert der Firmware, der nicht durch einen anderen als den Erwarteten Sender gesendet und nicht durch einen Replay Angriff erzeugt wurde.
  • Durch den Vergleich der weiteren Verknüpfung h'(FWS')||ch||idS' mit der im zweiten Datenpaket DK2 erhaltenen Verknüpfung h(FWS)||ch||idS wird in einem Schritt 212 die Integrität der Firmware vom Steuergerät E bestätigt.
  • In einem weiteren Vergleich wird in einem Schritt 213 die Signatur sigSKS(h(FWS)||ch||idS) des zweiten Datenpakets DK2 mittels der verbundenen Signatur SigCA(...) verifiziert.
  • Bei erfolgreicher Verifikation und Integritätsprüfung der Firmware, insbesondere bei erfolgreicher Prüfung in den Schritten 210, 211 und 212, wurde keine Manipulation erkannt. Das Verfahren wird dann, gegebenenfalls mit einer bestimmten Zeitverzögerung, oder beim erneuten Einschalten des Steuergeräts E oder Sensors S, wiederholt.
  • Anderenfalls wird in einem Schritt 214 das Steuergerät E oder ein System 100 zu dem das Steuergerät E gehört abgeschaltet, da eine Manipulation erkannt wurde. Genauso kann in diesem Fall vorgesehen sein dem Sensor S eine weitere Nachricht zu senden, die den Sensor S zum Abschalten veranlassen soll.
  • Vorzugsweise ist zum Übertragen der Nachrichten 209 ein Error-Correction-Code zur Übermittlung des zweiten Datenpakets DK2 vorgesehen. In diesem Fall ist vorzugsweise, bei einer erkannten Manipulation im Schritt 214, eine Korrektur mittels des Error-Correction-Code vorgesehen.
  • Genauso kann bei einer erkannten Manipulation im Schritt 214 eine wiederholte Übertragung des betroffenen zweiten Datenpakets vorgesehen sein
  • Falls die oben genannten Daten oder Datenpakete oder Zwischenergebnisse für die kryptographischen Operationen nicht die passende (Bit-)Längen haben kann zudem eine Anpassung der Länge, beispielsweise mittels padding vorgesehen sein.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • DE 102009002396 A1 [0001]

Claims (11)

  1. Verfahren zum Manipulationsschutz, mit den Schritten Empfangen (202) eines von einem ersten Gerät (E, 110) gesendeten ersten Datenpakets (DK1) durch ein zweites Gerät (S, 120), wobei das erste Datenpaket (DK1) einen ersten zeitvarianten Parameter (ch) umfasst; Signieren (207) einer Verknüpfung eines ersten Hashwertes (h) mit dem ersten zeitvarianten Parameter (ch) und einer Identifikation (idS) des zweiten Geräts (S, 120) mittels eines dem zweiten Gerät (S, 120) zugeordneten privaten Schlüssel (SKS) eines asymmetrischen Verschlüsselungsverfahrens, wobei zur Bestimmung des Hashwerts (h) auf dem zweiten Gerät (S, 120) gespeicherte, zur Ausführung im Betrieb des zweiten Geräts vorgesehene Programmanweisungen (FWS) oder Daten (FWS) herangezogen werden; Erzeugen (207) eines zweiten Datenpakets (DK2) umfassend die Signatur und die Verknüpfung; Senden (209) des zweiten Datenpakets (DK2) vom zweiten Gerät (S, 120) an das erste Gerät (E, 110).
  2. Verfahren nach Anspruch 1, wobei das erste Datenpaket (DK1) eine Verknüpfung einer Identifikation (idR) des ersten Geräts (E, 110) mit dem ersten zeitvarianten Parameter (ch) umfasst und wobei ein Message Authentication Code abhängig von der Verknüpfung erzeugt und übermittelt wird.
  3. Verfahren zum Manipulationsschutz, mit den Schritten Senden (202) eines ersten Datenpakets (DK1) durch ein ersten Gerät (E, 110), wobei das erste Datenpaket (DK1) einen ersten zeitvarianten Parameter (ch) umfasst; Empfangen (209) eines zweiten Datenpakets (DK2) durch das erste Gerät (E, 110); Überprüfen (213) einer im zweiten Datenpaket (DK2) enthaltenen Signatur eines asymmetrischen Verschlüsselungsverfahrens mittels eines einem vorbestimmten zweiten Gerät (S, 120) zugeordneten öffentlichen Schlüssels (PKS); Berechnen (211) eines Vergleichswertes für einen bestimmten Teil der im zweiten Datenpaket (DK2) enthaltenen Daten durch Verknüpfung eines vorbestimmten Hashwerts (h'), dem ersten zeitvarianten Parameter (ch) und einer vorbestimmten Identifikation (idS') des vorbestimmten zweiten Geräts (S, 120), wobei zur Bestimmung des vorbestimmten Hashwerts (h') zur Ausführung im Betrieb des vorbestimmten zweiten Geräts (S, 120) vorgesehene Programmanweisungen (FSW') oder Daten (FSW') herangezogen wurden; Vergleichen (212) des Vergleichswerts mit dem bestimmten Teil; Erkennen (214) einer Manipulation abhängig vom Vergleichsergebnis.
  4. Verfahren nach Anspruch 3, wobei das erste Datenpaket (DK1) eine Verknüpfung einer Identifikation (idR) des ersten Geräts (E, 110) mit dem ersten zeitvarianten Parameter (ch) umfasst und wobei ein abhängig von der Verknüpfung erzeugter Message Authentication Code empfangen (210) und geprüft wird.
  5. Verfahren nach einem der vorhergehenden Ansprüche, wobei vorgesehen ist, dass der private Schlüssel (SKS) in einem vertrauenswürdigen Speicherbereich (122), insbesondere einer Physically Unclonable Function (PUF) oder ein Trusted Platform Module (TPM), abgelegt wird.
  6. Verfahren nach einem der vorhergehenden Ansprüche, wobei der zeitvariante Parameter (ch) eine Zufallszahl, ein Teil einer Zufallszahl, eine Zahl, die aus der Anwendung einer Funktion auf eine Zufallszahl berechnet wurde oder einer nicht von einer Zufallszahl unterscheidbaren Zahl ist.
  7. Verfahren nach einem der Vorhergehenden Ansprüche, wobei das zweite Datenpaket (DK2) in Teile (s[i]) bestimmter Bit Länge unterteilt wird und wobei zumindest ein Teil (s[i]) des zweiten Datenpakets (DK2) mit anderer, vom zweiten Gerät (S, 120) an das erste Gerät (E, 110) zu sendender, Information (m[i]) verknüpft übermittelt wird.
  8. Verfahren nach einem der vorherigen Ansprüche, wobei ein Error-Correction-Code zur Übermittlung mit dem zweiten Datenpakets (DK2) vorgesehen ist und wobei bei einer erkannten Manipulation eine Korrektur mittels Error-Correction-Code vorgesehen ist.
  9. Verfahren nach einem der vorherigen Ansprüche, wobei bei einer erkannten Manipulation eine wiederholte Übertragung des betroffenen zweiten Datenpakets oder eine Abschaltung des ersten Geräts (E, 110), des zweiten Geräts (S, 120) oder eines Systems (100) zu dem mindestens eines der Geräte gehört vorgesehen ist.
  10. Vorrichtung (S, E) zum Ausführen eines Manipulationsschutzes nach einem der Ansprüche 1 bis 9.
  11. Computerprogramm, eingerichtet die Schritte eines Verfahrens nach einem der Ansprüche 1 bis 9 durchzuführen.
DE102015202935.2A 2015-02-18 2015-02-18 Verfahren zum Manipulationsschutz Pending DE102015202935A1 (de)

Priority Applications (4)

Application Number Priority Date Filing Date Title
DE102015202935.2A DE102015202935A1 (de) 2015-02-18 2015-02-18 Verfahren zum Manipulationsschutz
JP2016027932A JP2016152623A (ja) 2015-02-18 2016-02-17 操作から保護する方法
US15/046,137 US10461938B2 (en) 2015-02-18 2016-02-17 Method for manipulation protection
CN201610088418.1A CN105897423B (zh) 2015-02-18 2016-02-17 用于操纵保护的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102015202935.2A DE102015202935A1 (de) 2015-02-18 2015-02-18 Verfahren zum Manipulationsschutz

Publications (1)

Publication Number Publication Date
DE102015202935A1 true DE102015202935A1 (de) 2016-08-18

Family

ID=56552461

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102015202935.2A Pending DE102015202935A1 (de) 2015-02-18 2015-02-18 Verfahren zum Manipulationsschutz

Country Status (4)

Country Link
US (1) US10461938B2 (de)
JP (1) JP2016152623A (de)
CN (1) CN105897423B (de)
DE (1) DE102015202935A1 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3554001A1 (de) * 2018-04-11 2019-10-16 Ubirch GmbH Verfahren zum abgesicherten übertragen und verfahren zum abgesicherten bidirektionalen austauschen von elektronischen datenpaketen in einem netzwerk
WO2021165393A1 (de) * 2020-02-19 2021-08-26 Volkswagen Aktiengesellschaft Verfahren zur herstellung eines softwarekopierschutzes für ein lenkungssteuergerät in einem fahrzeug, lenkungssteuergerät und computerprogrammprodukt

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102016215640A1 (de) 2016-08-19 2018-02-22 Robert Bosch Gmbh Verfahren, Sensor und Steuergerät zum Übertragen eines Datenpakets von einem Sensor zu einem Steuergerät
JP6629773B2 (ja) * 2017-02-10 2020-01-15 日本電信電話株式会社 機器リスト作成システム、及び機器リスト作成方法
WO2019031627A1 (ko) * 2017-08-09 2019-02-14 주식회사 센스톤 가상코드제공시스템, 가상코드생성장치, 가상코드검증장치, 가상코드제공방법 및 가상코드제공프로그램
WO2019064658A1 (en) * 2017-09-28 2019-04-04 Yokogawa Electric Corporation SYSTEMS AND METHODS FOR SECURING FLUID DISTRIBUTION SYSTEMS
US10693662B2 (en) * 2018-02-22 2020-06-23 Idlogiq Inc. Methods for secure serialization of supply chain product units
EP3791546B1 (de) * 2018-05-10 2022-10-12 Telecom Italia S.p.A. Schutz von signalisierungsnachrichten in einer hop-by-hop-netzwerkkommunikationsverbindung
DE102018213618A1 (de) * 2018-06-20 2019-12-24 Robert Bosch Gmbh Kryptografiemodul und Betriebsverfahren hierfür
JPWO2022044142A1 (de) * 2020-08-26 2022-03-03

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102009002396A1 (de) 2009-04-15 2010-10-21 Robert Bosch Gmbh Verfahren zum Manipulationsschutz eines Sensors und von Sensordaten des Sensors und einen Sensor hierzu

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9843447B1 (en) * 1999-09-09 2017-12-12 Secure Axcess Llc Authenticating electronic content
JP2003514464A (ja) * 1999-11-12 2003-04-15 ジェネラル・インスツルメント・コーポレーション オブジェクトセキュリティのインプレメンテーション
JP2005202503A (ja) * 2004-01-13 2005-07-28 Hitachi Ltd 車載情報装置、車載機器管理システム、車両の制御機器のプログラムのバージョンアップ情報の配信方法、車両の制御機器のプログラムのバージョンアップ方法及び車両の制御機器のプログラムのバージョンアップシステム
US20130227653A1 (en) * 2008-11-29 2013-08-29 Yu Yung Choi System and method for streamlined registration of products over a communication network and for verification and management of information related thereto
JP2010011400A (ja) * 2008-06-30 2010-01-14 National Institute Of Advanced Industrial & Technology 共通鍵方式の暗号通信システム
DE102009000869A1 (de) * 2009-02-16 2010-08-19 Robert Bosch Gmbh Verfahren und Vorrichtung zur manipulationssicheren Übertragung von Daten
DE102009045133A1 (de) * 2009-09-29 2011-03-31 Robert Bosch Gmbh Verfahren zum Manipulationsschutz von Sensordaten und Sensor hierzu
CN102325131B (zh) * 2011-07-20 2013-11-06 北京邮电大学 无线传感器网络节点双向身份认证方法
DE102011081036A1 (de) * 2011-08-16 2013-02-21 Siemens Aktiengesellschaft Verfahren zum Aussenden von Nachrichten mit Integritätsschutz
JP5949572B2 (ja) * 2013-01-18 2016-07-06 トヨタ自動車株式会社 車両不正状態検出方法、車載システムにおける制御方法、およびシステム
DE102013206185A1 (de) * 2013-04-09 2014-10-09 Robert Bosch Gmbh Verfahren zur Erkennung einer Manipulation eines Sensors und/oder von Sensordaten des Sensors
US9734870B2 (en) * 2015-01-05 2017-08-15 Gopro, Inc. Media identifier generation for camera-captured media

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102009002396A1 (de) 2009-04-15 2010-10-21 Robert Bosch Gmbh Verfahren zum Manipulationsschutz eines Sensors und von Sensordaten des Sensors und einen Sensor hierzu

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3554001A1 (de) * 2018-04-11 2019-10-16 Ubirch GmbH Verfahren zum abgesicherten übertragen und verfahren zum abgesicherten bidirektionalen austauschen von elektronischen datenpaketen in einem netzwerk
WO2019197473A1 (de) * 2018-04-11 2019-10-17 Ubirch Gmbh Verfahren zum abgesicherten übertragen und verfahren zum abgesicherten bidirektionalen austauschen von elektronischen datenpaketen in einem netzwerk
CN112154625A (zh) * 2018-04-11 2020-12-29 乌比克有限公司 用于在网络中安全传输电子数据分组的方法以及用于在网络中安全双向交换电子数据分组的方法
WO2021165393A1 (de) * 2020-02-19 2021-08-26 Volkswagen Aktiengesellschaft Verfahren zur herstellung eines softwarekopierschutzes für ein lenkungssteuergerät in einem fahrzeug, lenkungssteuergerät und computerprogrammprodukt

Also Published As

Publication number Publication date
JP2016152623A (ja) 2016-08-22
CN105897423A (zh) 2016-08-24
US10461938B2 (en) 2019-10-29
US20160241404A1 (en) 2016-08-18
CN105897423B (zh) 2022-02-11

Similar Documents

Publication Publication Date Title
DE102015202935A1 (de) Verfahren zum Manipulationsschutz
DE102013203415B4 (de) Erstellen eines abgeleiteten Schlüssels aus einem kryptographischen Schlüssel mittels einer physikalisch nicht klonbaren Funktion
DE102011120968B4 (de) Erzeugen von sicheren Schlüsseln auf Anforderung
DE102010042539B4 (de) Datensender mit einer sicheren, aber effizienten Signatur
EP2522101B1 (de) Verfahren zur sicheren unidirektionalen übertragung von signalen
DE102018216915A1 (de) System und Verfahren für sichere Kommunikationen zwischen Steuereinrichtungen in einem Fahrzeugnetzwerk
EP2765752B1 (de) Verfahren zum versehen eines mobilen endgeräts mit einem authentisierungszertifikat
EP3123689B1 (de) Verfahren und system zur verbesserung der datensicherheit bei einem kommunikationsvorgang
DE102017125826A1 (de) Nachrichtenauthentifizierung über controller area network
DE102013022383B3 (de) Verfahren und Vorrichtung zur Zertifikaterzeugung mit Privatsphärenschutz
KR20160104565A (ko) 통신 시스템 및 통신 장치
DE102018100157A1 (de) Verfahren und Vorrichtung zur Entschlüsselung, Verschlüsselung und Authentifizierung
DE102014204713A1 (de) Erzeugung von Schlüsseln unter Verwendung sicherer Hardware
DE102013215970A1 (de) Einzigartiger Code in einer Nachricht für eine Signaturerzeugung in einem asymetrischen Kryptographiegerät
DE102019113026A1 (de) Automobile nonce-missbrauchs-widerstandsfähige authentifizierte verschlüsselung
DE102016210786A1 (de) Komponente zur Anbindung an einen Datenbus und Verfahren zur Umsetzung einer kryptografischen Funktionalität in einer solchen Komponente
DE102020121533A1 (de) Vertrauenswürdige authentifizierung von automotiven mikrocon-trollern
EP2805446A1 (de) Funktion zur challenge-ableitung zum schutz von komponenten in einem challenge-response authentifizierungsprotokoll
EP3422628B1 (de) Verfahren, sicherheitseinrichtung und sicherheitssystem
EP3337085B1 (de) Nachladen kryptographischer programminstruktionen
EP3465513B1 (de) Nutzerauthentifizierung mittels eines id-tokens
DE102012210327A1 (de) Verfahren zum Übertragen von Nachrichten in einem Kommunikationssystem, insbesondere eines Fahrzeugs
EP3556071B1 (de) Verfahren, vorrichtung und computerlesbares speichermedium mit instruktionen zum signieren von messwerten eines sensors
DE102015225651A1 (de) Verfahren und Vorrichtung zum Übertragen einer Software
DE102012208836A1 (de) Verfahren und Vorrichtung zur Erzeugung kryptographisch geschützter redundanter Datenpakete

Legal Events

Date Code Title Description
R012 Request for examination validly filed