DE102014222181A1 - Verfahren zum Betreiben eines Steuergeräts - Google Patents

Verfahren zum Betreiben eines Steuergeräts

Info

Publication number
DE102014222181A1
DE102014222181A1 DE102014222181.1A DE102014222181A DE102014222181A1 DE 102014222181 A1 DE102014222181 A1 DE 102014222181A1 DE 102014222181 A DE102014222181 A DE 102014222181A DE 102014222181 A1 DE102014222181 A1 DE 102014222181A1
Authority
DE
Germany
Prior art keywords
processor unit
safety
critical
security
security processor
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
DE102014222181.1A
Other languages
English (en)
Inventor
Christopher Pohl
Hamit Hacioglu
Frederic Stumpf
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 DE102014222181.1A priority Critical patent/DE102014222181A1/de
Publication of DE102014222181A1 publication Critical patent/DE102014222181A1/de
Application status is Pending legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/72Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • G06F9/4887Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues involving deadlines, e.g. rate based, periodic

Abstract

Die Erfindung betrifft ein Verfahren zum Betreiben eines Steuergeräts (150) mit einem System-on-a-Chip (100) mit einer Prozessoreinheit (110) und einer Sicherheits-Prozessoreinheit (120), wobei die Prozessoreinheit (110) und die Sicherheits-Prozessoreinheit (120) jeweils wenigstens einen Prozessorkern (111, 112, 113; 121) umfassen, wobei die Prozessoreinheit (110) die Sicherheits-Prozessoreinheit (120) anweist, sicherheitskritische Prozesse auszuführen, wobei den in der Sicherheits-Prozessoreinheit (120) auszuführenden, sicherheitskritische Prozessen (210, 220, 230, 240) von der Prozessoreinheit (110) oder der Sicherheits-Prozessoreinheit (120) jeweils eine Priorität zugeordnet wird und wobei die sicherheitskritischen Prozesse (210, 220, 230, 240) in der Sicherheits-Prozessoreinheit (120) in Abhängigkeit von der jeweiligen Priorität ausgeführt werden.

