DE102022129335A1 - Integritätsvalidierung von Daten - Google Patents

Integritätsvalidierung von Daten Download PDF

Info

Publication number
DE102022129335A1
DE102022129335A1 DE102022129335.1A DE102022129335A DE102022129335A1 DE 102022129335 A1 DE102022129335 A1 DE 102022129335A1 DE 102022129335 A DE102022129335 A DE 102022129335A DE 102022129335 A1 DE102022129335 A1 DE 102022129335A1
Authority
DE
Germany
Prior art keywords
processing unit
application module
module
storage device
computer
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
DE102022129335.1A
Other languages
English (en)
Inventor
Mohamed Atteya Elsharnopy
Mennatallah Maged Hassan Elsay Elbahtity
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.)
Valeo Schalter und Sensoren GmbH
Original Assignee
Valeo Schalter und Sensoren 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 Valeo Schalter und Sensoren GmbH filed Critical Valeo Schalter und Sensoren GmbH
Priority to DE102022129335.1A priority Critical patent/DE102022129335A1/de
Publication of DE102022129335A1 publication Critical patent/DE102022129335A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

Zur Integritätsvalidierung von Daten, die in zumindest einem ersten Speichergerät (6) gespeichert sind, welches ein Urladermodul (11) und zumindest ein Anwendungsmodul (12, 12a, 12b) in jeweiligen logischen Blöcken speichert, wird ein jeweiliger CRC-Wert (13, 13_11, 13_12a, 13_12b) für jeden der logischen Blöcke von dem Urladermodul (11) berechnet und auf ein zweites Speichergerät (7) gespeichert. Die berechneten CRC-Werte (13, 13_11, 13_12a, 13_12b) werden von einem ersten Anwendungsmodul (12a) des zumindest einen Anwendungsmoduls (12, 12a, 12b) aus dem zweiten Speichergerät (7) gelesen; und ein gemeinsamer Hash-Wert (18) zur Validierung der Integrität des Urladermoduls (11) und des zumindest einen Anwendungsmoduls (12, 12a, 12b) wird von dem ersten Anwendungsmodul (12a) abhängig von den ausgelesenen CRC-Werten (13, 13_11, 13_12a, 13_12b) unter Verwendung einer vordefinierten Hash-Funktion berechnet.

