DE102018217969A1 - Recheneinrichtung und Betriebsverfahren hierfür - Google Patents

Recheneinrichtung und Betriebsverfahren hierfür Download PDF

Info

Publication number
DE102018217969A1
DE102018217969A1 DE102018217969.7A DE102018217969A DE102018217969A1 DE 102018217969 A1 DE102018217969 A1 DE 102018217969A1 DE 102018217969 A DE102018217969 A DE 102018217969A DE 102018217969 A1 DE102018217969 A1 DE 102018217969A1
Authority
DE
Germany
Prior art keywords
computing device
check
memory area
computer program
content
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
DE102018217969.7A
Other languages
English (en)
Inventor
Frederic Stumpf
Ramona Jung
Andreas Weber
Christoph Lenz
Juergen Schramm
Alexander Meurer
Florian Ziegler
Ilias Sagar
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 DE102018217969.7A priority Critical patent/DE102018217969A1/de
Priority to CN201910992878.0A priority patent/CN111079194A/zh
Publication of DE102018217969A1 publication Critical patent/DE102018217969A1/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1408Protection against unauthorised use of memory or access to memory by using cryptography
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1416Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
    • G06F12/1425Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block
    • G06F12/1433Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block for a module or a part of a module
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1052Security improvement

Landscapes

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

Abstract

Recheneinrichtung, die dazu ausgebildet ist, auf wenigstens einen Speicherbereich einer der Recheneinrichtung zugeordneten Speichereinrichtung zuzugreifen, wobei die Recheneinrichtung dazu ausgebildet ist, eine erste Überprüfung wenigstens eines ersten Speicherbereichs der Speichereinrichtung zu veranlassen, der mit einem ersten Computerprogramm für die Recheneinrichtung assoziiert ist, und in Abhängigkeit der ersten Überprüfung einen Betrieb der Recheneinrichtung zu steuern.