Description

  • Die vorliegende Erfindung betrifft ein Verfahren zum Betreiben eines Steuergeräts mit einem System-on-a-Chip mit einer Prozessoreinheit und einer Sicherheits-Prozessoreinheit sowie eine Recheneinheit und ein Computerprogramm zu dessen Durchführung.
  • Stand der Technik
  • Ein System-on-a-Chip (Ein-Chip-System, SoC) ist ein integrierter Schaltkreis (IC), bei dem eine Vielzahl von Funktionen eines entsprechenden Systems auf einem einzigen Chip (Die) integriert ist. Derartige SoCs können eine Prozessoreinheit (Prozessor Systemteil, PS) umfassen. Eine derartige Prozessoreinheit kann einen zweckmäßigen Prozessor bzw. Prozessorkern oder einen Multicore-Prozessor umfassen. Multicore-Prozessoren umfassen mehrere (wenigstens zwei) Prozessorkerne. Ein Prozessorkern umfasst zumeist eine arithmetisch-logische Einheit (ALU), welche das eigentliche elektronische Rechenwerk zur Ausführung von Tasks, Programmen, Rechenbefehlen, etc. darstellt, und weiterhin einen lokalen Speicher.
  • Zusätzlich zu der Prozessoreinheit kann ein SoC auch ein sogenanntes Hardware-Sicherheitsmodul (Hardware Security Module, HSM) umfassen. Analog zu der herkömmlichen Prozessoreinheit kann auch dieses HSM einen oder mehrere Prozessorkerne sowie lokalen Speicher (ROM, RAM, Flash, EEPROM) umfassen. Ein HSM verfügt somit über eigene physische Ressourcen (Prozessorkern(e), lokalen Speicher, usw.), welche unabhängig von den physischen Ressourcen der Prozessoreinheit sind. Die Ressourcen des HSM können insbesondere gegenüber den Ressourcen der Prozessoreinheit auf Hardwareebene abgeschirmt sein.
  • Ein HSM stellt eine isolierte, sichere Umgebung dar, die gegen Manipulation und Angriffe, u.a. von der Prozessoreinheit, geschützt ist, und kann daher insbesondere für sicherheitskritische Prozesse bzw. Operationen genutzt werden. Im Zuge derartiger sicherheitskritischer bzw. kryptographischer Prozesse können sicherheitskritische Daten verarbeitet und/oder erstellt werden, beispielsweise Signaturen, Verschlüsselungen, usw.
  • Es kann sich als zweckmäßig erweisen, ein derartiges SoC mit einer Prozessoreinheit und einem HSM in ein Steuergerät zu integrieren, insbesondere in ein Steuergerät eines Kraftfahrzeugs wie etwa ein Motorsteuergerät. Herkömmliche HSM sind zumeist jedoch ungeeignet für den Gebrauch in derartigen Steuergeräten und können nicht gewährleisten, dass für den Kraftfahrzeugbereich geltende (Sicherheits-)Anforderungen und (Sicherheits-)Normen eingehalten werden.
  • Beispielsweise kann in einem Steuergerät gefordert sein, dass bestimmte Prozesse, insbesondere sicherheitskritische Prozesse, eine Echtzeitbedingung erfüllen, d.h. dass ein Ergebnis dieser Prozesse innerhalb eines definierten Zeitintervalls garantiert berechnet ist, also vor einer bestimmten Zeitschranke vorliegt. Zumeist kann jedoch mit herkömmlichen HSM nicht gewährleistet werden, dass sicherheitskritische Prozesse eine Echtzeitbedingung erfüllen.
  • Es ist daher wünschenswert, eine Möglichkeit bereitzustellen, um ein System-on-a-Chip mit einer Prozessoreinheit und einem Hardware-Sicherheitsmodul in ein Steuergerät zu implementieren, insbesondere in ein Steuergerät eines Kraftfahrzeugs.
  • Offenbarung der Erfindung
  • Erfindungsgemäß wird ein Verfahren zum Betreiben eines Steuergeräts mit den Merkmalen des Patentanspruchs 1 vorgeschlagen. Vorteilhafte Ausgestaltungen sind Gegenstand der Unteransprüche sowie der nachfolgenden Beschreibung.
  • Das Steuergerät ist insbesondere als ein Steuergerät eines Kraftfahrzeugs ausgebildet, beispielsweise als ein Motorsteuergerät. Das Steuergerät umfasst ein System-on-a-Chip (SoC) mit einer Prozessoreinheit und einer Sicherheits-Prozessoreinheit, die jeweils wenigstens einen Prozessorkern umfassen. Die Prozessoreinheit und die Sicherheits-Prozessoreinheit umfassen jeweils insbesondere Schutzmechanismen gegen Spannungsänderungen, Taktänderungen und Temperaturänderungen.
  • Weiterhin umfassen die Prozessoreinheit und die Sicherheits-Prozessoreinheit jeweils insbesondere einen lokalen Speicher, beispielsweise einen Flash-, ROM-, RAM- und/oder EEPROM-Speicher. Alternativ oder zusätzlich kann insbesondere auch ein gemeinsamer lokaler Speicher für die Prozessoreinheit und die Sicherheits-Prozessoreinheit vorgesehen sein. In diesem Fall ist insbesondere ein Speicher-Sicherheitsmechanismus vorgesehen, beispielsweise eine Memory Protection Unit (MPU). Ein derartiger Speicher-Sicherheitsmechanismus verwaltet den Zugriff auf diesen gemeinsamen Speicher und schützt den gemeinsamen Speicher vor Manipulation und Angriffen. Insbesondere wird durch einen derartigen Speicher-Sicherheitsmechanismus eine Isolation von Speicherbereichen für die Prozessoreinheit und für die Sicherheits-Prozessoreinheit in dem gemeinsamen Speicher realisiert.
  • Die Sicherheits-Prozessoreinheit ist insbesondere als ein Hardware-Sicherheitsmodul (Hardware Security Module, HSM) ausgebildet. Sicherheits-Prozessoreinheit und Prozessoreinheit sind insbesondere unabhängig voneinander und verfügen jeweils über eigene physische Ressourcen (Prozessorkern(e), lokalen Speicher, usw.). Die Sicherheits-Prozessoreinheit ist insbesondere auf Hardwareebene abgeschirmt und stellt eine sichere Umgebung dar, die gegen Manipulation und Angriffe geschützt ist oder zumindest Manipulationen oder Angriffe erschweren soll.
  • Die Prozessoreinheit kann die Sicherheits-Prozessoreinheit anweisen, sicherheitskritische Prozesse auszuführen. Prozessoreinheit und Sicherheits-Prozessoreinheit stehen insbesondere über ein Kommunikationssystem, beispielsweise einen zweckmäßigen Bus oder einem gemeinsam genutzten Speicher oder Kommunikationsregistern oder einer Kombination davon, in Kommunikationsverbindung.
  • Unter sicherheitskritischen Prozessen bzw. kryptographischen Prozessen sind insbesondere Prozesse zu verstehen, in welchen sicherheitskritische Daten verarbeitet und/oder erzeugt werden, welche als Ganzes oder teilweise das SoC nicht verlassen sollen bzw. nicht an eine dritte Partei gelangen sollen, beispielsweise die für gewisse Operationen benötigten geheimen Schlüssel. Beispielsweise können als derartige sicherheitskritische Prozesse einer oder mehrere der folgenden Prozesse bzw. Operationen angesehen werden: Erzeugen und/oder Überprüfen einer Signatur; Verschlüsselung und/oder Entschlüsselung von Daten; Anwendung eines Hash-Algorithmus; Erzeugen von Codes und/oder Passwörtern; Authentifizieren und/oder Verifizieren von Nachrichten, Steuerbefehlen und/oder Ansteuerwerten, Speichern von sicherheitskritischen Daten
  • Erfindungsgemäß wird den in der Sicherheits-Prozessoreinheit auszuführenden, sicherheitskritischen Prozessen jeweils eine Priorität zugeordnet und die sicherheitskritischen Prozesse werden in der Sicherheits-Prozessoreinheit in Abhängigkeit von der jeweiligen Priorität ausgeführt. Insbesondere ordnet die Prozessoreinheit selbst einem entsprechenden sicherheitskritischen Prozess eine jeweilige Priorität zu, wenn die Prozessoreinheit die Sicherheits-Prozessoreinheit anweist, diesen sicherheitskritischen Prozess auszuführen. Es ist auch denkbar, dass die Sicherheits-Prozessoreinheit den auszuführenden sicherheitskritischen Prozessen die jeweilige Priorität zuordnet.
  • Insbesondere weisen einzelne Prozessorkerne der Prozessoreinheit die Sicherheits-Prozessoreinheit an, die entsprechenden sicherheitskritischen Prozesse auszuführen. Beispielsweise kann ein Betriebssystem, welches in dem jeweiligen Prozessorkern der Prozessoreinheit ausgeführt wird, die Sicherheits-Prozessoreinheit entsprechend anweisen. In den einzelnen Prozessorkernen der Prozessoreinheit können auch (insbesondere nicht sicherheitskritische) Prozesse bzw. Operationen bzw. Anwendungen ausgeführt werden. Es ist auch denkbar, dass diese Prozesse die Sicherheits-Prozessoreinheit entsprechend direkt anweisen.
  • Insbesondere kann in der Sicherheits-Prozessoreinheit ein Ablaufplan bzw. eine Reihenfolge erstellt werden ("scheduling"), gemäß welchem bzw. welcher die unterschiedlichen sicherheitskritischen Prozesse ausgeführt werden. Insbesondere werden die sicherheitskritischen Prozesse absteigend nach der jeweiligen Priorität ausgeführt. Sicherheitskritische Prozesse mit hoher Priorität werden insbesondere zuerst ausgeführt, sicherheitskritische Prozesse mit geringer Priorität werden insbesondere als letztes ausgeführt.
  • Vorteile der Erfindung
  • Durch die Erfindung wird eine flexible Planung der abzuarbeitenden sicherheitskritischen Prozesse ermöglicht. Durch die Erfindung können relevante sicherheitskritische Prozesse, deren Abarbeitung von großer Bedeutung ist und möglichst schnell erfolgen soll, von sicherheitskritischen Prozesse mit untergeordneter Bedeutung, deren Abarbeitung nicht dringend und nicht schnellstmöglich erfolgen soll, differenziert werden.
  • Insbesondere ist es durch die Erfindung nicht notwendig, dass die Sicherheits-Prozessoreinheit sicherheitskritische Prozesse in der Reihenfolge ausführt, in welcher sie angewiesen wurden. Relevante sicherheitskritische Prozesse mit hoher Priorität können vor sicherheitskritischen Prozessen mit untergeordneter Bedeutung und niedriger Priorität ausgeführt werden. Insbesondere führt die Sicherheits-Prozessoreinheit jeweils nur einen einzigen sicherheitskritischen Prozess aus und nicht mehrere gleichzeitig. Durch die Erfindung wird es ermöglicht, die Ressourcen der Sicherheits-Prozessoreinheit sinnvoll zu nutzen und die sicherheitskritischen Prozesse nach ihrer Bedeutung und Relevanz abzuarbeiten.
  • Auch herkömmliche Hardware-Sicherheitsmodule können nicht mehrere Prozesse gleichzeitig ausführen. In herkömmlichen Hardware-Sicherheitsmodulen kann es gegebenenfalls nötig sein, abzuwarten bis ein aktuell in dem HSM ausgeführter Prozess beendet ist, bevor ein neuer Prozess gestartet werden kann. Je nach aktuell ausgeführtem Prozess kann es gegebenenfalls vergleichsweise lange dauern, beispielsweise bis zu mehreren Sekunden, bis ein neuer Prozess gestartet werden kann. Demgemäß muss gegebenenfalls zunächst bis zu mehreren Sekunden gewartet werden, bevor ein wichtiger sicherheitskritischer Prozess ausgeführt werden kann.
  • Durch die Erfindung werden derartige Probleme herkömmlicher Hardware-Sicherheitsmodule behoben. Relevanten sicherheitskritischen Prozessen, deren Ausführung von großer Bedeutung ist und so schnell wie möglich durchgeführt werden soll, wird jeweils eine hohe bzw. höchste Priorität zugeordnet. Diese sicherheitskritischen Prozesse werden in der Sicherheits-Prozessoreinheit als erstes und so schnell wie möglich ausgeführt. Somit kann gewährleistet werden, dass dringend benötigte sicherheitskritische Daten möglichst schnell erstellt bzw. verarbeitet werden.
  • Es ist eine zweckmäßig große Anzahl von unterschiedlichen Prioritäten bzw. von unterschiedlichen Prioritätsstufen denkbar. Je mehr unterschiedliche Prioritäten an sicherheitskritische Prozesse vergeben werden können, desto besser kann die Relevanz der unterschiedlichen sicherheitskritischen Prozesse unterschieden werden.
  • Durch die Erfindung kann insbesondere gewährleistet werden, dass für den Kraftfahrzeugbereich geltende (Sicherheits-)Anforderungen und (Sicherheits-)Normen eingehalten werden. Insbesondere wird durch die Erfindung eine Echtzeitfähigkeit der Sicherheits-Prozessoreinheit ermöglicht. Die Erfindung eignet sich daher insbesondere für Steuergeräte eines Kraftfahrzeugs, beispielsweise für ein Motorsteuergerät. Durch die Erfindung können Angriffe und Manipulation des Steuergeräts verhindert werden. Im Falle eines Steuergeräts eines Kraftfahrzeugs können insbesondere ein "Know-How-Schutz" gewährleistet und Manipulationen an der Steuergerätesoftware wie beispielsweise beim "Chiptuning" unterbunden werden.
  • Insbesondere werden im Zuge der sicherheitskritischen Prozesse Daten verarbeitet und/oder erstellt, welche für die Ansteuerung und den Betrieb des Kraftfahrzeugs benötigt werden, beispielsweise spezielle Ansteuerungsbefehle, technische Daten, Steuer- oder Kennwerte. Diese Befehle bzw. Werte wurden vom Hersteller oft in jahrelangen Entwicklungsprozessen mit hohem Forschungsaufwand durch lang andauernde und aufwendige Testreihen ermittelt und optimiert. Es ist somit im Sinne des Herstellers, dass diese Daten nicht von einer dritten Partei, einem Angreifer, ausgelesen werden können, um einen "Know-How-Schutz" zu garantieren.
  • Im Zuge eines "Chiptunings" versucht ein Angreifer die ausgeführten sicherheitskritischen Prozesse zu manipulieren und dabei Steuerparameter des Steuergeräts zu verändern, um Leistungssteigerungen herbeizuführen. Dies kann zu Bauteilschäden und Umweltverschmutzung führen, sogar zu Personenschäden, da die gesamte Fahrzeugauslegung (Antrieb, Bremsanlage) beeinträchtigt werden kann.
  • Vorteilhafterweise kann die Ausführung eines sicherheitskritischen Prozesses mit niedriger Priorität zu Gunsten eines sicherheitskritischen Prozesses mit hoher Priorität unterbrochen werden und später wieder weitergeführt werden. Die Sicherheits-Prozessoreinheit ist nicht stringent und zwingend an den erstellten Ablaufplan bzw. die erstellte Reihenfolge der abzuarbeitenden sicherheitskritischen Prozesse gebunden. Der Ablaufplan bzw. die Reihenfolge kann insbesondere jederzeit verändert werden, einzelne sicherheitskritische Prozesse können in dem Ablaufplan bzw. der Reihenfolge bei Bedarf flexibel neu verteilt werden.
  • Wenn in der Sicherheits-Prozessoreinheit ein erster sicherheitskritischer Prozess mit einer ersten Priorität ausgeführt wird und wenn die Prozessoreinheit die Sicherheits-Prozessoreinheit anweist, einen zweiten sicherheitskritischen Prozess mit einer zweiten Priorität, die höher ist als die erste Priorität, auszuführen, wird die Ausführung des ersten sicherheitskritischen Prozesses in der Sicherheits-Prozessoreinheit bevorzugt unterbrochen bzw. pausiert und der zweite sicherheitskritische Prozess wird in der Sicherheits-Prozessoreinheit ausgeführt.
  • Dies kann insbesondere automatisch erfolgen, sobald die Sicherheits-Prozessoreinheit eine entsprechende Anweisung erhält, einen sicherheitskritischen Prozess mit einer höheren Priorität auszurufen. Vorteilhafterweise wird der aktuelle Fortschritt der Ausführung des ersten sicherheitskritischen Prozesses hinterlegt und (vollständig) gespeichert, beispielsweise im lokalen Speicher (, RAM, Flash, EEPROM) der Sicherheits-Prozessoreinheit.
  • Nach Ausführung des zweiten sicherheitskritischen Prozess wird vorzugsweise die Ausführung des ersten sicherheitskritischen Prozesses in der Sicherheits-Prozessoreinheit fortgesetzt. Die Ausführung wird vorteilhafterweise direkt bei dem hinterlegten aktuellen Fortschritt fortgesetzt. Somit gehen keine Daten des ersten sicherheitskritischen Prozesses verloren, die Ausführung muss nicht erneut gestartet werden. Vorzugsweise wird die Ausführung des ersten sicherheitskritischen Prozesses autonom fortgesetzt, ohne dass es eine weitere Interaktion der Prozessoreinheit notwendig ist.
  • Wenn während der Ausführung des zweiten sicherheitskritischen Prozesses die Ausführung eines oder mehrerer weiterer sicherheitskritischer Prozesse angewiesen wird, denen jeweils höhere Prioritäten als dem ersten sicherheitskritischen Prozess aber niedrigere Prioritäten als dem zweiten sicherheitskritischen Prozess zugeordnet sind, werden nach Ausführung des zweiten sicherheitskritischen Prozess bevorzugt zunächst diese weiteren sicherheitskritischen Prozess ausgeführt und der erste sicherheitskritische Prozess bleibt weiterhin unterbrochen bzw. pausiert.
  • Vorteilhafterweise besitzt die Sicherheits-Prozessoreinheit eine Echtzeitfähigkeit. In Echtzeit auszuführende sicherheitskritische Prozesse werden in der Sicherheits-Prozessoreinheit derart ausgeführt, dass eine Echtzeitbedingung erfüllt ist. Diese Echtzeitbedingung ist insbesondere in der Norm DIN 44300 definiert. Diese sicherheitskritischen Prozesse werden von der Sicherheits-Prozessoreinheit garantiert innerhalb eines vorgegebenen, definierten Zeitintervalls vollständig ausgeführt. Ein Ergebnis dieser sicherheitskritischen Prozesse wird innerhalb dieses definierten Zeitintervalls garantiert berechnet und liegt demgemäß vor einer bestimmten Zeitschranke vor. Weiterhin ist ein Determinismus bzw. eine Vorhersagbarkeit dieser sicherheitskritischen Prozesse gegeben.
  • In der Sicherheits-Prozessoreinheit können neben derartigen in Echtzeit auszuführenden sicherheitskritischen Prozessen auch sicherheitskritische Prozesse ausführen, die keine Echtzeitbedingung erfüllen sollen. In Echtzeit auszuführenden sicherheitskritischen Prozessen wird vorzugsweise eine höhere Priorität zugeordnet, als nicht in Echtzeit auszuführenden sicherheitskritischen Prozessen.
  • Insbesondere kann die Echtzeitfähigkeit der Sicherheits-Prozessoreinheit durch die Möglichkeit gewährleistet werden, die Ausführung eines sicherheitskritischen Prozesses mit niedriger Priorität zu Gunsten eines sicherheitskritischen Prozesses mit hoher Priorität zu unterbrechen und später wieder weiterzuführen. Ein aktuell ausgeführter untergeordneter sicherheitskritischer Prozess kann somit zu Gunsten eines sicherheitskritischen Prozesses unterbrochen werden, der eine Echtzeitbedingung erfüllen muss. Insbesondere wird einem in Echtzeit auszuführendem sicherheitskritischen Prozessen die Priorität gemäß dem jeweiligen Zeitintervall zugeordnet, innerhalb welchem dieser sicherheitskritische Prozess ausgeführt sein muss.
  • Vorzugsweise wird in der Sicherheits-Prozessoreinheit ein echtzeitfähiges Betriebssystem ausgeführt. Von einem derartigen echtzeitfähigen Betriebssystem können Rechenoperation (z.B. Prozesse, Tasks, Anwendungen, usw.) derart ausgeführt werden, dass eine entsprechende Echtzeitbedingung erfüllt ist. Insbesondere erfüllt das echtzeitfähige Betriebssystem die nach der Norm DIN 44300 definierte Echtzeitbedingung. Demgemäß sind insbesondere Programme zur Verarbeitung anfallender Daten bzw. auszuführender sicherheitskritischer Prozesse ständig betriebsbereit, derart, dass die Ergebnisse dieser Verarbeitungen innerhalb einer vorgegebenen Zeitspanne verfügbar sind. Die Daten können je nach Anwendungsfall nach einer zeitlich zufälligen Verteilung oder zu vorherbestimmten Zeitpunkten anfallen.
  • Eine erfindungsgemäße Recheneinheit, z.B. ein System-on-a-Chip oder ein Steuergerät eines Kraftfahrzeugs, ist, insbesondere programmtechnisch, dazu eingerichtet, ein erfindungsgemäßes Verfahren durchzuführen.
  • Auch die Implementierung des Verfahrens in Form von Software ist vorteilhaft, da dies besonders geringe Kosten verursacht, insbesondere wenn ein ausführendes Steuergerät noch für weitere Aufgaben genutzt wird und daher ohnehin vorhanden ist. Geeignete Datenträger zur Bereitstellung des Computerprogramms sind insbesondere Disketten, Festplatten, Flash-Speicher, EEPROMs, CD-ROMs, DVDs u.a.m. Auch ein Download eines Programms über Computernetze (Internet, Intranet usw.) ist möglich.
  • Weitere Vorteile und Ausgestaltungen der Erfindung ergeben sich aus der Beschreibung und der beiliegenden Zeichnung.
  • Es versteht sich, dass die vorstehend genannten und die nachfolgend noch zu erläuternden Merkmale nicht nur in der jeweils angegebenen Kombination, sondern auch in anderen Kombinationen oder in Alleinstellung verwendbar sind, ohne den Rahmen der vorliegenden Erfindung zu verlassen.
  • Die Erfindung ist anhand von Ausführungsbeispielen in der Zeichnung schematisch dargestellt und wird im Folgenden unter Bezugnahme auf die Zeichnung ausführlich beschrieben.
  • Kurze Beschreibung der Zeichnungen
  • 1 zeigt schematisch eine bevorzugte Ausgestaltung eines erfindungsgemäßen Steuergeräts.
  • 2 zeigt schematisch eine bevorzugte Ausführungsform eines erfindungsgemäßen Verfahrens als ein Zeit-Priorität-Diagramm.
  • 3 zeigt schematisch eine bevorzugte Ausführungsform eines erfindungsgemäßen Verfahrens als ein Zeit-Priorität-Diagramm.
  • Ausführungsform(en) der Erfindung
  • In 1 ist eine bevorzugte Ausgestaltung eines erfindungsgemäßen Steuergeräts schematisch dargestellt und mit 150 bezeichnet. Das Steuergerät 150 ist beispielsweise als ein Motorsteuergerät eines Kraftfahrzeugs ausgebildet, welches dazu eingerichtet ist, eine Motorsteuerung einer Brennkraftmaschine des Kraftfahrzeugs durchzuführen.
  • Das Steuergerät 150 weist ein System-on-a-Chip (SoC) 100 auf. Das SoC 100 umfasst eine Prozessoreinheit 110 und eine Sicherheits-Prozessoreinheit 120.
  • Die Prozessoreinheit 110 umfasst einen Multicore-Prozessor mit drei Prozessorkernen 111, 112 und 113. Jedem Prozessorkern 111, 112 bzw. 113 ist jeweils ein lokaler Speicher 114, 115 bzw. 116 zugeordnet, beispielsweise ein Flash-Speicher. Die Sicherheits-Prozessoreinheit 120 umfasst einen Prozessorkern 121 und einen lokalen Speicher mit einem RAM-Speicher 122 und einem ROM-Speicher 123.
  • Alternativ kann auch ein gemeinsamer lokaler Speicher (z.B. RAM, EEPROM, Flash) der Sicherheits-Prozessoreinheit 120 und der Prozessoreinheit 110 vorgesehen sein sowie eine Speicher-Sicherheitsmechanismus (z.B. eine Memory Protection Unit), welche den Zugriff auf diesen gemeinsamen Speicher verwaltet.
  • Die Prozessoreinheit 110 und die Sicherheits-Prozessoreinheit 120 sind zwei unabhängige individuelle Prozessoreinheiten. Die Sicherheits-Prozessoreinheit 120 ist auf Hardwareebene abgeschirmt und ist gegen Manipulation und Angriffe geschützt. In der Sicherheits-Prozessoreinheit 120 wird ein echtzeitfähiges Betriebssystem ausgeführt. Die Prozessoreinheit 110 und die Sicherheits-Prozessoreinheit 120 stehen über einen Bus 117 miteinander in Kommunikationsverbindung.
  • In den Prozessorkernen 111, 112, 113 der Prozessoreinheit 110 können unterschiedliche Anwendungen ausgeführt werden. Im Zuge dieser Anwendungen müssen gegebenenfalls sicherheitskritische Daten erstellt und/oder verarbeitet werden, welche für die Ansteuerung und den Betrieb des Kraftfahrzeugs benötigt werden, beispielsweise spezielle Ansteuerungsbefehle, technische Daten, Steuer- oder Kennwerte.
  • Diese sicherheitskritischen Daten dürfen das Steuergerät 150 nicht verlassen und sollen nicht an eine dritte Partei gelangen. Weiterhin muss sichergestellt sein, dass spezielle dieser sicherheitskritischen Daten in Echtzeit erstellt werden. Zu diesem Zweck ist das Steuergerät 150 dazu eingerichtet, eine bevorzugte Ausführungsform eines erfindungsgemäßen Verfahrens durchzuführen.
  • Im Zuge dessen weisen die jeweiligen Anwendungen, die in den Prozessorkernen 111, 112, 113 der Prozessoreinheit 110 ausgeführt werden und die sicherheitskritische Daten erstellen bzw. verarbeiten sollen, die Sicherheits-Prozessoreinheit 120 an, bestimmte sicherheitskritische Prozesse auszuführen. Die Anwendungen ordnen den sicherheitskritischen Prozessen dabei jeweils eine Priorität zu. Die Sicherheits-Prozessoreinheit 120 führt die unterschiedlichen sicherheitskritischen Prozesse in Abhängigkeit von der jeweiligen Priorität aus. Im Zuge dieser sicherheitskritischen Prozesse werden in der Sicherheits-Prozessoreinheit 120 die jeweiligen sicherheitskritischen Daten erstellt bzw. verarbeitet.
  • Eine bevorzugte Ausführungsform des erfindungsgemäßen Verfahrens wird im Folgenden anhand der 2 und 3 beschrieben. In den 2 und 3 ist jeweils ein Zeit-Priorität-Diagramm schematisch dargestellt. Auf der Ordinate ist jeweils eine Priorität "P" aufgetragen, welche unterschiedlichen sicherheitskritischen Prozessen zugeordnet werden kann. Auf der Abszisse ist jeweils eine Zeit "t" aufgetragen. Sicherheitskritische Prozesse mit zugeordneten Prioritäten, die in der Sicherheits-Prozessoreinheit 120 zwischen bestimmten Zeitpunkten ausgeführt werden, sind in dem Zeit-Priorität-Diagramm als Balken dargestellt.
  • Im Folgenden wird ein erstes Beispiel der bevorzugten Ausführungsform des erfindungsgemäßen Verfahrens anhand der 2 beschrieben.
  • Zu einem ersten Zeitpunkt t1 weist eine erste Anwendung, die in dem Prozessorkern 111 ausgeführt wird, die Sicherheits-Prozessoreinheit 120 an, einen ersten sicherheitskritischen Prozess 210 auszuführen. Im Zuge dieses ersten sicherheitskritischen Prozesses 210 soll eine Verifikation einer Nachricht bzw. eine Überprüfung eines Authentifizierungscodes einer Nachricht durchgeführt werden, die von einem weiteren Steuergerät des Kraftfahrzeugs an das Motorsteuergerät 150 gesendet wurde. Dieser erste Prozess 210 soll nicht in Echtzeit durchgeführt werden. Die erste Anwendung ordnet diesem ersten Prozess 210 eine erste, mittlere Priorität von beispielsweise "5" zu.
  • Die Sicherheits-Prozessoreinheit 120 beginnt zu dem ersten Zeitpunkt t1 diesen ersten Prozess 210 auszuführen. Zu einem zweiten Zeitpunkt t2, zu welchem die Ausführung des ersten Prozesses 210 noch nicht beendet ist, weist eine zweite Anwendung, die in dem Prozessorkern 112 ausgeführt wird, die Sicherheits-Prozessoreinheit 120 an, einen zweiten sicherheitskritischen Prozess 220 auszuführen.
  • Im Zuge dieses zweiten sicherheitskritischen Prozesses 220 sollen eine Kraftstoffeinspritzmenge und eine Zusammensetzung eines Kraftstoff-Luft-Gemischs für die Brennkraftmaschine bestimmt werden. Dieser zweite Prozess 220 ist ein relevanter Prozess, der für den fehlerfreien Betrieb des Kraftfahrzeugs von großer Bedeutung ist. Dieser zweite Prozess 220 soll in Echtzeit ausgeführt werden. Die zweite Anwendung ordnet diesem zweiten Prozess 220 eine zweite, vergleichsweise hohe Priorität zu, beispielsweise "10".
  • Da diese zweite Priorität höher ist als die erste Priorität, unterbricht die Sicherheits-Prozessoreinheit 120 zum Zeitpunkt t2 die Ausführung des ersten Prozesses 210 und führt stattdessen den zweiten Prozess 220 aus. Der Fortschritt des ersten Prozesses 210 wird von der Sicherheits-Prozessoreinheit 120 gespeichert.
  • Zu einem dritten Zeitpunkt t3 ist die Ausführung des zweiten Prozesses 220 beendet. Zum dritten Zeitpunkt t3 setzt die Sicherheits-Prozessoreinheit 120 die Ausführung des ersten Prozess 210 beim Fortschritt des Zeitpunkts t2 fort. Zu einem vierten Zeitpunkt t4 ist die Ausführung des ersten Prozesses 210 beendet.
  • Im Folgenden wird ein zweites Beispiel der bevorzugten Ausführungsform des erfindungsgemäßen Verfahrens anhand der 3 beschrieben.
  • Zu einem fünften Zeitpunkt t5 weist eine dritte Anwendung, die in dem Prozessorkern 111 ausgeführt wird, die Sicherheits-Prozessoreinheit 120 an, einen dritten sicherheitskritischen Prozess 230 durchzuführen. Im Zuge dieses dritten sicherheitskritischen Prozesses 230 soll eine Überprüfung auf ein Chiptuning durchgeführt werden, also eine Überprüfung ob Steuerparameter des Steuergeräts 150 verändert wurden, um Leistungssteigerungen herbeizuführen. Diese Überprüfung soll nicht in Echtzeit durchgeführt werden. Die dritte Anwendung ordnet diesem dritten Prozess 230 eine dritte, vergleichsweise niedrige Priorität zu, beispielsweise eine Priorität von "1".
  • Die Sicherheits-Prozessoreinheit 120 beginnt zu dem fünften Zeitpunkt t5 den dritten Prozess 230 auszuführen. Zu einem sechsten Zeitpunkt t6, zu welchem die Ausführung des dritten Prozesses 230 noch nicht beendet ist, weist die zweite Anwendung, die Sicherheits-Prozessoreinheit 120 erneut an, den zweiten sicherheitskritischen Prozess 220 auszuführen, um erneut die Kraftstoffeinspritzmenge und die Zusammensetzung des Kraftstoff-Luft-Gemischs für die Brennkraftmaschine zu bestimmen. Die zweite Anwendung ordnet dem zweiten Prozess 220 erneut die zweite, hohe Priorität von beispielsweise "10" zu.
  • Da die zweite Priorität höher ist als die dritte Priorität, unterbricht die Sicherheits-Prozessoreinheit 120 zum sechsten Zeitpunkt t6 die Ausführung des dritten Prozesses 230 und führt stattdessen den zweiten Prozess 220 aus. Der Fortschritt des dritten Prozesses 230 wird von der Sicherheits-Prozessoreinheit 120 gespeichert.
  • Zu einem siebten Zeitpunkt t7 weist die erste Anwendung die Sicherheits-Prozessoreinheit 120 an, einen vierten sicherheitskritischen Prozess 240 auszuführen. Im Zuge dieses vierten sicherheitskritischen Prozesses 240 sollen Daten verschlüsselt und mit einem Authentifizierungscode versehen werden, die an ein weiteres Steuergerät des Kraftfahrzeugs übermittelt werden sollen. Dieser vierte Prozess 240 soll nicht in Echtzeit durchgeführt werden. Die erste Anwendung ordnet diesem vierten Prozess 240 eine vierte Priorität von beispielsweise "5" zu.
  • Da diese vierte Priorität geringer ist als die zweite Priorität, unterbricht die Sicherheits-Prozessoreinheit 120 zum Zeitpunkt t7 nicht die Ausführung des zweiten Prozesses 220.
  • Zu einem achten Zeitpunkt t8 ist die Ausführung des zweiten Prozesses 220 beendet. Da die vierte Priorität höher ist als die dritte Priorität des dritten Prozesses 230, setzt die Sicherheits-Prozessoreinheit 120 zum Zeitpunkt t8 nicht die Ausführung des dritten Prozesses 230 fort, sondern beginnt stattdessen mit der Ausführung des vierten Prozesses 240.
  • Zu einem neunten Zeitpunkt t9 ist die Ausführung des vierten Prozesses 240 beendet. Zum neunten Zeitpunkt t9 setzt die der Sicherheits-Prozessoreinheit 120 die Ausführung des dritten Prozesses 230 beim Fortschritt des Zeitpunkts t6 fort. Zu einem zehnten Zeitpunkt t10 ist die Ausführung des dritten Prozesses 230 beendet.
  • 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 Nicht-Patentliteratur
    • Norm DIN 44300 [0030]
    • Norm DIN 44300 [0033]