Description

  • Die vorliegende Erfindung ist auf ein computerimplementiertes Verfahren zur Integritätsvalidierung von Daten gerichtet, die in einem nichtflüchtigen ersten Speichergerät einer Verarbeitungseinheit gespeichert sind, wobei das erste Speichergerät ein Urladermodul und zumindest ein Anwendungsmodul in jeweiligen logischen Blöcken speichert. Die Erfindung ist weiter auf eine entsprechende Verarbeitungseinheit, eine Verarbeitungsanordnung, die eine derartige Verarbeitungseinheit beinhaltet, ein Kraftfahrzeug, das eine derartige Verarbeitungsanordnung beinhaltet, sowie Computerprogrammprodukte gerichtet.
  • Bei Verarbeitungseinheiten, insbesondere bei eingebetteten Systemen, zum Beispiel bei Applikationen im Automobilbereich, können unterschiedliche Softwaremodule, einschließlich Anwendungsmodulen, die Software enthalten, die es der Verarbeitungseinheit erlauben, spezifische Anwendungen auszuführen, auf einem nichtflüchtigen Speicher, insbesondere einem Festwertspeicher, ROM (englisch: read-only memory), oder einem Flash-Speicher oder einem elektrisch löschbaren Festwertspeicher, EEPROM (englisch: electrically erasable programmable read-only memory), gespeichert sein.
  • Es ist wünschenswert, mögliche böswillige Manipulationen oder versehentliche Änderungen der gespeicherten Daten detektieren zu können. Es ist allgemein bekannt, zyklische Redundanzüberprüfung, CRC (englisch: cyclic redundancy check) zur Detektion von Fehlern oder Änderungen in digitalen Daten zu verwenden. Dabei werden jeweilige CRC-Werte für Datenblöcke gemäß einem bekannten Algorithmus, zum Beispiel CRC32, berechnet. Falls der CRC-Wert eines bestimmten Datenblocks verändert wird, kann eine Korrekturmaßnahme eingeleitet werden.
  • Das Dokument US 2014/0301550 A1 beschreibt ein Verfahren zur Datenübertragung zwischen einem Sensor und einer elektronischen Steuer- und/oder Regelungseinheit, ECU, wobei Manipulationen der übertragenen Sensordaten und/oder des Sensors erkannt werden. Ein Sitzungsschlüssel kann von der ECU abhängig von einem geheimen Schlüssel verschlüsselt werden. Der geheime Schlüssel wird sowohl in dem Sensor als auch in der ECU in einem Speicher gespeichert. Ein kryptographischer Algorithmus, der von dem Sensor verwendet wird, um den empfangenen verschlüsselten Sitzungsschlüssel zu entschlüsseln und den Sitzungsschlüssel ermitteln, kann derselbe Algorithmus sein, der auch von dem Sensor verwendet wird, um ein MAC über zumindest einen Teil der zu übertragenden Sensordaten während der Verwendung des Sitzungsschlüssels zu erzeugen.
  • Eine Aufgabe der vorliegenden Erfindung ist es, die Datensicherheit von Daten, die auf einem nichtflüchtigen Speicher einer Verarbeitungseinheit gespeichert sind, angesichts möglicher Manipulationen zu erhöhen.
  • Diese Aufgabe wird durch den jeweiligen Gegenstand der unabhängigen Ansprüche erreicht. Weitere Ausführungen und bevorzugte Ausführungsformen sind Gegenstand der abhängigen Ansprüche.
  • Die Erfindung beruht auf dem Gedanken, die CRC-Werte von Daten, die in zumindest einem ersten Speichergerät gespeichert sind, mittels eines Urladermoduls (englisch: bootloader module) zu berechnen und die berechneten CRC-Werte auf ein zweites Speichergerät zu speichern, auf das von dem Urladermodul sowie von einem Anwendungsmodul zugegriffen werden kann. Das Anwendungsmodul kann dann die CRC-Werte auslesen und einen gemeinsamen Hash-Wert zur Datenintegritätsvalidierung basierend auf ihnen berechnen.
  • Erfindungsgemäß wird ein computerimplementiertes Verfahren zur Integritätsvalidierung von Daten in zumindest einem nichtflüchtigen ersten Speichergerät einer Verarbeitungseinheit bereitgestellt. Dabei speichert das zumindest eine erste Speichergerät ein Urladermodul und zumindest ein Anwendungsmodul in jeweiligen logischen Blöcken. Ein jeweiliger zyklischer Redundanzüberprüfungswert wird für jeden der logischen Blöcke von dem Urladermodul berechnet und, insbesondere von dem Urladermodul, auf ein nichtflüchtiges zweites Speichergerät der Verarbeitungseinheit, insbesondere auf einen Sektor des zweiten Speichergeräts, gespeichert. Die berechneten CRC-Werte, insbesondere alle der berechneten CRC-Werte, werden von einem ersten Anwendungsmodul des zumindest einen Anwendungsmoduls aus dem zweiten Speichergerät gelesen. Ein gemeinsamer Hash-Wert zur Validierung der Integrität des Urladermoduls und des zumindest einen Anwendungsmoduls wird von dem ersten Anwendungsmodul abhängig von den ausgelesenen CRC-Werten, insbesondere abhängig von allen der CRC-Werte, unter Verwendung einer vordefinierten Hash-Funktion berechnet.
  • Soweit nicht anders angegeben, können alle Schritte des computerimplementierten Verfahrens von einer Recheneinheit durchgeführt werden, die zum Beispiel eine Recheneinheit eines Fahrzeugs, insbesondere eines Kraftfahrzeugs, ist. Die Recheneinheit beinhaltet die Verarbeitungseinheit oder besteht bei manchen Ausführungen aus der Verarbeitungseinheit. Die Verarbeitungseinheit kann zum Beispiel als ein Mikrocontroller implementiert sein oder einen solchen beinhalten. Die Verarbeitungseinheit kann zum Beispiel als ein Einchip-System, SoC (englisch: systemon-a-chip) implementiert sein. Bei manchen Ausführungen kann die Recheneinheit als ein SoC, das den Mikrocontroller beinhaltet, implementiert sein. Bei manchen Ausführungen kann die Recheneinheit auch als eine elektronische Steuereinheit, ECU (englisch: electronic control unit), des Fahrzeugs implementiert sein. Bei verschiedenen Ausführungsformen beinhaltet die Recheneinheit eine oder mehrere Hardware- und/oder Softwareschnittstellen und/oder eine oder mehrere weitere Speichereinheiten. Eine weitere Speichereinheit kann als flüchtiger Datenspeicher, beispielsweise als dynamischer Speicher mit wahlfreiem Zugriff, DRAM (englisch: „dynamic random access memory“) oder statischer Speicher mit wahlfreiem Zugriff, SRAM (englisch: „static random access memory“), oder als nicht-flüchtiger Datenspeicher, beispielsweise als Festwertspeicher, ROM (englisch: „read-only memory“), als programmierbarer Festwertspeicher, PROM (englisch: „programmable read-only memory“), als löschbarer programmierbarer Festwertspeicher, EPROM (englisch: „erasable programmable read-only memory“), als elektrisch löschbarer programmierbarer Festwertspeicher, EEPROM (englisch: „electrically erasable programmable read-only memory“), als Flash-Speicher oder Flash-EEPROM, als ferroelektrischer Speicher mit wahlfreiem Zugriff, FRAM (englisch: „ferroelectric random access memory“), als magnetoresistiver Speicher mit wahlfreiem Zugriff, MRAM (englisch: „magnetoresistive random access memory“) oder als Phasenwechselspeicher mit wahlfreiem Zugriff, PCRAM (englisch: „phase-change random access memory“), implementiert sein.
  • Das zumindest eine erste Speichergerät enthält eine Vielzahl logischer Blöcke oder mit anderen Worten die jeweiligen Speicherplätze der Datenblöcke, die auf dem zumindest einen ersten Speichergerät gespeichert sind, sind entsprechend der Vielzahl logischer Blöcke festgelegt. Das Urladermodul und das zumindest eine Anwendungsmodul sind jeweils in einem entsprechenden der Vielzahl logischer Blöcke gespeichert.
  • Die Daten, die der Integritätsvalidierung gemäß dem computerimplementierten Verfahren unterzogen werden, entsprechen Daten, die auf dem zumindest einen ersten Speichergerät gespeichert sind die dem Urladermodul und dem zumindest einen Anwendungsmodul entsprechen. Das Urladermodul, das im Folgenden auch als Urlader bezeichnet werden kann, und das zumindest eine Anwendungsmodul sind Softwaremodule, die von einer oder mehreren Komponenten der Verarbeitungseinheit, zum Beispiel von einer zentralen Verarbeitungseinheit, CPU (englisch: central processing unit), einem Co-Prozessor und/oder einem Hardwarebeschleuniger ausgeführt werden können. Das Urladermodul ist für das Hochfahren der Verarbeitungseinheit zuständig und hat Zugriff, beispielsweise vollständigen Zugriff, auf das zumindest eine erste Speichergerät, das zumindest einen Teil der für das Hochfahren erforderlichen Daten speichert.
  • Das zweite Speichergerät kann zum Beispiel dynamische und/oder veränderbare Daten speichern, die über unterschiedliche Leistungszyklen (englisch: power cycles) hinweg benötigt werden. Der Urlader hat Zugriff auf das zweite Speichergerät, zum Beispiel vollständigen Zugriff auf alle Sektoren des zweiten Speichergeräts. In jedem Fall hat der Urlader Zugriff auf den gemeinsamen Sektor des zweiten Speichergeräts. Das erste Anwendungsmodul hat ebenso Zugriff auf den gemeinsamen Sektor, insbesondere um die CRC-Werte auszulesen. Andererseits kann es sein, dass das zumindest eine Anwendungsmodul keinen vollständigen Zugriff auf das zumindest eine erste Speichergerät hat, es kann also sein, dass es keinen Zugriff auf alle der Vielzahl logischer Blöcke hat. In diesem Fall ist das zumindest eine Anwendungsmodul nicht dazu in der Lage, alle der CRC-Werte direkt basierend auf den Daten, die in dem zumindest einen ersten Speichergerät gespeichert sind, zu berechnen. Des Weiteren kann es sein, dass das zumindest eine Anwendungsmodul nicht dazu in der Lage ist, seine Hauptausführungsprozesse anzuhalten, um einen Arbeitsauftrag zur Berechnung der CRC-Werte auszuführen.
  • Der gemeinsame Hash-Wert ist ein Ergebnis der auf die Daten angewendeten Hash-Funktion, das von allen der CRC-Werten abhängt. Zum Beispiel können alle CRC-Werte verkettet werden und die Hash-Funktion kann auf die verketteten CRC-Werte angewendet werden. Die Hash-Funktion kann jedoch auch auf Daten angewendet werden, die von den CRC-Werten und von weiteren Informationen abhängen, die zum Beispiel die Vielzahl von logischen Blöcken oder die darin gespeicherten Daten betreffen.
  • Der gemeinsame Hash-Wert kann dazu benutzt werden, die Integrität von Daten zu validieren, die in dem zumindest einen ersten Speichergerät gespeichert sind, insbesondere die Daten, die dem Urladermodul und dem zumindest einen Anwendungsmodul entsprechen. Zu diesem Zweck kann überprüft werden, ob der gemeinsame Hash-Wert, der von dem ersten Anwendungsmodul berechnet wurde, identisch zu einem vorab autorisierten Hash-Wert ist. Falls die auf dem zumindest einen ersten Speichergerät gespeicherten Daten manipuliert worden sind, wird der gemeinsame Hash-Wert nicht mit dem vorab autorisierten Hash-Wert übereinstimmen und die Datenmanipulation kann folglich identifiziert werden. Die Integritätsvalidierung, mit anderen Worten die Überprüfung, ob der gemeinsame Hash-Wert mit dem vorab autorisierten Hash-Wert übereinstimmt, kann zum Beispiel von einer weiteren Recheneinheit durchgeführt werden, die zum Fahrzeug gehören kann oder sich außerhalb des Fahrzeugs befinden kann, zum Beispiel einem Servercomputer. Der gemeinsame Hash-Wert kann von dem ersten Anwendungsmodul an die weitere Recheneinheit ausgegeben werden, die den vorab autorisierten Hash-Wert speichert, und die weitere Recheneinheit kann die Integritätsvalidierung durchführen.
  • Folglich wird die Datensicherheit der auf dem ersten nichtflüchtigen Speicher der Verarbeitungseinheit gespeicherten Daten erhöht. Wird festgestellt, dass der gemeinsame Hash-Wert nicht mit dem vorab autorisierten Hash-Wert übereinstimmt, so ist ein Benutzer, zum Beispiel ein Kraftfahrzeugunternehmen, dazu in der Lage, eine Manipulation oder einen Fehler in der jeweiligen Verarbeitungseinheit zu identifizieren.
  • Gemäß einigen Ausführungen ist das Verarbeitungsgerät als ein Mikrocontroller implementiert.
  • Gemäß einigen Ausführungen ist das zumindest eine erste Speichergerät als zumindest ein Flash-Speicher ROM, Codeflash-Programming-ROM und/oder Flash-EEPROM implementiert.
  • Gemäß einigen Ausführungen ist das zweite Speichergerät als ein Flash-Speicher oder ein Flash-EEPROM implementiert.
  • Gemäß einigen Ausführungen wird zum Berechnen des gemeinsamen Hash-Werts ein Datensatz, der den jeweiligen ausgelesenen CRC-Wert beinhaltet, für jeden der logischen Blöcke, insbesondere durch das erste Anwendungsmodul, erzeugt. Die Datensätze der logischen Blöcke, insbesondere aller der logischen Blöcke, werden verkettet, insbesondere durch das erste Anwendungsmodul. Die Hash-Funktion wird auf die verketteten Datensätze angewendet, insbesondere durch das erste Anwendungsmodul.
  • Die Datensätze der logischen Blöcke können jeweilige Folgen von Werten sein und die verketteten Datensätze sind dann auch eine einzige Folge von Werten. Somit werden Eingangsdaten für die Hash-Funktion auf eine besonders einfache Weise erzeugt.
  • Gemäß einigen Ausführungen beinhaltet der Datensatz für jeden der logischen Blöcke einen Blockidentifikator, auch als Block-ID bezeichnet, des jeweiligen logischen Blocks. Folglich wird das Sicherheitsniveau weiter erhöht.
  • Gemäß einigen Ausführungen beinhaltet der Datensatz für jeden der logischen Blöcke, die eines des zumindest einen Anwendungsmoduls speichern, einen Softwareversionidentifikator, auch als Softwareversion-ID bezeichnet, des jeweiligen Anwendungsmoduls. Alternativ oder zusätzlich beinhaltet der Datensatz für den logischen Block, der das Urladermodul speichert, einen Softwareversionidentifikator des Urladermoduls. Das Sicherheitsniveau wird folglich weiter erhöht.
  • Gemäß einigen Ausführungen wird die Berechnung der CRC-Werte und das Speichern der berechneten CRC-Werte auf das zweite Speichergerät durch das Urladermodul während eines ersten Leistungszyklus der Verarbeitungseinheit, zum Beispiel nach einer Software-Aktualisierung oder als Reaktion auf eine spezifische externe Triggeranforderung, die zum Beispiel von einem Diagnosewerkzeug erhalten wird, ausgeführt. Das Auslesen der berechneten CRC-Werte aus dem zweiten Speichergerät und die Berechnung des gemeinsamen Hash-Werts durch das erste Anwendungsmodul werden während eines zweiten Leistungszyklus der Verarbeitungseinheit nach dem ersten Leistungszyklus ausgeführt.
  • Ein Leistungszyklus kann als eine Zeitdauer zwischen dem Anschalten und dem Abschalten des Verarbeitungsgeräts verstanden werden. Der zweite Leistungszyklus liegt nach dem ersten Leistungszyklus. Der erste und der zweite Leistungszyklus können aufeinanderfolgende Leistungszyklen sein. Zum Beispiel kann der erste Leistungszyklus Teil eines Software-Aktualisierungsvorgangs sein, während dessen zumindest ein Teil der in dem zumindest einen ersten Speichergerät gespeicherten Daten aktualisiert wird. Insbesondere kann das Urladermodul und/oder das zumindest eine Anwendungsmodul geändert oder durch eine jeweilige andere Version während des Software-Aktualisierungsvorgangs ersetzt werden.
  • Folglich werden die CRC-Werte als Teil des Software-Aktualisierungsvorgangs während des ersten Leistungszyklus berechnet. Zum Beispiel können die CRC-Werte während jedes Software-Aktualisierungsvorgangs erneut berechnet oder aktualisiert werden. Folglich kann die Datenintegrität insbesondere kurz oder unmittelbar nach oder zusammen mit dem Software-Aktualisierungsvorgang validiert werden, was eine besonders anfällige Zeit in Bezug auf eine böswillige Datenmanipulation darstellt.
  • Gemäß einigen Ausführungen wird eine CRC32-Funktion verwendet, um die CRC-Werte zu berechnen. Auf diese Weise wird eine zuverlässige und robuste Berechnung der CRC-Werte erreicht.
  • Gemäß einigen Ausführungen ist die Hash-Funktion durch eine vordefinierte kryptographische Hash-Funktion, zum Beispiel eine SHA-2-Hash-Funktion, insbesondere eine SHA-256-Hash-Funktion gegeben.
  • Derartige Hash-Funktionen sind durch eine besonders hohe Preimage-Resistenz und Kollisionsresistenz gekennzeichnet. Folglich wird die Manipulationssicherheit der Integritätsvalidierung der Daten verbessert.
  • Gemäß einigen Ausführungen beinhaltet das zumindest eine Anwendungsmodul ein zweites Anwendungsmodul, das einen Computer-Vision-Algorithmus enthält.
  • Computer-Vision-Algorithmen, die auch als Maschinen-Vision-Algorithmen oder Algorithmen zur automatischen visuellen Wahrnehmung bezeichnet werden können, können als Computer-Algorithmen zur automatischen Durchführung einer visuellen Wahrnehmungsaufgabe betrachtet werden. Eine visuelle Wahrnehmungsaufgabe, auch als Computer-Vision-Aufgabe bezeichnet, kann zum Beispiel als eine Aufgabe zum Extrahieren visueller Informationen aus Bilddaten verstanden werden. Insbesondere kann die visuelle Wahrnehmungsaufgabe in einigen Fällen im Prinzip von einem Menschen durchgeführt werden, der dazu imstande ist, ein den Bilddaten entsprechendes Bild visuell wahrzunehmen. Im vorliegenden Kontext werden visuelle Wahrnehmungsaufgaben jedoch automatisch durchgeführt, ohne dass die Unterstützung durch einen Menschen erforderlich wäre.
  • Zum Beispiel kann ein Computer-Vision-Algorithmus als ein Bildverarbeitungsalgorithmus oder ein Algorithmus zur Bildanalyse verstanden werden, der unter Verwendung von maschinellem Lernen trainiert wird und zum Beispiel auf einem künstlichen neuronalen Netzwerk, insbesondere einem faltenden neuronalen Netzwerk, basieren kann. Zum Beispiel kann der Computer-Vision-Algorithmus einen Objekterkennungsalgorithmus, einen Hinderniserkennungsalgorithmus, einen Objektverfolgungsalgorithmus, einen Klassifikationsalgorithmus, einen Segmentierungsalgorithmus und/oder einen Tiefenschätzungsalgorithmus beinhalten.
  • Das Konzept der Computer-Vision kann auch auf Sensorgeräte übertragen werden, die nicht in einem Bereich arbeiten, der von einem Menschen unmittelbar wahrnehmbar ist, wie etwa Infrarotlicht, zum Beispiel im Fall einer Infrarotkamera oder eines Lidarsystems, oder von Ultraschallwellen.
  • Computer-Vision-Algorithmen sind für viele Fahrerassistenzfunktionen in einem Fahrzeug und andere Funktionen zum autonomen oder teilautonomen Führen eines Fahrzeugs unerlässlich. Derartige Funktionen sind oftmals in hohem Maß sicherheitsrelevant und die Datenintegritätsvalidierung ist in derartigen Ausführungen folglich besonders vorteilhaft.
  • Gemäß einigen Ausführungen wird der gemeinsame Hash-Wert an eine weitere Verarbeitungseinheit übermittelt, insbesondere durch das erste Anwendungsmodul, und die Integrität des Urladermoduls und des zumindest einen Anwendungsmoduls wird abhängig von dem gemeinsamen Hash-Wert durch die weitere Verarbeitungseinheit validiert, insbesondere durch Vergleichen des gemeinsamen Hash-Werts mit einem vorab autorisierten Hash-Wert, der zum Beispiel auf der weiteren Verarbeitungseinheit gespeichert sein kann.
  • Für Anwendungsfälle oder Anwendungssituationen, die bei dem Verfahren auftreten können und die hier nicht explizit beschrieben sind, kann es vorgesehen sein, dass in Übereinstimmung mit dem Verfahren, eine Fehlernachricht und/oder eine Aufforderung zu einem Benutzer-Feedback ausgegeben wird und/oder eine Standardeinstellung und/oder ein vorbestimmter Ausgangszustand eingestellt wird.
  • Gemäß einem weiteren Aspekt der Erfindung wird eine Verarbeitungseinheit bereitgestellt. Die Verarbeitungseinheit beinhaltet zumindest ein nichtflüchtiges erstes Speichergerät, welches ein Urladermodul und zumindest ein Anwendungsmodul in entsprechenden logischen Blöcken speichert. Das Urladermodul ist dazu angepasst, einen jeweiligen zyklischen Redundanzüberprüfungswert, CRC-Wert, für jeden der logischen Blöcke zu berechnen und die berechneten CRC-Werte auf ein nichtflüchtiges zweites Speichergerät der Verarbeitungseinheit zu speichern. Ein erstes Anwendungsmodul des zumindest einen Anwendungsmoduls ist dazu angepasst, die berechneten CRC-Werte aus dem zweiten Speichergerät auszulesen und einen gemeinsamen Hash-Wert zur Validierung der Integrität des Urladermoduls und des zumindest einen Anwendungsmoduls abhängig von den ausgelesenen CRC-Werten unter Verwendung der vordefinierten Hash-Funktion zu berechnen.
  • Die Verarbeitungseinheit kann als ein SoC implementiert sein oder kann Teil eines SoC sein. Gemäß einigen Ausführungen ist die Verarbeitungseinheit ein Mikrocontroller.
  • Gemäß einigen Ausführungen beinhaltet die Verarbeitungseinheit eine Ausgabeschnittstelle, zum Beispiel zum Verbinden der Verarbeitungseinheit mit einem Fahrzeugkommunikationsbus. Die Verarbeitungseinheit, insbesondere das erste Anwendungsmodul, ist dazu eingerichtet, den gemeinsamen Hash-Wert über eine Ausgabeschnittstelle der Verarbeitungseinheit auszugeben.
  • Weitere Ausführungen der erfindungsgemäßen Verarbeitungseinheit ergeben sich unmittelbar aus den verschiedenen Ausführungsformen des erfindungsgemäßen computerimplementierten Verfahrens und umgekehrt. Insbesondere lassen sich einzelne Merkmale und entsprechende Erklärungen sowie Vorteile, die die verschiedenen Ausführungen des erfindungsgemäßen computerimplementierten Verfahrens betreffen, analog auf entsprechende Ausführungen der erfindungsgemäßen Verarbeitungseinheit übertragen. Insbesondere ist die erfindungsgemäße Verarbeitungseinheit dazu ausgestaltet oder programmiert, das erfindungsgemäße computerimplementierte Verfahren auszuführen. Insbesondere führt die erfindungsgemäße Verarbeitungseinheit das erfindungsgemäße computerimplementierte Verfahren aus.
  • Gemäß einem weiteren Aspekt der Erfindung wird eine Verarbeitungsanordnung bereitgestellt. Die Verarbeitungsanordnung beinhaltet eine erfindungsgemäße Verarbeitungseinheit, insbesondere in einer Ausführung, welche die genannte Ausgabeschnittstelle beinhaltet. Die Verarbeitungsanordnung beinhaltet die weitere Verarbeitungseinheit, die mit der Verarbeitungseinheit über die Ausgabeschnittstelle verbunden ist und dazu eingerichtet ist, den gemeinsamen Hash-Wert zu empfangen und die Integrität des Urladermoduls und des zumindest einen Anwendungsmoduls abhängig von dem gemeinsamen Hash-Wert zu validieren.
  • Gemäß einem weiteren Aspekt der Erfindung wird ein Kraftfahrzeug bereitgestellt, das eine erfindungsgemäße Verarbeitungseinheit aufweist.
  • Bei einigen Ausführungen weist das Kraftfahrzeug eine erfindungsgemäße Verarbeitungsanordnung und einen Fahrzeugkommunikationsbus auf, wobei die weitere Verarbeitungseinheit mit der Verarbeitungseinheit über die Ausgabeschnittstelle und den Fahrzeugkommunikationsbus verbunden ist.
  • Gemäß einem weiteren Aspekt der Erfindung wird ein Computerprogramm, welches Befehle beinhaltet, bereitgestellt. Wenn die Befehle durch eine erfindungsgemäße Verarbeitungseinheit ausgeführt werden, veranlassen die ersten Befehle die Verarbeitungseinheit dazu, ein erfindungsgemäßes computerimplementiertes Verfahren zur Integritätsvalidierung durchzuführen.
  • Gemäß einem weiteren Aspekt der Erfindung wird ein computerlesbares Speichermedium bereitgestellt, das ein erfindungsgemäßes Computerprogramm speichert.
  • Das Computerprogramm und das computerlesbare Speichermedium können auch als jeweilige die Befehle beinhaltende Computerprogrammprodukte bezeichnet werden.
  • Weitere Merkmale der Erfindung ergeben sich aus den Ansprüchen, den Figuren und der Figurenbeschreibung. Die vorstehend in der Beschreibung genannten Merkmale und Merkmalskombinationen sowie die nachfolgend in der Figurenbeschreibung genannten und/oder in den Figuren gezeigten Merkmale und Merkmalskombinationen können von der Erfindung nicht nur in der jeweils angegebenen Kombination, sondern auch in anderen Kombinationen umfasst sein. Insbesondere können auch Ausführungsformen und Merkmalskombinationen von der Erfindung umfasst sein, die nicht alle Merkmale eines ursprünglich formulierten Anspruchs aufweisen. Darüber hinaus können Ausführungsformen und Merkmalskombinationen von der Erfindung umfasst sein, die über die in den Rückbezügen der Ansprüche dargelegten Merkmalskombinationen hinausgehen oder davon abweichen.
  • Im Folgenden wird die Erfindung im Einzelnen mit Bezug auf spezifische beispielhafte Ausführungen und jeweilige schematische Zeichnungen erläutert. In den Zeichnungen können identische oder funktionsgleiche Elemente mit denselben Bezugszeichen bezeichnet sein. Die Beschreibung identischer oder funktionsgleicher Elemente wird mit Bezug auf andere Figuren nicht notwendigerweise wiederholt.
  • In den Figuren zeigen:
    • 1 schematisch eine beispielhafte Ausführung eines erfindungsgemäßen Kraftfahrzeugs;
    • 2 ein schematisches Blockdiagramm einer beispielhaften Ausführung einer erfindungsgemäßen Verarbeitungseinheit; und
    • 3 ein Flussdiagramm einer beispielhaften Ausführung eines erfindungsgemäßen computerimplementierten Verfahrens zur Integritätsvalidierung.
  • In 1 ist eine beispielhafte Ausführung eines erfindungsgemäßen Fahrzeugs 5, insbesondere eines Kraftfahrzeugs, schematisch gezeigt. Das Fahrzeug 5 beinhaltet eine beispielhafte Ausführung einer erfindungsgemäßen Verarbeitungseinheit 1. Die Verarbeitungseinheit 1 kann zum Beispiel ein Mikrocontroller sein.
  • Die Verarbeitungseinheit 1 kann bei manchen Ausführungen des Fahrzeugs 5, in einer erfindungsgemäßen Verarbeitungsanordnung 3 enthalten sein. Die Verarbeitungsanordnung 3 weist einen Fahrzeugkommunikationsbus 10 auf, zum Beispiel einen CAN-Bus, der eine weitere Verarbeitungseinheit 2 mit einer Ausgabeschnittstelle 9 der Verarbeitungseinheit 1 verbindet.
  • Die Verarbeitungseinheit 1 beinhaltet zumindest ein nichtflüchtiges Speichergerät 6, das in 1 der Einfachheit halber durch ein nichtflüchtiges erstes Speichergerät 6, zum Beispiel ein Codeflash-Programming-ROM, dargestellt ist, das ein Urladermodul 11 (siehe 2) und zumindest ein Anwendungsmodul 12 (siehe 2) in jeweiligen logischen Blöcken speichert. Das zumindest eine erste Speichergerät kann über eine oder mehrere physische Komponenten, zum Beispiel SoCs mit einem oder mehreren Programing Flash Devices für unterschiedliche Anwendungen verteilt sein. Zum Beispiel kann eine ECU des Fahrzeugs 5 eines oder mehrere Anwendungsprogramme haben, die sich auf unterschiedlichen Speicherchips befinden und mit unterschiedlichen logischen Block-IDs gekennzeichnet sind.
  • Bei manchen Ausführungen kann eines des zumindest einen Anwendungsmoduls 12 dazu angepasst sein, einen Computer-Vision-Algorithmus abhängig von Sensordaten auszuführen, die von einem Umgebungssensorsystem 4, zum Beispiel einer Kamera oder einem Lidar-System, des Fahrzeugs 5 erzeugt werden. Die Verarbeitungseinheit 1 kann zum Beispiel eine CPU 8 und/oder einen oder mehrere weitere Prozessoren, Co-Prozessoren und/oder Hardwarebeschleuniger beinhalten. Teile des Sensorsystems 4 und der Verarbeitungseinheit 1 können zum Beispiel in einem SoC kombiniert sein.
  • Die Verarbeitungseinheit 1 beinhaltet ein nichtflüchtiges zweites Speichergerät 7, das insbesondere einen gemeinsamen Sektor enthält, auf den sowohl das Urladermodul als auch ein erstes Anwendungsmodul 12a (siehe 3) des zumindest einen Anwendungsmoduls 12 zugegriffen werden kann. Insbesondere kann das Urladermodul 11 zumindest auf den gemeinsamen Sektor schreiben und das erste Anwendungsmodul kann zumindest den gemeinsamen Sektor lesen.
  • Die Verarbeitungseinheit 1 kann ein erfindungsgemäßes computerimplementiertes Verfahren zur Integritätsvalidierung von Daten ausführen, die in dem ersten Speichergerät 6, insbesondere des Urladermoduls 11 und des zumindest einen Anwendungsmoduls 12 gespeichert sind. 2 zeigt ein schematisches Blockdiagramm der Verarbeitungseinheit 1.
  • Um das computerimplementierte Verfahren auszuführen, wird ein jeweiliger CRC-Wert 13, zum Beispiel unter Verwendung von CRC32, für jeden der logischen Blöcke berechnet und von dem Urladermodul 11 auf das zweite Speichergerät 7, insbesondere auf den gemeinsamen Sektor, gespeichert. Die berechneten und gespeicherten CRC-Werte 13 werden von dem ersten Anwendungsmodul 12a des zumindest einen Anwendungsmoduls 12 aus dem zweiten Speichergerät 7 gelesen.
  • Ein gemeinsamer Hash-Wert 18 zur Validierung der Integrität des Urladermoduls 11 und des zumindest einen Anwendungsmoduls 12 wird von dem ersten Anwendungsmodul 12a abhängig von den ausgelesenen CRC-Werten 13 unter Verwendung einer vordefinierten Hash-Funktion, zum Beispiel SHA-256, berechnet.
  • Das erste Anwendungsmodul 12a übermittelt den gemeinsamen Hash-Wert 18 über die Ausgabeschnittstelle 9 und den Fahrzeugkommunikationsbus 10 an die weitere Verarbeitungseinheit 2. Die weitere Verarbeitungseinheit 2 validiert die Integrität des Urladermoduls 11 und des zumindest einen Anwendungsmoduls 12 abhängig von dem gemeinsamen Hash-Wert 18, insbesondere durch Vergleichen des gemeinsamen Hash-Werts 18 mit einem vorab autorisierten Hash-Wert, der zum Beispiel von der weiteren Verarbeitungseinheit 2 gespeichert wird.
  • 3 zeigt ein Flussdiagramm einer weiteren beispielhaften Ausführung eines erfindungsgemäßen computerimplementierten Verfahrens zur Datenintegritätsvalidierung. In diesem Beispiel beinhaltet das zumindest eine Anwendungsmodul 12 das erste Anwendungsmodul 12a und ein zweites Anwendungsmodul 12b. In anderen Ausführungen kann die Anzahl der Anwendungsmodule 12 abweichen.
  • In Schritt 300 berechnet das Urladermodul 11 die CRC-Werte 13, die einen Urlader-CRC-Wert 13_11 für das Urladermodul 11, einen ersten CRC-Wert 13_12a für das erste Anwendungsmodul 12a und einen zweiten CRC-Wert 13_12b für das zweite Anwendungsmodul 12b enthalten.
  • In Schritt 310 liest das erste Anwendungsmodul 12a die berechneten CRC-Werte 13_11, 13_12a, 12c13_12b und erzeugt einen entsprechenden Datensatz, der den jeweiligen ausgelesenen CRC-Wert 13_11, 13_12a, 13_12b für jeden logischen Block beinhaltet. Insbesondere wird ein Urladerdatensatz für das Urladermodul 11 erzeugt, ein erster Datensatz wird für das erste Anwendungsmodul 12a erzeugt und ein zweiter Datensatz 16_12b wird für das zweite Anwendungsmodul 12b erzeugt.
  • Die Datensätze können aus den jeweiligen CRC-Werten 13_11, 13_12a, 13_12b bestehen. Die Datensätze können jedoch abgesehen von den CRC-Werten 13_11, 13_12a, 13_12b weitere Informationen, wie etwa jeweilige logische Blockidentifikatoren und/oder jeweilige Softwareversionidentifikatoren enthalten.
  • Das erste Anwendungsmodul 12a kann die Datensätze aller logischen Blöcke in Schritt 320 verketten und die Hash-Funktion auf die verketteten Datensätze 17 in Schritt 330 anwenden, um den gemeinsamen Hash-Wert 18 zu berechnen. In Schritt 340 wird der gemeinsame Hash-Wert 18 mit dem vorab autorisierten Hash-Wert verglichen.
  • Wie insbesondere in Bezug auf die Figuren beschrieben, erhöht die Erfindung die Datensicherheit von Daten, die auf einem nichtflüchtigen Speicher einer Verarbeitungseinheit gespeichert sind, angesichts möglicher Manipulationen.
  • Insbesondere kann die Erfindung ein Konzept der Validierung der Datenintegrität durch Erzeugen des gemeinsamen Hash-Werts implementieren. Ein Konzept zur Datenintegritätsvalidierung ist zum Beispiel durch die Vorschrift „UNECE R156 SUMS“ der United Nations Economic Commission for Europe, UNECE vorgeschrieben. Eine Absicht dieser Vorschrift ist es, Software-Aktualisierungen, SU (englisch: software update) und ein Software-Aktualisierungs-Management-System, SUMS (englisch: software update management system) auf sichere und geschützte Weise zu definieren, gerichtet an Kraftfahrzeughersteller, die zum Beispiel Over-the-Air-Software-Aktualisierungen, OTA-Software-Aktualisierungen, realisieren.
  • 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
    • US 20140301550 A1 [0004]