Description

  • Stand der Technik
  • Die Offenbarung betrifft eine Recheneinrichtung, die dazu ausgebildet ist, auf wenigstens einen Speicherbereich einer der Recheneinrichtung zugeordneten Speichereinrichtung zuzugreifen.
  • Die Offenbarung betrifft ferner ein Verfahren zum Betreiben einer derartigen Recheneinrichtung.
  • Eine derartige Recheneinrichtung ist aus der DE 10 2008 041 360 A1 bekannt.
  • Offenbarung der Erfindung
  • Bevorzugte Ausführungsformen beziehen sich auf eine Recheneinrichtung, die dazu ausgebildet ist, auf wenigstens einen Speicherbereich einer der Recheneinrichtung zugeordneten Speichereinrichtung zuzugreifen, wobei die Recheneinrichtung dazu ausgebildet ist, eine erste Überprüfung wenigstens eines ersten Speicherbereichs der Speichereinrichtung zu veranlassen, der mit einem ersten Computerprogramm für die Recheneinrichtung assoziiert ist, und in Abhängigkeit der ersten Überprüfung einen Betrieb der Recheneinrichtung zu steuern. Dadurch ist vorteilhaft die Möglichkeit gegeben, einen Inhalt des ersten Speicherbereichs beispielsweise auf Abweichungen gegenüber einem vorgebbaren Inhalt hin zu überprüfen. Hierdurch kann vorteilhaft beispielsweise die Ausführung von unsicheren bzw. durch einen Angreifer kompromittierten Computerprogrammen durch die Recheneinrichtung verhindert werden.
  • Bei weiteren bevorzugten Ausführungsformen können in dem ersten Speicherbereich das erste Computerprogramm bzw. zumindest ein Teil hiervon und/oder Daten vorhanden sein, die zu dem ersten Computerprogramm gehören bzw. bei der Ausführung des ersten Computerprogramms verwendbar sind, beispielsweise Parameter für das erste Computerprogramm.
  • Bei weiteren bevorzugten Ausführungsformen ist vorgesehen, dass die erste Überprüfung zum Gegenstand hat, zu ermitteln, ob der wenigstens eine erste Speicherbereich einen vorgebbaren ersten Inhalt aufweist.
  • Bei weiteren bevorzugten Ausführungsformen ist vorgesehen, dass die Überprüfung des ersten Speicherbereichs unter Verwendung eines schlüsselbasierten Nachrichtenauthentifizierungscodes, CMAC (Cipher-based Message Authentication Code) ausgeführt wird. Dadurch ist eine besonders effiziente Überprüfung ermöglicht. Eine Internetpublikation, die sich auf eine beispielhafte Ausgestaltung des CMAC-Verfahrens bezieht, ist beispielsweise unter https://doi.org/10.6028%2Fnist.sp.800-38b abrufbar.
  • Bei weiteren bevorzugten Ausführungsformen ist vorgesehen, dass die Recheneinrichtung dazu ausgebildet ist, die erste Überprüfung, beispielsweise mittels CMAC-Bildung, selbst auszuführen.
  • Bei weiteren bevorzugten Ausführungsformen ist vorgesehen, dass die Recheneinrichtung dazu ausgebildet ist, die erste Überprüfung durch eine weitere Einheit, insbesondere durch ein Kryptografiemodul bzw. Hardware-Sicherheitsmodul, ausführen zu lassen. Hierzu kann die Recheneinrichtung der weiteren Einheit beispielsweise die gewünschte erste Überprüfung charakterisierende Parameter (z.B. Speicher- bzw. Adressbereich innerhalb der Speichereinrichtung) übermitteln. Sodann kann die weitere Einheit die Überprüfung gemäß den übermittelten Parametern ausführen. Daraufhin kann die weitere Einheit das Ergebnis der Überprüfung z.B. der Recheneinrichtung signalisieren.
  • Bei weiteren bevorzugten Ausführungsformen ist vorgesehen, dass das Kryptografiemodul eine, vorzugsweise in das Kryptografiemodul integrierte, Speichereinheit zur Speicherung wenigstens eines Referenzwerts und/oder eines Referenzlayouts für den wenigstens einen ersten Speicherbereich aufweist. Bei bevorzugten Ausführungsformen kann der Referenzwert beispielsweise einen CMAC-Wert für einen vorgebbaren Speicherinhalt repräsentieren, der beispielsweise mit einem CMAC-Wert vergleichbar ist, der bei der Überprüfung des wenigstens einen ersten Speicherbereichs durch das Kryptografiemodul ermittelt worden ist. Sofern der ermittelte CMAC-Wert von dem Referenzwert abweicht, kann auf eine unzulässige Veränderung des Speicherinhalts des überprüften Speicherbereichs geschlossen werden. Für weitere Speicherbereiche der Speichereinrichtung können in entsprechender Weise weitere Referenzwerte vorgesehen sein.
  • Bei weiteren bevorzugten Ausführungsformen ist vorgesehen, dass die Recheneinrichtung und/oder die Speichereinrichtung und/oder das Kryptografiemodul jeweils als integrierte Schaltung ausgebildet ist, und dass die Recheneinrichtung und/oder die Speichereinrichtung und/oder das Kryptografiemodul auf einem selben Halbleitersubstrat angeordnet sind.
  • Bei weiteren bevorzugten Ausführungsformen ist vorgesehen, dass die Recheneinrichtung dazu ausgebildet ist, das erste Computerprogramm auszuführen, wenn die erste Überprüfung ergeben hat, dass der wenigstens eine erste Speicherbereich den vorgebbaren ersten Inhalt aufweist, wobei insbesondere die Recheneinrichtung dazu ausgebildet ist, das erste Computerprogramm nicht auszuführen, wenn die erste Überprüfung ergeben hat, dass der wenigstens eine erste Speicherbereich nicht den vorgebbaren ersten Inhalt aufweist. Dadurch ist sichergestellt, dass im Falle einer möglichen Manipulation des ersten Speicherbereichs das erste Computerprogramm nicht ausgeführt wird, wodurch eine ggf. weitergehende Kompromittierung der Recheneinrichtung bzw. der Speichereinrichtung verhindert wird.
  • Bei weiteren bevorzugten Ausführungsformen ist vorgesehen, dass die Recheneinrichtung dazu ausgebildet ist, die folgenden Schritte auszuführen, wenn die erste Überprüfung ergeben hat, dass der wenigstens eine erste Speicherbereich nicht den vorgebbaren ersten Inhalt aufweist: Veranlassen einer zweiten Überprüfung wenigstens eines zweiten Speicherbereichs der Speichereinrichtung, der mit einem zweiten Computerprogramm für die Recheneinrichtung assoziiert ist (also beispielsweise zumindest einen Teil des zweiten Computerprogramms und/oder Parameter für das zweite Computerprogramm enthält), auf einen vorgebbaren zweiten Inhalt hin, Ausführen des zweiten Computerprogramms, wenn die zweite Überprüfung ergeben hat, dass der zweite Speicherbereich den vorgebbaren zweiten Inhalt aufweist. Dadurch kann im Falle einer möglichen Manipulation des ersten Speicherbereichs vorteilhaft ggf. das mit dem zweiten Speicherbereich assoziierte zweite Computerprogramm ausgeführt werden.
  • Bei weiteren bevorzugten Ausführungsformen ist vorgesehen, dass das zweite Computerprogramm dazu ausgebildet ist, einen oder mehrere Speicherbereiche der Speichereinrichtung zu beschreiben, insbesondere neu zu programmieren. Dadurch kann im Falle einer möglichen Manipulation des ersten Speicherbereichs vorteilhaft ggf. ein (erneutes) Beschreiben des ersten Speicherbereichs mit vorgebbarem (ersten) Inhalt bzw. vorgebbaren ersten Daten erfolgen, wodurch ein ordnungsgemäßer Betrieb der zuvor - hinsichtlich des ersten Computerprogramms - manipulierten Speichereinrichtung bzw. Recheneinrichtung wiederherstellbar ist.
  • Bei weiteren bevorzugten Ausführungsformen ist vorgesehen, dass das zweite Computerprogramm dazu ausgebildet ist, den ersten Speicherbereich mit vorgebbaren Daten, insbesondere mit dem vorgebbaren ersten Inhalt, zu beschreiben. Auf diese Weise kann z.B. ein gewünschter Ausgangszustand wiederhergestellt werden.
  • Bei weiteren bevorzugten Ausführungsformen ist vorgesehen, dass das zweite Programm ein Bootloader ist. Bei weiteren bevorzugten Ausführungsformen kann das vorstehend beispielhaft anhand des (ggf. manipulierten) ersten Speicherbereichs beschriebene Prinzip vorteilhaft auch auf ein oder mehrere weitere Speicherbereiche der Speichereinrichtung (oder einer anderen Speichereinrichtung, die der Recheneinrichtung zuordenbar ist) angewendet werden.
  • Bei weiteren bevorzugten Ausführungsformen ist vorgesehen, dass die Recheneinrichtung dazu ausgebildet ist, eine Fehlerreaktion einzuleiten, wenn die zweite Überprüfung ergeben hat, dass der zweite Speicherbereich nicht den vorgebbaren zweiten Inhalt aufweist. Dadurch kann eine ggf. weitergehende Kompromittierung der Recheneinrichtung bzw. der Speichereinrichtung verhindert werden. Bei weitere Ausführungsformen kann auch vorgesehen sein, bereits nach der ersten Überprüfung des ersten Speicherbereichs eine Fehlerreaktion einzuleiten.
  • Weitere bevorzugte Ausführungsformen beziehen sich auf ein Verfahren zum Betreiben einer Recheneinrichtung, die dazu ausgebildet ist, auf wenigstens einen Speicherbereich einer der Recheneinrichtung zugeordneten Speichereinrichtung zuzugreifen, wobei die Recheneinrichtung eine erste Überprüfung wenigstens eines ersten Speicherbereichs der Speichereinrichtung veranlasst, der mit einem ersten Computerprogramm für die Recheneinrichtung assoziiert ist, und in Abhängigkeit der ersten Überprüfung einen Betrieb der Recheneinrichtung steuert.
  • Bei weiteren bevorzugten Ausführungsformen ist vorgesehen, dass die Überprüfung zum Gegenstand hat, zu ermitteln, ob der wenigstens eine erste Speicherbereich einen vorgebbaren ersten Inhalt aufweist, wobei insbesondere die Recheneinrichtung a) die erste Überprüfung selbst ausführt, und/oder b) die erste Überprüfung durch eine weitere Einheit, insbesondere durch ein Kryptografiemodul, ausführen lässt.
  • Bei weiteren bevorzugten Ausführungsformen ist vorgesehen, dass die Recheneinrichtung das erste Computerprogramm ausführt, wenn die erste Überprüfung ergeben hat, dass der wenigstens eine erste Speicherbereich einen bzw. den vorgebbaren ersten Inhalt aufweist, wobei insbesondere die Recheneinrichtung das erste Computerprogramm nicht ausführt, wenn die erste Überprüfung ergeben hat, dass der wenigstens eine erste Speicherbereich nicht den vorgebbaren ersten Inhalt aufweist.
  • Bei weiteren bevorzugten Ausführungsformen ist vorgesehen, dass die Recheneinrichtung die folgenden Schritte ausführt, wenn die erste Überprüfung ergeben hat, dass der wenigstens eine erste Speicherbereich nicht den vorgebbaren ersten Inhalt aufweist: Veranlassen einer zweiten Überprüfung wenigstens eines zweiten Speicherbereichs der Speichereinrichtung, der mit einem zweiten Computerprogramm für die Recheneinrichtung assoziiert ist, auf einen vorgebbaren zweiten Inhalt hin, Ausführen des zweiten Computerprogramms, wenn die zweite Überprüfung ergeben hat, dass der zweite Speicherbereich den vorgebbaren zweiten Inhalt aufweist.
  • Bei weiteren bevorzugten Ausführungsformen ist vorgesehen, dass die Recheneinrichtung, insbesondere mittels des zweiten Computerprogramms, einen oder mehrere Speicherbereiche der Speichereinrichtung beschreibt, insbesondere neu programmiert, wobei insbesondere der erste Speicherbereich mit vorgebbaren Daten, insbesondere mit dem vorgebbaren ersten Inhalt, beschrieben wird.
  • Weitere bevorzugte Ausführungsformen beziehen sich auf eine Verwendung der Recheneinrichtung gemäß den Ausführungsformen und/oder des Verfahrens gemäß den Ausführungsformen zur Überführung einer defekten und/oder manipulierten Speichereinrichtung in einen funktionsfähigen, insbesondere integren, Zustand.
  • Weitere Merkmale, Anwendungsmöglichkeiten und Vorteile der Erfindung ergeben sich aus der nachfolgenden Beschreibung von Ausführungsbeispielen der Erfindung, die in den Figuren der Zeichnung dargestellt sind. Dabei bilden alle beschriebenen oder dargestellten Merkmale für sich oder in beliebiger Kombination den Gegenstand der Erfindung, unabhängig von ihrer Zusammenfassung in den Ansprüchen oder deren Rückbeziehung sowie unabhängig von ihrer Formulierung bzw. Darstellung in der Beschreibung bzw. in der Zeichnung.
  • In der Zeichnung zeigt:
    • 1 schematisch ein vereinfachtes Blockdiagramm einer Recheneinrichtung gemäß einer Ausführungsform,
    • 2 schematisch ein vereinfachtes Blockdiagramm einer Recheneinrichtung gemäß einer weiteren Ausführungsform,
    • 3 schematisch ein vereinfachtes Flussdiagramm eines Verfahrens gemäß einer Ausführungsform,
    • 4 schematisch ein vereinfachtes Flussdiagramm eines Verfahrens gemäß einer weiteren Ausführungsform, und
    • 5 schematisch ein vereinfachtes Flussdiagramm eines Verfahrens gemäß einer weiteren Ausführungsform.
  • 1 zeigt schematisch ein vereinfachtes Blockdiagramm einer Recheneinrichtung 100 gemäß einer Ausführungsform. Bei bevorzugten Ausführungsformen kann die Recheneinrichtung 100 wenigstens einen Rechenkern 102 aufweisen und/oder einen Mikroprozessor und/oder einen Mikrocontroller oder dergleichen. Die Recheneinrichtung 100 ist dazu ausgebildet, auf wenigstens einen Speicherbereich 210, 220, 230 einer der Recheneinrichtung 100 zugeordneten Speichereinrichtung 200 (z.B. Flash-EEPROM und/oder flüchtiger Speicher oder dergleichen) zuzugreifen, beispielsweise um durch die Recheneinrichtung 100 ausführbare Programme und/oder entsprechende Daten zu laden.
  • Vorliegend weist die Speichereinrichtung 200 beispielsweise einen ersten Speicherbereich 210 auf, einen zweiten Speicherbereich 220, einen dritten Speicherbereich 230, sowie einen weiteren Speicherbereich 202. In dem weiteren Speicherbereich 202 ist beispielsweise ein als Boot-Manager BM ausgebildetes Programm für die Recheneinrichtung 100 gespeichert, das z.B. den Bootvorgang (Start nach Anschalten bzw. Reset bzw. Initialisierungsphase) der Recheneinrichtung 100 steuert. Der erste Speicherbereich 210 ist mit einem ersten Computerprogramm PRG1 für die Recheneinrichtung 100 assoziiert, enthält also wenigstens einen Teil des ersten Computerprogramms PRG1 für die Recheneinrichtung 100 und/oder für die Ausführung des ersten Computerprogramms PRG1 verwendbare Daten (z.B. Parameter). Der zweite Speicherbereich 220 ist mit einem zweiten Computerprogramm PRG2 für die Recheneinrichtung 100 assoziiert, enthält also wenigstens einen Teil des zweiten Computerprogramms PRG2 für die Recheneinrichtung 100 und/oder für die Ausführung des zweiten Computerprogramms PRG2 verwendbare Daten. Für den dritten Speicherbereich 230 gilt Vergleichbares.
  • Bei weiteren bevorzugten Ausführungsformen ist eine weitere Einheit 300, insbesondere ein Kryptografiemodul 300, vorgesehen, das ebenfalls auf die Speichereinrichtung 200 zugreifen kann, und das beispielsweise einen Rechenkern 302 aufweist und/oder einen Mikroprozessor und/oder einen Mikrocontroller oder dergleichen.
  • Bei weiteren bevorzugten Ausführungsformen, vgl. das vereinfachte Blockdiagramm von 2, ist die Recheneinheit 100a (vergleichbar zu der Recheneinheit 100 gemäß 1) und/oder die Speichereinrichtung 200a (vergleichbar zu der Speichereinrichtung 200 gemäß 1) und/oder das Kryptografiemodul 300a (vergleichbar zu dem Kryptografiemodul 300 gemäß 1) jeweils als integrierte Schaltung 100a, 200a, 300a ausgebildet, wobei die Recheneinrichtung 100a und/oder die Speichereinrichtung 200a und/oder das Kryptografiemodul 300a auf einem selben Halbleitersubstrat 1002 angeordnet sind. Die Elemente 100a, 200a, 300a bilden somit vorteilhaft ein Ein-Chip-System (englisch: SoC) 1000.
  • Die Recheneinrichtung 100, 100a ist dazu ausgebildet, eine erste Überprüfung des ersten Speicherbereichs 210 der Speichereinrichtung 200, 200a zu veranlassen. Dies ist durch Schritt 400 des Flussdiagramms gemäß 3 dargestellt. Die Recheneinrichtung 100, 100a ist ferner dazu ausgebildet, in Abhängigkeit der ersten Überprüfung einen Betrieb der Recheneinrichtung 100, 100a zu steuern, vgl. Schritt 410.
  • Durch das Überprüfen 400 ist vorteilhaft die Möglichkeit gegeben, einen Inhalt des ersten Speicherbereichs 210 beispielsweise auf Abweichungen gegenüber einem vorgebbaren Inhalt hin zu überprüfen. Hierdurch kann vorteilhaft beispielsweise die Ausführung von unsicheren bzw. durch einen Angreifer kompromittierten Computerprogrammen PRG1 durch die Recheneinrichtung 100, 100a verhindert werden. Auch können geänderte bzw. manipulierte Parameter für ein durch die Recheneinrichtung 100, 100a ausführbares Computerprogramm PRG1 mittels der Überprüfung erkannt werden.
  • Die Steuerung 410 des Betriebs der Recheneinrichtung 100, 100a kann bei weiteren bevorzugten Ausführungsformen beispielsweise die Ausführung wenigstens eines weiteren Computerprogramms PRG2 und/oder die Veranlassung einer weiteren Überprüfung und/oder das Einleiten einer Fehlerreaktion oder dergleichen umfassen.
  • Bei weiteren bevorzugten Ausführungsformen ist vorgesehen, dass die erste Überprüfung zum Gegenstand hat, zu ermitteln, ob der wenigstens eine erste Speicherbereich 210 einen vorgebbaren ersten Inhalt (z.B. erstes Computerprogramm PRG1 und/oder entsprechende Parameter) aufweist.
  • Bei weiteren bevorzugten Ausführungsformen ist vorgesehen, dass die erste Überprüfung (sowie ggf. weitere Überprüfungen von Speicherbereichen der Speichereinrichtung 200, 200a) unter Verwendung eines schlüsselbasierten Nachrichtenauthentifizierungscodes, CMAC (Cipher-based Message Authentication Code) ausgeführt wird. Dadurch ist eine besonders effiziente Überprüfung ermöglicht. Eine Internetpublikation, die sich auf eine beispielhafte Ausgestaltung des CMAC-Verfahrens bezieht, ist beispielsweise unter https://doi.org/10.6028%2Fnist.sp.800-38b abrufbar.
  • Bei weiteren bevorzugten Ausführungsformen ist vorgesehen, dass die Recheneinrichtung 100, 100a dazu ausgebildet ist, die erste Überprüfung, beispielsweise mittels CMAC-Bildung, selbst auszuführen. Bei weiteren bevorzugten Ausführungsformen kann hierfür beispielsweise ein entsprechendes Computerprogramm z.B. in den Boot-Manager BM integriert sein.
  • Bei weiteren bevorzugten Ausführungsformen ist vorgesehen, dass die Recheneinrichtung 100, 100a dazu ausgebildet ist, die erste Überprüfung durch eine weitere Einheit 300, insbesondere durch das Kryptografiemodul 300 bzw. Hardware-Sicherheitsmodul 300, ausführen zu lassen. Hierzu kann die Recheneinrichtung 100, 100a der weiteren Einheit 300, 300a beispielsweise die gewünschte erste Überprüfung charakterisierende Parameter (z.B. Speicher- bzw. Adressbereich innerhalb der Speichereinrichtung 200, 200a) übermitteln, vgl. den Pfeil A1 aus 1. Sodann kann die weitere Einheit 300, 300a die Überprüfung gemäß den übermittelten Parametern ausführen (z.B. mittels CMAC). Daraufhin kann die weitere Einheit 300, 300a das Ergebnis der Überprüfung z.B. der Recheneinrichtung 100, 100a signalisieren, vgl. den Pfeil A1.
  • Bei weiteren bevorzugten Ausführungsformen ist vorgesehen, dass das Kryptografiemodul 300, 300a eine, vorzugsweise in das Kryptografiemodul integrierte, Speichereinheit 302 zur Speicherung wenigstens eines Referenzwerts R (1) und/oder eines Referenzlayouts für den wenigstens einen ersten Speicherbereich 210 aufweist. Bei bevorzugten Ausführungsformen kann der Referenzwert R beispielsweise einen CMAC-Wert für einen vorgebbaren ersten Speicherinhalt des ersten Speicherbereichs 210 repräsentieren, der beispielsweise mit einem CMAC-Wert vergleichbar ist, der bei der Überprüfung des wenigstens einen ersten Speicherbereichs 210 durch das Kryptografiemodul 300, 300a ermittelt worden ist. Sofern der ermittelte CMAC-Wert von dem Referenzwert R abweicht, kann auf eine unzulässige Veränderung des Speicherinhalts des überprüften Speicherbereichs 210 geschlossen werden.
  • Bei weiteren bevorzugten Ausführungsformen ist vorgesehen, dass die Recheneinrichtung 100, 100a dazu ausgebildet ist, das erste Computerprogramm PRG1 auszuführen, wenn die erste Überprüfung ergeben hat, dass der wenigstens eine erste Speicherbereich 210 den vorgebbaren ersten Inhalt aufweist, wobei insbesondere die Recheneinrichtung 100, 100a dazu ausgebildet ist, das erste Computerprogramm PRG1 nicht auszuführen, wenn die erste Überprüfung ergeben hat, dass der wenigstens eine erste Speicherbereich 210 nicht den vorgebbaren ersten Inhalt aufweist. Dadurch ist sichergestellt, dass im Falle einer möglichen Manipulation des ersten Speicherbereichs 210 das erste Computerprogramm PRG1 nicht ausgeführt wird, wodurch eine ggf. weitergehende Kompromittierung der Recheneinrichtung 100, 100a bzw. der Speichereinrichtung 200, 200a verhindert wird.
  • Bei weiteren bevorzugten Ausführungsformen ist vorgesehen, dass die Recheneinrichtung 100, 100a dazu ausgebildet ist, die folgenden Schritte auszuführen, wenn die erste Überprüfung ergeben hat, dass der wenigstens eine erste Speicherbereich 210 nicht den vorgebbaren ersten Inhalt aufweist, also ggf. manipuliert oder in sonstiger Weise unbeabsichtigt geändert worden ist: Veranlassen 450 (vgl. das Flussdiagramm gemäß 4) einer zweiten Überprüfung wenigstens eines zweiten Speicherbereichs 220 (1) der Speichereinrichtung 200, 200a, der mit einem zweiten Computerprogramm PRG2 für die Recheneinrichtung 100, 100a assoziiert ist (also beispielsweise zumindest einen Teil des zweiten Computerprogramms PRG2 und/oder Parameter für das zweite Computerprogramm PRG2 enthält), auf einen vorgebbaren zweiten Inhalt hin, Ausführen 452 (4) des zweiten Computerprogramms PRG2 , wenn die zweite Überprüfung ergeben hat, dass der zweite Speicherbereich 220 den vorgebbaren zweiten Inhalt aufweist. Dadurch kann im Falle einer möglichen Manipulation des ersten Speicherbereichs 210 vorteilhaft ggf. das mit dem zweiten Speicherbereich 220 assoziierte zweite Computerprogramm PRG2 ausgeführt werden.
  • Das Veranlassen 450 bzw. das darauf folgende Überprüfen gemäß 4 kann analog zu dem Schritt 400 gemäß 3 erfolgen. Somit kann auch die Überprüfung des zweiten Speicherbereichs 220 ggf. durch die Recheneinrichtung 100, 100a selbst und/oder durch die weitere Einheit 300, 300a (z.B. Kryptografiemodul) ausgeführt werden.
  • Bei weiteren bevorzugten Ausführungsformen ist vorgesehen, dass das zweite Computerprogramm PRG2 (1) dazu ausgebildet ist, einen oder mehrere Speicherbereiche 210, 230 der Speichereinrichtung 200, 200a zu beschreiben, insbesondere neu zu programmieren. Dadurch kann im Falle einer möglichen Manipulation z.B. des ersten Speicherbereichs 210 vorteilhaft ggf. ein (erneutes) Beschreiben des ersten Speicherbereichs 210 mit vorgebbarem (ersten) Inhalt bzw. vorgebbaren ersten Daten erfolgen, wodurch ein ordnungsgemäßer Betrieb der zuvor - hinsichtlich des ersten Computerprogramms PRG1 - manipulierten Speichereinrichtung 200, 200a bzw. Recheneinrichtung 100, 100a wiederherstellbar ist.
  • Bei weiteren bevorzugten Ausführungsformen ist vorgesehen, dass das zweite Computerprogramm PRG2 dazu ausgebildet ist, den ersten Speicherbereich 210 mit vorgebbaren Daten, insbesondere mit dem vorgebbaren ersten Inhalt, zu beschreiben. Auf diese Weise kann z.B. ein gewünschter Ausgangszustand wiederhergestellt werden, also ggf. manipulierte Speicherinhalte z.B. überschrieben werden.
  • Bei weiteren bevorzugten Ausführungsformen ist vorgesehen, dass das zweite Computerprogramm PRG2 ein Bootloader ist. Bei weiteren bevorzugten Ausführungsformen kann das vorstehend beispielhaft anhand des (ggf. manipulierten) ersten Speicherbereichs 210 beschriebene Prinzip vorteilhaft auch auf ein oder mehrere weitere Speicherbereiche 220, 230 der Speichereinrichtung 200, 200a (oder einer anderen Speichereinrichtung (nicht gezeigt), die der Recheneinrichtung 100, 100a zuordenbar ist) angewendet werden.
  • Beispielsweise kann das zweite Computerprogramm PRG2 als Bootloader ausgeführt sein, der einen oder mehrere Speicherbereiche 210, 230 der Speichereinrichtung 200, 200a (re-)programmieren kann.
  • Bei weiteren bevorzugten Ausführungsformen ist vorgesehen, dass die Recheneinrichtung 100, 100a dazu ausgebildet ist, eine Fehlerreaktion einzuleiten, wenn die zweite Überprüfung ergeben hat, dass der zweite Speicherbereich 220 (z.B. Bootloader) nicht den vorgebbaren zweiten Inhalt aufweist. Dadurch kann eine ggf. weitergehende Kompromittierung der Recheneinrichtung 100, 100a bzw. der Speichereinrichtung 200, 200a verhindert werden, insbesondere z.B. die Ausführung eines manipulierten Bootloaders verhindert werden.
  • Weitere bevorzugte Ausführungsformen beziehen sich auf das vorstehend unter Bezugnahme auf 3 beschriebene Verfahren sowie entsprechende Ausführungsformen, vgl. z.B. 4.
  • Weitere bevorzugte Ausführungsformen beziehen sich auf eine Verwendung der Recheneinrichtung 100, 100a gemäß den Ausführungsformen und/oder des Verfahrens gemäß den Ausführungsformen zur Überführung einer defekten und/oder manipulierten Speichereinrichtung 200, 200a in einen funktionsfähigen, insbesondere integren, Zustand.
  • 5 zeigt schematisch ein vereinfachtes Flussdiagramm eines Verfahrens gemäß weiterer bevorzugter Ausführungsformen. Der Bereich 100' umfasst i.w. auf Seiten der Recheneinrichtung 100, 100a (1, 2) ausgeführte Schritte, wobei die in dem Block BM' enthaltenen Schritte beispielsweise durch den (bzw. unter Steuerung von dem) Bootmanager BM der Recheneinrichtung 100 ausgeführt werden, und der Bereich 300' umfasst i.w. auf Seiten des Kryptografiemoduls 300 ausgeführte Schritte.
  • In Schritt S1 startet die Recheneinrichtung 100. Bei weiteren optionalen Ausführungsformen, die weiter unten erläutert werden, kann ein Start der Recheneinrichtung 100 gegebenenfalls auch durch das Kryptografiemodul 300 freigegeben werden, vergleiche die optionalen Schritte S01 bis S05. Zunächst jedoch wird davon ausgegangen, dass die Recheneinrichtung 100 bereits gestartet ist, vergleiche Schritt S1.
  • In Schritt S2 veranlasst (analog zu Schritt 400 gemäß 3) die Recheneinrichtung 100 eine erste Überprüfung wenigstens des ersten Speicherbereichs 210 der Speichereinrichtung 200. Dementsprechend werden die erste Überprüfung charakterisierende Informationen an das Kryptografiemodul 300 bzw. 300' übertragen, vergleiche den Doppelpfeil A1. In Schritt S20 führt das Kryptografiemodul die erste Überprüfung C1 des ersten Speicherbereichs 210 (1) aus, beispielsweise unter Anwendung eines CMAC-Verfahrens, bei dem beispielsweise ein CMAC-Wert in Abhängigkeit des aktuellen Speicherinhalts des ersten Speicherbereichs 210 gebildet wird, der durch das Kryptografiemodul mit einem CMAC-Referenzwert R (1) für einen vorgebbaren ersten Inhalt des ersten Speicherbereichs 210 verglichen wird. Ein Vergleichsergebnis, das das Ergebnis der ersten Überprüfung charakterisiert, wird der Recheneinrichtung 100 zugeführt, vergleiche den Doppelpfeil A1.
  • Alternativ oder ergänzend kann die erste Überprüfung des ersten Speicherbereichs 210 auch durch die Recheneinrichtung selbst ausgeführt werden, vergleiche den optionalen Block S2' und den optionalen Doppelpfeil A1'. Der optionale Block S2' kann beispielsweise einen zu dem Block C1 vergleichbaren Inhalt (CMAC-Bildung, Vergleich mit Referenzwert R) aufweisen.
  • In Schritt S3 überprüft die Recheneinrichtung 100, ob die erste Überprüfung C1 (bevorzugt ausgeführt durch das Kryptografiemodul 300, alternativ oder ergänzend gegebenenfalls auch mittels Block S2') ergeben hat, dass der wenigstens eine erste Speicherbereich 210 den vorgebbaren ersten Inhalt aufweist. Sofern dies der Fall ist, wird zu Schritt S4 verzweigt, der Ausführung des ersten Computerprogramms PRG1 einleitet, vergleiche die Schritte S5, S5'. Dementsprechend sind gemäß 5 die Schritte S5, S5' symbolisch in dem Block PRG1' zusammengefasst. Da die erste Überprüfung C1 ergeben hat, dass der erste Speicherbereich 210 seinen vorgebbaren ersten Inhalt aufweist, kann nämlich davon ausgegangen werden, dass der erste Speicherbereich 210 bzw. die darin vorhandenen Informationen (erstes Computerprogramm PRG1 und/oder zugehörige Daten wie beispielsweise Parameter) nicht manipuliert bzw. in sonstiger Weise unerwünscht verändert worden sind, sodass eine sichere Ausführung des ersten Computerprogramms PRG1 möglich ist.
  • Sofern mittels der Überprüfung aus Schritt S3 festgestellt wird, dass die erste Überprüfung C1 des ersten Speicherbereichs 210 ergeben hat, dass der erste Speicherbereich 210 den vorgebbaren ersten Inhalt nicht aufweist, wird gemäß 5 zu Schritt S6 verzweigt. In Schritt S6 erfolgt ein Veranlassen (analog zu Schritt 450 gemäß 4) einer zweiten Überprüfung C2 wenigstens eines zweiten Speicherbereichs 220 der Speichereinrichtung 200, der mit dem zweiten Computerprogramm PRG2 assoziiert ist, auf einen vorgebbaren zweiten Inhalt hin. Entsprechende Informationen werden dem Kryptografiemodul 300, 300' mittels dem Doppelpfeil A2 zugeleitet, das in Schritt S21 die zweite Überprüfung C2 (vergleichbar zu der ersten Überprüfung C1) ausführt. Das Ergebnis der zweiten Überprüfung C2 wird der Recheneinrichtung 100, 100' mitgeteilt, vergleiche ebenfalls den Doppelpfeil A2.
  • Sofern die zweite Überprüfung C2 ergibt (vergleiche Schritt S7 aus 5), dass der zweite Speicherbereich 220 den vorgebbaren zweiten Inhalt aufweist, wird zu Schritt S9 verzweigt, der die Ausführung des mit dem zweiten Speicherbereich 220 assoziierten zweiten Computerprogramms PRG2 zum Gegenstand hat, vergleiche die Schritte S10, S11. Vorliegend ist das zweite Computerprogramm PRG2 beispielsweise ein Bootloader der Recheneinrichtung 100. dementsprechend sind die Schritte S10, S11 gemäß 5 in dem Block PRG2', BL' zusammengefasst. Die Ausführung des Bootloaders BL` gemäß Schritt S9 ermöglicht dabei vorteilhaft, beispielsweise den manipulierten bzw. als fehlerhaft erkannten ersten Speicherbereich 210 neu zu beschreiben, insbesondere neu mit dem ersten Computerprogramm PRG1 bzw. mit entsprechenden Daten beschreiben, also die Wiederherstellung eines ordnungsgemäßen, nicht manipulierten Zustands. Mit anderen Worten kann unter Anwendung des Prinzips gemäß den Ausführungsformen eine sichere Re-Programmierung des ersten Speicherbereichs 210 ausgeführt werden.
  • Sofern jedoch die zweite Überprüfung C2 ergibt, vergleiche Schritt S7, dass der zweite Speicherbereich 220 nicht den vorgebbaren zweiten Inhalt aufweist, also gegebenenfalls möglicherweise ebenfalls manipuliert bzw. in sonstiger Weise unerwünscht verändert worden ist, wird zu Schritt S8 verzweigt, der eine Fehlerreaktion zum Gegenstand hat. Bei weiteren bevorzugten Ausführungsformen kann die Fehlerreaktion S8 beispielsweise ein Deaktivieren der Recheneinrichtung 100 und/oder eine Signalisierung des Fehlerzustands an eine externe Einheit (nicht gezeigt) umfassen und/oder das Überprüfen bzw. Veranlassen einer Überprüfung eines weiteren Speicherbereichs 230.
  • Bei weiteren bevorzugten Ausführungsformen kann die Recheneinrichtung 100, 100a bzw. das SoC 1000 (2) in einem Steuergerät, insbesondere für ein Fahrzeug, beispielsweise für ein Kraftfahrzeug, verwendet werden, beispielsweise zur Steuerung des Betriebs einer Brennkraftmaschine und/oder eines anderen Systems des Kraftfahrzeugs. Das Prinzip gemäß den Ausführungsformen ermöglicht vorteilhaft, dass ein Steuergerät, welches hinsichtlich seiner Software, beispielsweise hinsichtlich des ersten Computerprogramms PRG1, manipuliert worden ist, wieder in ein integres Steuergerät bzw. einen integren Zustand überführt werden kann, insbesondere wenn eine Integrität des Bootmanagers BM (1) und des Bootloaders BL, PRG2 gegeben sind.
  • Bei weiteren bevorzugten Ausführungsformen werden der Bootmanager BM und/oder der Bootloader BL in einen eigens gesicherten Speicherbereich 202 der Speichereinrichtung 200 (bzw. einer anderen Speichereinrichtung (nicht gezeigt), auf die die Recheneinrichtung zugreifen kann) gelegt, wodurch eine Manipulation weiter erschwert wird. Beispielsweise können der Bootmanager BM und/oder der Bootloader BL in einen OTP (one time programmable)-Speicherbereich, der nur einmalig geschrieben werden kann, oder in einen eigenen geschützten Bereich, der beispielsweise mittels eines Passworts absicherbar ist, geschrieben werden.
  • Das Prinzip gemäß den Ausführungsformen ermöglicht vorteilhaft die Wiederherstellung eines integren Zustands der Speichereinrichtung 200, 200a bzw. der Recheneinrichtung 100, 100a bzw. eines die Recheneinrichtung 100, 100a enthaltenden Zielsystems (beispielsweise Steuergerät), wobei diese Wiederherstellung vorteilhaft im Feld angewendet werden kann, also dann, wenn die Recheneinrichtung 100, 100a in einem Zielsystem eingebaut ist. Dadurch wird vorteilhaft gegebenenfalls ein Austausch des Zielsystems bzw. Steuergeräts und/oder eine erneute Handhabung des Steuergeräts, beispielsweise im Wege einer Reparatur bzw. einer Rückläufer-Analyse, vermieden.
  • Bei weiteren bevorzugten Ausführungsformen kann ein Start der Recheneinrichtung 100 gegebenenfalls durch das Kryptografiemodul 300 verhindert bzw. freigegeben werden, vergleiche die optionalen Schritte S01 bis S05 gemäß 5. Dadurch kann die Sicherheit des Betriebs der Recheneinrichtung 100 weiter gesteigert werden. In Schritt S01 startet das Kryptografiemodul 300, 300'. In Schritt S02 führt das Kryptografiemodul 300, 300' eine Überprüfung des Bootmanagers BM, BM' der Recheneinrichtung 100 aus, wodurch eine gegebenenfalls vorhandene Manipulation des Bootmanagers BM, BM' feststellbar ist. Die Überprüfung gemäß Schritt S02 kann beispielsweise ebenfalls mittels eines CMAC- Verfahrens unter Vergleich mit einem vorgebbaren Referenzwert R (1) ausgeführt werden (also z.B. CMACbasierte Überprüfung des Speicherbereichs 202, der den Bootmanager BM aufweist). In Schritt S03 wird überprüft, ob die Überprüfung gemäß Schritt S02 einen Fehler ergibt (z.B. aufgrund eines manipulierten Bootmanagers BM). Ist dies der Fall, wird zu Schritt S05 verzweigt, in dem die Recheneinrichtung 100 deaktiviert wird. Ist dies nicht der Fall, wird zu Schritt S04 verzweigt, in dem das Kryptografiemodul 300 einen Start der Recheneinrichtung 100 freigibt, vergleiche Pfeil A01. Zuvor kann das Kryptografiemodul 300 die Recheneinrichtung 100 beispielsweise in einem Rücksetz (Reset)-Zustand halten, sodass die Recheneinrichtung 100 nicht starten kann, bevor die Überprüfung gemäß Schritt S03 ausgeführt ist. Dadurch ergibt sich ein besonders sicherer Betrieb der Recheneinrichtung 100. Zum einen kann die Integrität des Bootmanagers BM, BM' überprüft und ein Start der Recheneinrichtung 100, 100' erst nach erfolgreicher Überprüfung des Bootmanagers BM, BM' freigegeben werden, vergleiche die Schritte S01 bis S04. Sodann kann die Recheneinrichtung 100, 100' selbst weitere Speicherbereiche 210, 220 bzw. damit assoziierte Computerprogramme PRG1, PRG2 überprüfen bzw. durch das Kryptografiemodul 300 überprüfen lassen, vergleiche die Schritte C1, C2. Weiter ist bei bevorzugten Ausführungsformen die Möglichkeit der Re-Programmierung gegebenenfalls unerwünscht veränderter beziehungsweise manipulierter Speicherbereiche gegeben.
  • 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 102008041360 A1 [0003]

Claims (14)

  1. Recheneinrichtung (100; 100a), die dazu ausgebildet ist, auf wenigstens einen Speicherbereich (210, 220, 230) einer der Recheneinrichtung (100; 100a) zugeordneten Speichereinrichtung (200; 200a) zuzugreifen, wobei die Recheneinrichtung (100; 100a) dazu ausgebildet ist, eine erste Überprüfung (C1) wenigstens eines ersten Speicherbereichs (210) der Speichereinrichtung (200) zu veranlassen (400), der mit einem ersten Computerprogramm (PRG1; SW2) für die Recheneinrichtung (100; 100a) assoziiert ist, und in Abhängigkeit der ersten Überprüfung (C1) einen Betrieb der Recheneinrichtung (100; 100a) zu steuern (410).
  2. Recheneinrichtung (100; 100a) nach Anspruch 1, wobei die erste Überprüfung (C1) zum Gegenstand hat, zu ermitteln, ob der wenigstens eine erste Speicherbereich (210) einen vorgebbaren ersten Inhalt aufweist.
  3. Recheneinrichtung (100; 100a) nach wenigstens einem der vorstehenden Ansprüche, wobei die Recheneinrichtung (100; 100a) dazu ausgebildet ist, a) die erste Überprüfung (C1) selbst auszuführen, und/oder b) die erste Überprüfung (C1) durch eine weitere Einheit (300; 300a), insbesondere durch ein Kryptografiemodul (300; 300a), ausführen zu lassen.
  4. Recheneinrichtung (100; 100a) nach wenigstens einem der Ansprüche 2 bis 3, wobei die Recheneinrichtung (100; 100a) dazu ausgebildet ist, das erste Computerprogramm (PRG1; SW2) auszuführen, wenn die erste Überprüfung (C1) ergeben hat, dass der wenigstens eine erste Speicherbereich (210) den vorgebbaren ersten Inhalt aufweist, und wobei insbesondere die Recheneinrichtung (100; 100a) dazu ausgebildet ist, das erste Computerprogramm (PRG1; SW2) nicht auszuführen, wenn die erste Überprüfung (C1) ergeben hat, dass der wenigstens eine erste Speicherbereich (210) nicht den vorgebbaren ersten Inhalt aufweist.
  5. Recheneinrichtung (100; 100a) nach wenigstens einem der Ansprüche 2 bis 4, wobei die Recheneinrichtung (100; 100a) dazu ausgebildet ist, die folgenden Schritte auszuführen, wenn die erste Überprüfung (C1) ergeben hat, dass der wenigstens eine erste Speicherbereich (210) nicht den vorgebbaren ersten Inhalt aufweist: Veranlassen (450) einer zweiten Überprüfung (C2) wenigstens eines zweiten Speicherbereichs (220) der Speichereinrichtung (200), der mit einem zweiten Computerprogramm (PRG2; BL) für die Recheneinrichtung (100; 100a) assoziiert ist, auf einen vorgebbaren zweiten Inhalt hin, Ausführen (452) des zweiten Computerprogramms (PRG2; BL), wenn die zweite Überprüfung (C2) ergeben hat, dass der zweite Speicherbereich (PRG2) den vorgebbaren zweiten Inhalt aufweist.
  6. Recheneinrichtung (100; 100a) nach Anspruch 5, wobei das zweite Computerprogramm (PRG2; BL) dazu ausgebildet ist, einen oder mehrere Speicherbereiche der Speichereinrichtung (200) zu beschreiben, insbesondere neu zu programmieren.
  7. Recheneinrichtung (100; 100a) nach Anspruch 6, wobei das zweite Computerprogramm (PRG2; BL) dazu ausgebildet ist, den ersten Speicherbereich (210) mit vorgebbaren Daten, insbesondere mit dem vorgebbaren ersten Inhalt, zu beschreiben.
  8. Recheneinrichtung (100; 100a) nach wenigstens einem der Ansprüche 5 bis 7, wobei die Recheneinrichtung (100; 100a) dazu ausgebildet ist, eine Fehlerreaktion (S8) einzuleiten, wenn die zweite Überprüfung (C2) ergeben hat, dass der zweite Speicherbereich (220) nicht den vorgebbaren zweiten Inhalt aufweist.
  9. Verfahren zum Betreiben einer Recheneinrichtung (100; 100a), die dazu ausgebildet ist, auf wenigstens einen Speicherbereich (210, 220, 230) einer der Recheneinrichtung (100; 100a) zugeordneten Speichereinrichtung (200; 200a) zuzugreifen, wobei die Recheneinrichtung (100; 100a) eine erste Überprüfung (C1) wenigstens eines ersten Speicherbereichs (210, 220, 230) der Speichereinrichtung (200) veranlasst (400), der mit einem ersten Computerprogramm (PRG1; SW2) für die Recheneinrichtung (100; 100a) assoziiert ist, und in Abhängigkeit der ersten Überprüfung (C1) einen Betrieb der Recheneinrichtung (100; 100a) steuert (410).
  10. Verfahren nach Anspruch 9, wobei die erste Überprüfung (C1) zum Gegenstand hat, zu ermitteln, ob der wenigstens eine erste Speicherbereich (210) einen vorgebbaren ersten Inhalt aufweist, wobei insbesondere die Recheneinrichtung (100; 100a) a) die erste Überprüfung (C1) selbst ausführt, und/oder b) die erste Überprüfung (C1) durch eine weitere Einheit (300; 300a), insbesondere durch ein Kryptografiemodul (300; 300a), ausführen lässt.
  11. Verfahren nach wenigstens einem der Ansprüche 9 bis 10, wobei die Recheneinrichtung (100; 100a) das erste Computerprogramm (PRG1; SW2) ausführt, wenn die erste Überprüfung (C1) ergeben hat, dass der wenigstens eine erste Speicherbereich (210) einen bzw. den vorgebbaren ersten Inhalt aufweist, wobei insbesondere die Recheneinrichtung (100; 100a) das erste Computerprogramm (PRG1; SW2) nicht ausführt, wenn die erste Überprüfung (C1) ergeben hat, dass der wenigstens eine erste Speicherbereich (210) nicht den vorgebbaren ersten Inhalt aufweist.
  12. Verfahren nach wenigstens einem der Ansprüche 10 bis 11, wobei die Recheneinrichtung (100; 100a) die folgenden Schritte ausführt, wenn die erste Überprüfung (C1) ergeben hat, dass der wenigstens eine erste Speicherbereich (210) nicht den vorgebbaren ersten Inhalt aufweist: Veranlassen (450) einer zweiten Überprüfung (C2) wenigstens eines zweiten Speicherbereichs (220, 230) der Speichereinrichtung (200; 200a), der mit einem zweiten Computerprogramm (PRG2; BL) für die Recheneinrichtung (100; 100a) assoziiert ist, auf einen vorgebbaren zweiten Inhalt hin, Ausführen (452) des zweiten Computerprogramms (PRG2; BL), wenn die zweite Überprüfung (C2) ergeben hat, dass der zweite Speicherbereich (220, 230) den vorgebbaren zweiten Inhalt aufweist.
  13. Verfahren nach Anspruch 12, wobei die Recheneinrichtung (100; 100a) mittels des zweiten Computerprogramms (PRG2; BL) einen oder mehrere Speicherbereiche (210, 230) der Speichereinrichtung (200) beschreibt, insbesondere neu programmiert, wobei insbesondere der erste Speicherbereich (210) mit vorgebbaren Daten, insbesondere mit dem vorgebbaren ersten Inhalt, beschrieben wird.
  14. Verwendung der Recheneinrichtung (100; 100a) nach wenigstens einem der Ansprüche 1 bis 8 und/oder des Verfahrens nach wenigstens einem der Ansprüche 9 bis 13 zur Überführung einer defekten und/oder manipulierten Speichereinrichtung (200) in einen funktionsfähigen, insbesondere integren, Zustand.
DE102018217969.7A 2018-10-19 2018-10-19 Recheneinrichtung und Betriebsverfahren hierfür Pending DE102018217969A1 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE102018217969.7A DE102018217969A1 (de) 2018-10-19 2018-10-19 Recheneinrichtung und Betriebsverfahren hierfür
CN201910992878.0A CN111079194A (zh) 2018-10-19 2019-10-18 计算装置和用于该计算装置的运行方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102018217969.7A DE102018217969A1 (de) 2018-10-19 2018-10-19 Recheneinrichtung und Betriebsverfahren hierfür

Publications (1)

Publication Number Publication Date
DE102018217969A1 true DE102018217969A1 (de) 2020-04-23

Family

ID=70310446

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102018217969.7A Pending DE102018217969A1 (de) 2018-10-19 2018-10-19 Recheneinrichtung und Betriebsverfahren hierfür

Country Status (2)

Country Link
CN (1) CN111079194A (de)
DE (1) DE102018217969A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102020210100A1 (de) 2020-08-10 2022-02-10 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren und Vorrichtung zum Überwachen eines Betriebs einer nichtflüchtigen Speichereinrichtung

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102008041360A1 (de) 2008-08-20 2010-02-25 Robert Bosch Gmbh Steuergerät für ein Fahrzeug und Verfahren für eine Datenaktualisierung für ein Steuergerät für ein Fahrzeug

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040076043A1 (en) * 2002-10-21 2004-04-22 Phoenix Technologies Ltd. Reliable and secure updating and recovery of firmware from a mass storage device
DE102007034525B4 (de) * 2007-07-24 2010-02-11 Siemens Ag Verfahren und System zum Überprüfen der Integrität von in einem vorbestimmten Speicherbereich eines Speichers gespeicherten Daten
US8839458B2 (en) * 2009-05-12 2014-09-16 Nokia Corporation Method, apparatus, and computer program for providing application security
CN104182242A (zh) * 2013-05-28 2014-12-03 华为技术有限公司 一种***启动方法及装置
CN103455354B (zh) * 2013-09-06 2017-04-12 南京南自信息技术有限公司 一种防止固件升级失败的方法和设备

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102008041360A1 (de) 2008-08-20 2010-02-25 Robert Bosch Gmbh Steuergerät für ein Fahrzeug und Verfahren für eine Datenaktualisierung für ein Steuergerät für ein Fahrzeug

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102020210100A1 (de) 2020-08-10 2022-02-10 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren und Vorrichtung zum Überwachen eines Betriebs einer nichtflüchtigen Speichereinrichtung

Also Published As

Publication number Publication date
CN111079194A (zh) 2020-04-28

Similar Documents

Publication Publication Date Title
DE102018214999A1 (de) Vorrichtung zur Absicherung von Diagnosebefehlen an ein Steuergerät und entsprechendes Kraftfahrzeug
DE19839680B4 (de) Verfahren und Vorrichtung zur Veränderung des Speicherinhalts von Steuergeräten
DE112016002785T5 (de) Elektronische Steuereinheiten für Fahrzeuge
DE102013213314A1 (de) Hinterlegen mindestens eines berechenbaren Integritätsmesswertes in einem Speicherbereich eines Speichers
DE102016221108A1 (de) Verfahren zum Aktualisieren einer Software eines Steuergeräts eines Fahrzeugs
EP3811260B1 (de) Kryptografiemodul und betriebsverfahren hierfür
DE102020003072B3 (de) Verfahren zur sicheren Nutzung von kryptografischem Material
DE102018217969A1 (de) Recheneinrichtung und Betriebsverfahren hierfür
DE102018211139A1 (de) Steuergerät sowie Verfahren zu dessen Betrieb
DE102020207866A1 (de) Verfahren zum Durchführen einer abgesicherten Startsequenz eines Steuergeräts
DE102020207862A1 (de) Verfahren zur sicheren Aktualisierung von Steuergeräten
DE102009002898A1 (de) Verfahren zur Aktualisierung eines Steuergeräts eines Fahrzeugs
DE102020207863A1 (de) Verfahren zur sicheren Aktualisierung von Steuergeräten
DE102021004427B4 (de) Verfahren zur lmplementierung und Nutzung von kryptografischem Material in wenigstens einer Systemkomponente eines informationstechnischen Systems
DE102020216048A1 (de) Vorrichtung mit einer Schnittstelle und Verfahren zum Betreiben einer Vorrichtung mit einer Schnittstelle
DE102020207861A1 (de) Verfahren zur Durchführung einer abgesicherten Startsequenz eines Steuergeräts
DE102020216071A1 (de) Verfahren zum Betreiben einer Vorrichtung, ein Steuergerät eines Kraftfahrzeugs, und Vorrichtung
DE102021130402A1 (de) Steuergerät und Steuergerätsystem für ein Kraftfahrzeug sowie Verfahren zum Betreiben eines Steuergeräts für ein Kraftfahrzeug
DE102020212988A1 (de) Sicheres Hochfahren eines Computersystems
DE102020209236A1 (de) Verfahren zum Betreiben einer nicht-flüchtigen Speichereinheit
WO2023083500A1 (de) Verfahren, fahrzeugkomponente und computerprogramm zum einräumen einer berechtigung zum ausführen eines computerprogramms durch eine fahrzeugkomponente eines fahrzeugs
DE112021002282T5 (de) Elektronische steuervorrichtung und aktualisierungsverfahren für steuerungssoftware
DE102021212594A1 (de) Verfahren zum Starten einer Speichereinheit einer Recheneinheit
DE102021125750A1 (de) Recheneinheit für ein Fahrzeug und Verfahren und Computerprogramm für eine Recheneinheit für ein Fahrzeug
DE10215626B4 (de) Verfahren zur Änderung von Verschlüsselungsalgorithmen bei geschützter Software oder geschützten Daten