Claims (10)

  1. Verfahren zum Betreiben eines Steuergeräts (150) mit einem System-on-a-Chip (100) mit einer Prozessoreinheit (110) und einer Sicherheits-Prozessoreinheit (120), – wobei die Prozessoreinheit (110) und die Sicherheits-Prozessoreinheit (120) jeweils wenigstens einen Prozessorkern (111, 112, 113; 121) umfassen, – wobei die Prozessoreinheit (110) die Sicherheits-Prozessoreinheit (120) anweist, sicherheitskritische Prozesse (210, 220, 230, 240) auszuführen, – wobei den in der Sicherheits-Prozessoreinheit (120) auszuführenden, sicherheitskritische Prozessen (210, 220, 230, 240) von der Prozessoreinheit (110) oder der Sicherheits-Prozessoreinheit (120) jeweils eine Priorität zugeordnet wird und – wobei die sicherheitskritischen Prozesse (210, 220, 230, 240) in der Sicherheits-Prozessoreinheit (120) in Abhängigkeit von der jeweiligen Priorität ausgeführt werden.
  2. Verfahren nach Anspruch 1, wobei, – wenn in der Sicherheits-Prozessoreinheit (120) ein erster sicherheitskritischer Prozess (210) mit einer ersten Priorität ausgeführt wird und wenn die Prozessoreinheit (110) die Sicherheits-Prozessoreinheit (120) anweist, einen zweiten sicherheitskritischen Prozess (220) mit einer zweiten Priorität, die höher ist als die erste Priorität, auszuführen, – die Ausführung des ersten sicherheitskritischen Prozesses (210) in der Sicherheits-Prozessoreinheit unterbrochen wird, – der zweite sicherheitskritische Prozess (120) in der Sicherheits-Prozessoreinheit (120) ausgeführt wird und – nach Ausführung des zweiten sicherheitskritischen Prozess (220) die Ausführung des ersten sicherheitskritischen Prozesses (210) in der Sicherheits-Prozessoreinheit (120) fortgesetzt wird.
  3. Verfahren nach Anspruch 2, wobei, wenn die Ausführung des ersten sicherheitskritischen Prozesses (210) in der Sicherheits-Prozessoreinheit (120) unterbrochen wird, der aktuelle Fortschritt der Ausführung hinterlegt wird, und wobei nach Ausführung des zweiten sicherheitskritischen Prozess (220) die Ausführung des ersten sicherheitskritischen Prozesses (210) in der Sicherheits-Prozessoreinheit (120) bei diesem hinterlegten aktuellen Fortschritt fortgesetzt wird.
  4. Verfahren nach Anspruch 3, wobei die Ausführung des ersten sicherheitskritischen Prozesses (210) in der Sicherheits-Prozessoreinheit (120) bei diesem hinterlegten aktuellen Fortschritt autonom ohne Eingreifen der Prozessoreinheit fortgesetzt wird.
  5. Verfahren nach einem der vorstehenden Ansprüche, wobei in der Sicherheits-Prozessoreinheit (120) in Echtzeit auszuführende sicherheitskritische Prozesse (210, 220, 240) derart ausgeführt werden, dass eine Echtzeitbedingung erfüllt ist.
  6. Verfahren nach Anspruch 5, wobei in Echtzeit auszuführenden sicherheitskritischen Prozessen (210, 220, 240) eine höhere Priorität zugeordnet wird als nicht in Echtzeit auszuführenden sicherheitskritischen Prozessen (230).
  7. Verfahren nach einem der vorstehenden Ansprüche, wobei in der Sicherheits-Prozessoreinheit (120) ein echtzeitfähiges Betriebssystem ausgeführt wird.
  8. Recheneinheit (150), die dazu eingerichtet ist, ein Verfahren nach einem der vorstehenden Ansprüche durchzuführen.
  9. Computerprogramm, das eine Recheneinheit (150) dazu veranlasst, ein Verfahren nach einem der Ansprüche 1 bis 7 durchzuführen, wenn es auf der Recheneinheit (150) ausgeführt wird.
  10. Maschinenlesbares Speichermedium mit einem darauf gespeicherten Computerprogramm nach Anspruch 9.