Claims (15)

  1. Computerimplementiertes Verfahren zur Integritätsvalidierung von Daten, die in zumindest einem nichtflüchtigen ersten Speichergerät (6) einer Verarbeitungseinheit (1) gespeichert sind, wobei das zumindest eine erste Speichergerät (6) ein Urladermodul (11) und zumindest ein Anwendungsmodul (12, 12a, 12b) in jeweiligen logischen Blöcken speichert, wobei - ein jeweiliger zyklischer Redundanzüberprüfungswert, CRC-Wert, (13, 13_11, 13_12a, 13_12b) für jeden der logischen Blöcke von dem Urladermodul (11) berechnet und auf ein zweites nichtflüchtiges Speichergerät (7) der Verarbeitungseinheit (1) gespeichert wird; - die berechneten CRC-Werte (13, 13_11, 13_12a, 13_12b) von einem ersten Anwendungsmodul (12a) des zumindest einen Anwendungsmoduls (12, 12a, 12b) aus dem zweiten Speichergerät (7) gelesen werden; und - ein gemeinsamer Hash-Wert (18) zur Validierung der Integrität des Urladermoduls (11) und des zumindest einen Anwendungsmoduls (12, 12a, 12b) von dem ersten Anwendungsmodul (12a) abhängig von den ausgelesenen CRC-Werten (13, 13_11, 13_12a, 13_12b) unter Verwendung einer vordefinierten Hash-Funktion berechnet wird.
  2. Computerimplementiertes Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass zum Berechnen des gemeinsamen Hash-Werts (18) - für jeden der logischen Blöcke ein Datensatz, der den jeweiligen ausgelesenen CRC-Wert (13, 13_11, 13_12a, 13_12b) beinhaltet, von dem ersten Anwendungsmodul (12a) erzeugt wird; - die Datensätze der logischen Blöcke verkettet werden; und - die Hash-Funktion auf die verketteten Datensätze (17) angewendet wird.
  3. Computerimplementiertes Verfahren nach Anspruch 2, dadurch gekennzeichnet, dass - für jeden der logischen Blöcke der Datensatz einen Blockidentifikator des jeweiligen logischen Blocks beinhaltet; und/oder - für jeden der logischen Blöcke, die eines des zumindest einen Anwendungsmoduls (12, 12a, 12b) speichern, der Datensatz einen Softwareversionidentifikator des jeweiligen Anwendungsmoduls (12, 12a, 12b) beinhaltet; und/oder - für den logischen Block, der das Urladermodul (11) speichert, der Datensatz einen Softwareversionidentifikator des Urladermoduls (11) beinhaltet.
  4. Computerimplementiertes Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass - das Berechnen der CRC-Werte (13, 13_11, 13_12a, 13_12b) und das Speichern der berechneten CRC-Werte (13, 13_11, 13_12a, 13_12b) auf das zweite Speichergerät (7) während eines ersten Leistungszyklus der Verarbeitungseinheit (1) ausgeführt werden; und - das Auslesen der berechneten CRC-Werte (13, 13_11, 13_12a, 13_12b) aus dem zweiten Speichergerät (7) und die Berechnung des gemeinsamen Hash-Werts (18) während eines zweiten Leistungszyklus der Verarbeitungseinheit (1) nach dem ersten Leistungszyklus ausgeführt werden.
  5. Computerimplementiertes Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass eine CRC32-Funktion verwendet wird, um die CRC-Werte (13, 13_11, 13_12a, 13_12b) zu berechnen.
  6. Computerimplementiertes Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Hash-Funktion durch eine vordefinierte kryptographische Hash-Funktion, zum Beispiel eine SHA-2-Hash-Funktion, gegeben ist, insbesondere eine SHA-256-Hash-Funktion.
  7. Computerimplementiertes Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das zumindest eine Anwendungsmodul (12, 12a, 12b) ein zweites Anwendungsmodul (12b) beinhaltet, das einen Computer-Vision-Algorithmus enthält.
  8. Computerimplementiertes Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass - der gemeinsame Hash-Wert (18) an eine weitere Verarbeitungseinheit (2) übertragen wird und die Integrität des Urladermoduls (11) und des zumindest einen Anwendungsmoduls (12, 12a, 12b) abhängig von dem gemeinsamen Hash-Wert (18) durch die weitere Verarbeitungseinheit (2) validiert wird; oder - die Integrität des Urladermoduls (11) und des zumindest einen Anwendungsmoduls (12, 12a, 12b) abhängig von dem gemeinsamen Hash-Wert (18) durch das erste Anwendungsmodul (12a) validiert wird.
  9. Verarbeitungseinheit (1) aufweisend zumindest ein nichtflüchtiges erstes Speichergerät (6), das ein Urladermodul (11) und zumindest ein Anwendungsmodul (12, 12a, 12b) in jeweiligen logischen Blöcken speichert, wobei - das Urladermodul (11) dazu angepasst ist, einen jeweiligen zyklischen Redundanzüberprüfungswert, CRC-Wert (13, 13_11, 13_12a, 13_12b), für jeden der logischen Blöcke zu berechnen und die berechneten CRC-Werte (13, 13_11, 13_12a, 13_12b) auf ein nichtflüchtiges zweites Speichergerät (7) der Verarbeitungseinheit (1) zu speichern; - ein erstes Anwendungsmodul (12a) des zumindest einen Anwendungsmoduls (12, 12a, 12b) ist dazu angepasst, die berechneten CRC-Werte (13, 13_11, 13_12a, 13_12b) aus dem zweiten Speichergerät (7) auszulesen und einen gemeinsamen Hash-Wert (18) zur Validierung der Integrität des Urladermoduls (11) und des zumindest einen Anwendungsmoduls (12, 12a, 12b) abhängig von den ausgelesenen CRC-Werten (13, 13_11, 13_12a, 13_12b) unter Verwendung einer vordefinierten Hash-Funktion zu berechnen.
  10. Verarbeitungseinheit (1) nach Anspruch 9, dadurch gekennzeichnet, dass die Verarbeitungseinheit (1) ein Mikrocontroller ist.
  11. Verarbeitungseinheit (1) nach einem der Ansprüche 9 oder 10, dadurch gekennzeichnet, dass die Verarbeitungseinheit (1) dazu eingerichtet ist, den gemeinsamen Hash-Wert (18) über eine Ausgabeschnittstelle (9) der Verarbeitungseinheit (1) auszugeben.
  12. Verarbeitungsanordnung (3) aufweisend eine Verarbeitungseinheit (1) nach Anspruch 11 und eine weitere Verarbeitungseinheit (2), die mit der Verarbeitungseinheit (1) über die Ausgabeschnittstelle (9) verbunden ist und dazu eingerichtet ist, den gemeinsamen Hash-Wert (18) zu empfangen und die Integrität des Urladermoduls (11) und des zumindest einen Anwendungsmoduls (12, 12a, 12b) abhängig von dem gemeinsamen Hash-Wert (18) zu validieren.
  13. Kraftfahrzeug (5) aufweisend eine Verarbeitungsanordnung (3) nach Anspruch 12 und einen Fahrzeugkommunikationsbus (10), wobei die weitere Verarbeitungseinheit (2) mit der Verarbeitungseinheit (1) über die Ausgabeschnittstelle (9) und den Fahrzeugkommunikationsbus (10) verbunden ist.
  14. Computerprogrammprodukt, das Befehle beinhaltet, die, wenn sie von einer Verarbeitungseinheit (1) nach einem der Ansprüche 9 bis 11 ausgeführt werden, die Verarbeitungseinheit (1) dazu veranlassen, ein computerimplementiertes Verfahren nach einem der Ansprüche 1 bis 7 auszuführen.
  15. Computerprogrammprodukt, das Befehle beinhaltet, die, wenn sie von einer Verarbeitungsanordnung (3) nach Anspruch 12 ausgeführt werden, die Verarbeitungsanordnung (3) dazu veranlassen, ein computerimplementiertes Verfahren nach Anspruch 8 auszuführen.