DE102014222181.1A 2014-10-30 2014-10-30 Verfahren zum Betreiben eines Steuergeräts Pending DE102014222181A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102014222181.1A DE102014222181A1 (de) 2014-10-30 2014-10-30 Verfahren zum Betreiben eines Steuergeräts

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
DE102014222181.1A DE102014222181A1 (de) 2014-10-30 2014-10-30 Verfahren zum Betreiben eines Steuergeräts
US14/884,280 US20160125202A1 (en) 2014-10-30 2015-10-15 Method for operating a control device
JP2015212662A JP2016091554A (ja) 2014-10-30 2015-10-29 制御装置を駆動する方法
CN201510716005.9A CN105573159A (zh) 2014-10-30 2015-10-29 用于运行控制设备的方法

Publications (1)

Publication Number Publication Date
DE102014222181A1 true DE102014222181A1 (de) 2016-05-04

Family

ID=55753689

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102014222181.1A Pending DE102014222181A1 (de) 2014-10-30 2014-10-30 Verfahren zum Betreiben eines Steuergeräts

Country Status (4)

Country Link
US (1) US20160125202A1 (de)
JP (1) JP2016091554A (de)
CN (1) CN105573159A (de)
DE (1) DE102014222181A1 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9443095B2 (en) * 2012-05-16 2016-09-13 Nokia Corporation Method in a processor, an apparatus and a computer program product

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6101255A (en) * 1997-04-30 2000-08-08 Motorola, Inc. Programmable cryptographic processing system and method
US9753772B2 (en) * 1999-06-21 2017-09-05 Jia Xu Method of computing latest start times to allow real-time process overruns
JP3582422B2 (ja) * 1999-10-19 2004-10-27 株式会社デンソー セキュリティモジュール
US20040172631A1 (en) * 2001-06-20 2004-09-02 Howard James E Concurrent-multitasking processor
US20020078341A1 (en) * 2000-12-14 2002-06-20 Genty Denise M. System and method for applying quality of service policies to internet protocol security to avoid bandwidth limitations on a computer network
US7860120B1 (en) * 2001-07-27 2010-12-28 Hewlett-Packard Company Network interface supporting of virtual paths for quality of service with dynamic buffer allocation
DE10320522A1 (de) * 2003-05-02 2004-11-25 Pilz Gmbh & Co. Verfahren und Vorrichtug zum Steuern eines sicherheitskritischen Prozesses
EP2738898B1 (de) * 2006-02-06 2015-03-11 S & C Electric Company Koordiniertes Fehlerschutzsystem
CN100531422C (zh) * 2006-04-28 2009-08-19 佛山市顺德区顺达电脑厂有限公司;神达电脑股份有限公司 导航与来电共存的方法
US9455955B2 (en) * 2006-05-17 2016-09-27 Richard Fetik Customizable storage controller with integrated F+ storage firewall protection
JP2009044677A (ja) * 2007-08-10 2009-02-26 Panasonic Corp 機密情報処理装置、機密情報処理機器、及び機密情報処理方法
CN101409659A (zh) * 2007-10-08 2009-04-15 华为技术有限公司 一种网络录制的控制方法、系统及实体
US9613215B2 (en) * 2008-04-10 2017-04-04 Nvidia Corporation Method and system for implementing a secure chain of trust
US8689118B2 (en) * 2009-05-18 2014-04-01 Fisher-Rosemount Systems, Inc. Methods and apparatus to conceal portions of a visual object diagram in a process control system
DE112010004017T5 (de) * 2009-10-13 2013-02-07 Turck Holding Gmbh Einzelstapel-ReaI-Time-Betriebssystem für eingebettete Systeme
CN102065579B (zh) * 2009-11-17 2015-06-17 美国博通公司 一种通信方法和通信系统
US8516355B2 (en) * 2011-02-16 2013-08-20 Invensys Systems, Inc. System and method for fault tolerant computing using generic hardware
US9443095B2 (en) * 2012-05-16 2016-09-13 Nokia Corporation Method in a processor, an apparatus and a computer program product
US9618988B2 (en) * 2012-07-03 2017-04-11 Nxp Usa, Inc. Method and apparatus for managing a thermal budget of at least a part of a processing system
US9043522B2 (en) * 2012-10-17 2015-05-26 Arm Limited Handling interrupts in a multi-processor system
US9632977B2 (en) * 2013-03-13 2017-04-25 Nxp Usa, Inc. System and method for ordering packet transfers in a data processor
US9424443B2 (en) * 2013-08-20 2016-08-23 Janus Technologies, Inc. Method and apparatus for securing computer mass storage data

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Norm DIN 44300

Also Published As

Publication number Publication date
CN105573159A (zh) 2016-05-11
JP2016091554A (ja) 2016-05-23
US20160125202A1 (en) 2016-05-05

Similar Documents

Publication Publication Date Title
US7500098B2 (en) Secure mode controlled memory
Brasser et al. TyTAN: tiny trust anchor for tiny devices
TWI438686B (zh) 用於使用狀態確認來保護作業系統啟動過程的系統及方法
US8966286B2 (en) Method, system and integrated circuit for enabling access to a memory element
TWI313123B (en) Integrated circuit security and method therefor
US8356188B2 (en) Secure system-on-chip
US7849315B2 (en) Method for managing operability of on-chip debug capability
US20080082828A1 (en) Circuit arrangement and method for starting up a circuit arrangement
US9948470B2 (en) Applying circuit delay-based physically unclonable functions (PUFs) for masking operation of memory-based PUFs to resist invasive and clone attacks
US9754115B2 (en) System and method for securely binding and node-locking program execution to a trusted signature authority
TWI334130B (en) Embedded system insuring security and integrity, and method of increasing security thereof
US8775784B2 (en) Secure boot up of a computer based on a hardware based root of trust
TW200830184A (en) Compiling executable code into a less-trusted address space
JP4469892B2 (ja) 車両内の制御機器の認証
US20160306966A1 (en) Paravirtualized Security Threat Protection of a Computer-Driven System with Networked Devices
US20080163212A1 (en) Paralleled management mode integrity checks
US20160255154A1 (en) Vehicle security network device and design method therefor
US7827326B2 (en) Method and apparatus for delegation of secure operating mode access privilege from processor to peripheral
KR20120066018A (ko) 디바이스 검사
CN102479304B (zh) 软件权限控制方法、客户端及系统
DE60100363T2 (de) Sequenznummerierungsmechanismus zur sicherung der ausführungsordnungs-integrietät von untereinander abhängigen smart-card anwendungen
KR101504857B1 (ko) 보안 시스템에서 랜덤하게 할당된 메모리 범위로 jit를 지원하는 시스템 및 방법
US20120260106A1 (en) System and method for binary layout randomization
AU2012205457B2 (en) System and method for tamper-resistant booting
ES2626982T3 (es) Sistema en chip seguro