DE102022129335.1A 2022-11-07 2022-11-07 Integritätsvalidierung von Daten Pending DE102022129335A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102022129335.1A DE102022129335A1 (de) 2022-11-07 2022-11-07 Integritätsvalidierung von Daten

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102022129335.1A DE102022129335A1 (de) 2022-11-07 2022-11-07 Integritätsvalidierung von Daten

Publications (1)

Publication Number Publication Date
DE102022129335A1 true DE102022129335A1 (de) 2024-05-08

Family

ID=90732345

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102022129335.1A Pending DE102022129335A1 (de) 2022-11-07 2022-11-07 Integritätsvalidierung von Daten

Country Status (1)

Country Link
DE (1) DE102022129335A1 (de)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080288783A1 (en) 2006-12-15 2008-11-20 Bernhard Jansen Method and system to authenticate an application in a computing platform operating in trusted computing group (tcg) domain
US20140281354A1 (en) 2013-03-15 2014-09-18 Thomas E. Tkacik Continuous run-time integrity checking for virtual memory
US20140301550A1 (en) 2013-04-09 2014-10-09 Robert Bosch Gmbh Method for recognizing a manipulation of a sensor and/or sensor data of the sensor
US20220350891A1 (en) 2021-04-29 2022-11-03 Infineon Technologies Ag Fast secure booting method and system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080288783A1 (en) 2006-12-15 2008-11-20 Bernhard Jansen Method and system to authenticate an application in a computing platform operating in trusted computing group (tcg) domain
US20140281354A1 (en) 2013-03-15 2014-09-18 Thomas E. Tkacik Continuous run-time integrity checking for virtual memory
US20140301550A1 (en) 2013-04-09 2014-10-09 Robert Bosch Gmbh Method for recognizing a manipulation of a sensor and/or sensor data of the sensor
US20220350891A1 (en) 2021-04-29 2022-11-03 Infineon Technologies Ag Fast secure booting method and system

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Cyclic redundancy check. In: Wikipedia, the free encyclopedia. Bearbeitungsstand: 05.10.2022. URL: https://en.wikipedia.org/w/index.php?title=Cyclic_redundancy_check&oldid=1114139258 [abgerufen am 17.05.2023]
PARNO, B. [et al.]: What Do We Need to Know? Techniques for Recording Platform State. In: Bootstrapping Trust in Modern Computers. SpringerBriefs in Computer Science, vol 10. Springer, New York, 2011. DOI: 10.1007/978-1-4614-1460-5_2

Similar Documents

Publication Publication Date Title
EP3136285B1 (de) Verfahren und speichermodul für sicherheitsgeschützte schreibvorgänge und/oder lesevorgänge auf dem speichermodul
EP3437012A1 (de) Verfahren, prozessor und gerät zur integritätsprüfung von nutzerdaten
DE102013108022A1 (de) Verfahren zum Aktivieren des Entwicklungsmodus eines gesicherten elektronischen Steuergeräts
DE102013213314A1 (de) Hinterlegen mindestens eines berechenbaren Integritätsmesswertes in einem Speicherbereich eines Speichers
DE112016002785T5 (de) Elektronische Steuereinheiten für Fahrzeuge
DE102018205204A1 (de) Verfahren zum Bereitstellen von Anwendungsdaten zumindest einer auf einem Steuergerät eines Fahrzeugs ausführbaren Anwendung, Verfahren zum Kalibrieren eines Steuergeräts, Steuergerät und Auswerteeinrichtung
DE102013225445A1 (de) Verfahren und System zum Umgehen von Authentizitätsüberprüfungen für geschützte Steuermodule
EP2181370B1 (de) VERFAHREN ZUR KOMPATIBILITÄTSPRÜFUNG EINES MEßSYSTEMS BESTEHEND AUS EINEM MESSUMFORMER UND EINEM SENSOR
DE102016210788B4 (de) Komponente zur Verarbeitung eines schützenswerten Datums und Verfahren zur Umsetzung einer Sicherheitsfunktion zum Schutz eines schützenswerten Datums in einer solchen Komponente
EP3811260B1 (de) Kryptografiemodul und betriebsverfahren hierfür
DE102016223341A1 (de) Integrierte Schaltung mit Hardwareprüfeinheit zum Überprüfen von ausgewählten Speicherzugriffen
DE102007056218A1 (de) Verfahren zur Behandlung von transienten Fehlern in Echtzeitsystemen, insbesondere in Steuergeräten von Kraftfahrzeugen
EP1611517B1 (de) Programmgesteuerte einheit
DE102022129335A1 (de) Integritätsvalidierung von Daten
DE10131577A1 (de) Verfahren zum Schutz eines Mikrorechner-Systems gegen Manipulation seines Programms
DE19963475B4 (de) Verfahren und Vorrichtung zur Steuerung von Betriebsabläufen in einem Fahrzeug sowie zur Bereitstellung von Daten diesbezüglich
EP1293858B1 (de) Verfahren zum Schutz eines Mikrorechner-Systems gegen Manipulation seines Programms
DE102018211139A1 (de) Steuergerät sowie Verfahren zu dessen Betrieb
EP3647983A1 (de) Vorrichtung und betriebsverfahren zum überprüfen von betriebsdaten einer gesicherten start-betriebsphase eines insbesondere in einer industriellen anlagenumgebung verwendbaren gerätes
DE102020212988A1 (de) Sicheres Hochfahren eines Computersystems
DE102018219700B4 (de) Steuervorrichtung
DE102016117056A1 (de) Verfahren zur sicheren Bereitstellung von gespeicherten Informationen bei einer Elektronikkomponente
DE10131300B4 (de) Verfahren zum Schutz eines Mikrorechner-Systems gegen Manipulation von in einer Speicheranordnung abgelegten Daten und Mikrorechner-System
EP4275138A1 (de) Verfahren zur überprüfung digitaler signaturen, fahrzeug-recheneinheit und fahrzeug
DE10215626B4 (de) Verfahren zur Änderung von Verschlüsselungsalgorithmen bei geschützter Software oder geschützten Daten

Legal Events

Date Code Title Description
R163 Identified publications notified