DE102017006354A1 - Vorrichtung und Verfahren zur gerätetechnischen Erkennung von absichtlichen oder durch Störungen und / oder Fehler verursachten Datenverfälschungen in Datenverarbeitungseinheiten - Google Patents

Vorrichtung und Verfahren zur gerätetechnischen Erkennung von absichtlichen oder durch Störungen und / oder Fehler verursachten Datenverfälschungen in Datenverarbeitungseinheiten Download PDF

Info

Publication number
DE102017006354A1
DE102017006354A1 DE102017006354.0A DE102017006354A DE102017006354A1 DE 102017006354 A1 DE102017006354 A1 DE 102017006354A1 DE 102017006354 A DE102017006354 A DE 102017006354A DE 102017006354 A1 DE102017006354 A1 DE 102017006354A1
Authority
DE
Germany
Prior art keywords
data
data processing
processor
signature
stored
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
DE102017006354.0A
Other languages
English (en)
Inventor
Stefan Andreas Widmann
Wolfgang A. Halang
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to DE102017006354.0A priority Critical patent/DE102017006354A1/de
Publication of DE102017006354A1 publication Critical patent/DE102017006354A1/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
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum

Landscapes

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

Abstract

Die Erfindung betrifft eine Datenverarbeitungseinheit, die Daten erzeugt, verarbeitet oder nutzt, bestehend aus mindestens einem Prozessor mit mindestens einem Speicher, in dem Daten in Form von Datenelementen (1) abgelegt sind. Die Erfindung zeichnet sich dadurch aus, dass zur Erkennung von absichtlichen oder durch Störungen und / oder Fehler verursachten Verfälschung der in den Datenelementen (1) gespeicherten Daten neben den Datenwerten (2) innerhalb der Datenelemente (1) eine Signaturkennung (3) vorhanden ist, die eine kryptographische Signatur der Inhalte des Datenelements (1) enthält.

Description

  • Die Erfindung betrifft eine Vorrichtung und ein Verfahren zur gerätetechnischen Erkennung von absichtlichen oder durch Störungen und / oder Fehler verursachten Datenverfälschungen in Datenverarbeitungseinheiten.
  • Es ist bekannt, dass bereits in den 1960er Jahren in Datenverarbeitungsanlagen wie z. B. dem Großrechner TR4 [1] den Datenwerten weitere Kennungen hinzugefügt wurden, die
    • • den Datentyp und damit das Darstellungsformat des Datenwerts spezifizierten und teilweise
    • • weitere Bits, die eine Integritätsprüfung des gesamten Datenelements erlaubten.
  • Basierend auf der expliziten, hardwareverständlichen und -prüfbaren Spezifikation des Datentyps innerhalb des Datenworts selbst werden entsprechende Architekturen als Datentyparchitekturen bezeichnet.
  • Weiterhin ist bekannt, dass in Befähigungsarchitekturen dem Datenelement eine weitere Kennung hinzugefügt wird, die die Zugriffsrechte auf das betreffende Datenelement spezifiziert. Gute Beispiele moderner Befähigungsarchitekturen sind z.B. lowRISC [2] und SAFE [3].
  • Weiterhin ist bekannt, zwischen Datenverarbeitungseinheiten zu übertragende Datenpakete durch kryptographische Verfahren vor unentdeckter absichtlicher oder unabsichtlicher Veränderung zu schützen, so z. B. durch den Einsatz von TLS [7].
  • Ebenso ist bekannt, ausführbare Programme durch die Anwendung kryptographischer Verfahren vor Veränderung zu schützen [6].
  • Datenverarbeitungssysteme tragen in immer mehr Anwendungen die Verantwortung für Mensch, Umwelt und Investitionsgüter und ersetzen in manchen Applikationen betriebsbewährte mechanische Systeme, so z. B. bei den „x-by-wire“ Systemen in der Avionik und der Kraftfahrzeugtechnik oder autonomen Steuerungsfunktionen in Fahrzeugen. Entsprechend gravierende Auswirkungen können nicht oder nicht rechtzeitig erkannte Fehler haben.
  • Die hohe Komplexität der Systeme und der darin eingesetzten Soft- und Hardware führt zu erhöhten Fehlerwahrscheinlichkeiten. Zudem werden die eingesetzten integrierten Schaltkreise auf Grund der immer weiter reduzierten Strukturbreiten zunehmend empfindlicher gegenüber Umwelteinflüssen, speziell den Einwirkungen von Strahlung.
  • Verschiedenste Fehler- und Störungsarten können dazu führen, dass zu verarbeitende Daten in Datenverarbeitungssystemen verfälscht werden. In zunehmendem Maße werden die genannten Systeme auch das Ziel von Hackerangriffen, wie der Stuxnet-Wurm [4] eindrücklich gezeigt hat. Die Verarbeitung solch absichtlich oder durch Fehler bzw. Störungen veränderten Daten führt damit zu fehlerhaften Ergebnissen, die zu gefährlichen Ausfällen eines gesamten Datenverarbeitungssystems führen können. Dies ist besonders für die oben erwähnten sicherheitsgerichteten Anwendungen relevant, bei denen derartige Ausfälle zu Personen-, Umwelt- oder Sachschäden führen können.
  • Daten werden in konventionellen Datenverarbeitungssystemen nur durch ihren Datenwert repräsentiert. Die Hardware kann also keine Überprüfungen dieser Dateneigenschaften vornehmen, da sie ihr nicht bekannt sind. Im Speziellen werden Daten so behandelt, als wären sie dimensionslos, also frei von jeglichen physikalischen Einheiten. Dadurch können Fehler, bei denen z.B. Daten mit unterschiedlichen physikalischen Einheiten addiert, verglichen oder voneinander subtrahiert werden sollen, nicht erkannt werden und führen zu falschen Ergebnissen.
  • Die genannten Architekturarten Datentyp- und Befähigungsarchitekturen nutzten teilweise bestimmte Prüfsummenverfahren, um Datenverfälschungen aufdecken zu können. Allerdings beschränkte sich die Erkennung auf das Ziel, durch Störungen oder Fehler verursachte Datenverfälschungen aufdecken zu können. Die Erkennung absichtlicher Veränderungen war nicht vorgesehen, da z. B. keine kryptographischen Verfahren zum Einsatz kamen.
  • Die Verschlüsselung von Kommunikationsverbindungen verhindert zwar die absichtliche Veränderung der übertragenen Daten, allerdings erstreckt sich dieser Schutz ausschließlich auf die Kommunikationsstrecke. Auf Senderseite liegen die Daten ungeschützt in Speichern oder Registern vor und werden nur beim Versand mit entsprechenden kryptographischen Verfahren geschützt. Auf der Empfängerseite liegen die Daten nach dem Empfang und nachfolgender Verifikation ebenfalls in ungeschützter Form in Speichern oder Registern vor.
  • In besonders sensitiven Anwendungen ist damit zu rechnen, das Angriffe auch innerhalb der Datenverarbeitungseinheiten selbst ausgeführt werden. Dies ist z. B. bei Chipkarten der Fall. Entsprechende Angriffsarten werden in [5] ausführlich vorgestellt.
  • Die Ziele solcher Angriffe sind nach [5]
    • • das Ausspähen von in den Karten gespeicherten, geheim gehaltenen Daten, wie z. B. kryptographische Schlüssel oder
    • • die Veränderung von auf der Karte gespeicherten Daten, um z. B. Guthaben zu erhöhen oder erweiterte Zugangsberechtigungen zu erhalten.
  • Dabei werden in [5] die folgenden Angriffskategorien identifiziert:
    • • manipulative Angriffe, bei denen Manipulationen am Chip selbst vorgenommen werden,
    • • observative Angriffe, bei denen der Chip selbst bzw. sein Verhalten untersucht werden und
    • • semi-invasive Angriffe, bei denen versucht wird, über verschiedenste Angriffsmethoden das Verhalten des Chips im Sinne des Angreifers zu beeinflussen.
  • Besonders zur Erkennung der letztgenannten Angriffsart, den semi-invasiven Angriffen, bei denen das Verhalten des Chips, Signale oder Daten innerhalb des Chips manipuliert werden sollen, ist es ungünstig, wenn Daten ungeschützt in Speichern und Registern abgelegt sind.
  • Die Aufgabe der Erfindung ist es, die absichtliche oder durch Störungen und Fehler verursachte Veränderung von Daten innerhalb von Datenverarbeitungseinheiten durch die Hardware der Datenverarbeitungseinheit zu erkennen.
  • Die Aufgabe wird bezogen auf die Datenverarbeitungseinheit durch die Merkmale des Anspruchs 1 und bezogen auf das Verfahren durch die Merkmale der Ansprüche 3 und 5 gelöst. Die Unteransprüche stellen jeweils vorteilhafte Ausgestaltungen dar.
  • Bezogen auf die Datenverarbeitungseinheiten sieht die Lösung vor, den einzelnen Datenelementen zusätzlich zum Datenwert eine Signaturkennung hinzuzufügen, die eine kryptographische Signatur des gesamten Datenelements enthält. Dies ermöglicht es einer Datenverarbeitungseinheit, bei der Verarbeitung von Daten deren Integrität sicherzustellen. Als Datenverarbeitungseinheit sind im Sinne dieser Erfindung alle technischen Einrichtungen zu verstehen, die Daten erzeugen, verarbeiten oder nutzen, so z. B. Sensoren, Prozessrechner und Aktoren. In derartigen Geräten ist mindestens ein Prozessor vorhanden, der erzeugte Daten in mindestens einem Speicher ablegt, aus einem solchen ausliest, verarbeitet und die Ergebnisse ggf. wieder in einem derartigen Speicher ablegt. Ein entsprechender Prozessor kann z. B. auch in programmierbarer Hardware wie FPGAs realisiert werden. Datenelemente im Sinne dieser Erfindung sind Datenworte in einem Speicher oder Register, die neben dem Datenwert weitere Informationen über den Datenwert selbst enthalten.
  • Bezogen auf das Verfahren sieht die Lösung vor, dass der Prozessor der Datenverarbeitungseinheit beim Lesen eines Datenelements die Integrität des Datenelements anhand der Inhalte der Signaturkennung, den weiteren Inhalten des Datenelements und dem zu der betreffenden Datenverarbeitungseinheit gehörenden öffentlichen Schlüssel verifiziert und somit sicherstellt, dass keine durch absichtliche Manipulation eines Angreifers oder durch Störungen bzw. Fehler veränderten Daten unbemerkt genutzt werden. Stellt der Prozessor bei der Prüfung Verfälschungen der Inhalte des Datenelements fest, so kann eine entsprechende Fehlerbehandlung eingeleitet werden. Denkbare Reaktionen sind z. B. die Auslösung eines Ausnahmefehlers und bzw. oder die Überführung des Systems in einen sicheren Zustand und bzw. oder ein Neustart des Systems. Mit Vorteil wird vorgeschlagen, dass die beschriebene Prüfung zeitgleich zur Ausführung der Verarbeitung der Datenwerte erfolgt.
  • Bezogen auf das Verfahren sieht die Lösung weiterhin vor, dass der Prozessor der Datenverarbeitungseinheit die Ergebnisse von Datenverarbeitungsoperationen mit einer kryptographischen Signatur versieht. Dazu wendet der Prozessor z. B. eine kryptographische Hashfunktion auf die Inhalte des zu signierenden Datenelements unter Nutzung des geheimen Schlüssels der jeweiligen Datenverarbeitungseinheit an und speichert die berechnete Signatur in der Signaturkennung des Datenelements. Mit Vorteil wird vorgeschlagen, dass das Berechnen und Setzen der Inhalte der Signaturkennung zeitgleich zur Ausführung der Verarbeitung der Datenwerte erfolgt.
  • Die Erfindung wird nachfolgend anhand einer Zeichnung näher beschrieben. 1 der Zeichnung zeigt, wie dem Datenwert (2) innerhalb eines Datenelements (1) eine Signaturkennung (3) hinzugefügt ist.
  • Die Erfindung hat gegenüber dem Stand von Wissenschaft und Technik die folgenden Vorteile:
    • • Die Merkmale dieser Erfindung erschweren die Manipulation von Daten innerhalb von Datenverarbeitungseinheiten massiv. Ein Angreifer müsste zunächst den geheimen Schlüssel, der zur Signierung der Daten eingesetzt wird, aus dem Gerät extrahieren, um von ihm manipulierte Daten wieder mit einer gültigen Signatur versehen zu können.
    • • Da die Signaturkennung vorteilshafterweise untrennbar mit den Datenwerten verbunden ist, bleiben die Daten auch außerhalb von gesicherten Kommunikationsverbindungen im Rahmen der Erkennungsmöglichkeiten vor Manipulationen in Speichern und Registern von Datenverarbeitungseinheiten geschützt.
    • • Da es sich um eine gerätetechnische Lösung handelt, wird die Lösung nur einmal spezifiziert, entworfen, implementiert und getestet. Bei softwarebasierten Lösungen muss dieses Prozedere i.d.R. bei jedem Projekt erneut durchlaufen werden.

Claims (5)

  1. Datenverarbeitungseinheit, die Daten erzeugt, verarbeitet oder nutzt, bestehend aus mindestens einem Prozessor mit mindestens einem Speicher, in dem Daten in Form von Datenelementen (1) abgelegt sind, dadurch gekennzeichnet, dass zur Erkennung von absichtlichen oder durch Störungen und / oder Fehler verursachten Verfälschungen der in den Datenelementen (1) gespeicherten Daten neben den Datenwerten (2) innerhalb der Datenelemente (1) eine Signaturkennung (3) vorhanden ist, die eine kryptographische Signatur der Inhalte des Datenelements (1) enthält.
  2. Datenverarbeitungseinheit nach Anspruch 1, dadurch gekennzeichnet, dass die Signaturkennung (3) untrennbar mit dem Datenwert (2) im Datenelement (1) verknüpft ist und mit diesem gespeichert, verarbeitet und übertragen wird.
  3. Verfahren zur Erkennung absichtlicher oder durch Störungen und / oder Fehler verursachten Verfälschungen der Daten innerhalb von Datenelementen (1) in Datenverarbeitungseinheiten, bestehend aus mindestens einem Prozessor mit mindestens einem Speicher, in dem Daten in Form von Datenelementen (1) abgelegt sind, dadurch gekennzeichnet, dass der Prozessor zusätzlich zur Ausführung einer datenverarbeitenden Operation die Integrität aller zu verarbeitenden Datenelemente anhand der kryptographischen Signatur in den Signaturkennungen (3) der zu verarbeitenden Datenelementen (1) verifiziert.
  4. Verfahren nach Anspruch 3, dadurch gekennzeichnet, dass der Prozessor bei Feststellen der Veränderung der Inhalte eines Datenelements (1) in der Folge einen Ausnahmefehler meldet und / oder die Datenverarbeitungseinheit in einen sicheren Zustand überführt und / oder neu startet.
  5. Verfahren zum automatischen Setzen der Inhalte der Signaturkennung (3) des Ergebnisses einer Datenverarbeitungsoperation in Datenverarbeitungseinheiten, bestehend aus mindestens einem Prozessor mit mindestens einem Speicher, in dem Daten in Form von Datenelementen (1) abgelegt sind, dadurch gekennzeichnet, dass der Prozessor zusätzlich zur Ausführung der datenverarbeitenden Operation eine kryptographische Signatur der Inhalte des Datenelements des Ergebnisses berechnet und in der Signaturkennung (3) des Ergebnisses speichert.
DE102017006354.0A 2017-06-23 2017-06-23 Vorrichtung und Verfahren zur gerätetechnischen Erkennung von absichtlichen oder durch Störungen und / oder Fehler verursachten Datenverfälschungen in Datenverarbeitungseinheiten Pending DE102017006354A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102017006354.0A DE102017006354A1 (de) 2017-06-23 2017-06-23 Vorrichtung und Verfahren zur gerätetechnischen Erkennung von absichtlichen oder durch Störungen und / oder Fehler verursachten Datenverfälschungen in Datenverarbeitungseinheiten

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102017006354.0A DE102017006354A1 (de) 2017-06-23 2017-06-23 Vorrichtung und Verfahren zur gerätetechnischen Erkennung von absichtlichen oder durch Störungen und / oder Fehler verursachten Datenverfälschungen in Datenverarbeitungseinheiten

Publications (1)

Publication Number Publication Date
DE102017006354A1 true DE102017006354A1 (de) 2018-12-27

Family

ID=64567501

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102017006354.0A Pending DE102017006354A1 (de) 2017-06-23 2017-06-23 Vorrichtung und Verfahren zur gerätetechnischen Erkennung von absichtlichen oder durch Störungen und / oder Fehler verursachten Datenverfälschungen in Datenverarbeitungseinheiten

Country Status (1)

Country Link
DE (1) DE102017006354A1 (de)

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
DHAWAN, Udit ; HRITCU, Catalin ; RUBIN, Raphael ; VASILAKIS, Nikos ; CHIRICESCU, Silviu ; SMITH, Jonathan ; KNIGHT, Thomas ; PIERCE, Benjamin ; DEHON, Andre: Architectural Support for Software-Defined Metadata Processing. ACM SIGARCH Computer Architecture News – ASPLOS'15. Band 43 Ausgabe 1, March 2015. Seiten 487 – 502. URL: https://dl.acm.org/citation.cfm?id=2694383 [abgerufen am 28.03.2018] *
ELBAZ, Reouven ; TORRES, Lionel ; SASSATELLI, Gilles ; GUILLEMIN, Pierre ; BARDOUILLET, Michel ; MARTINEZ, Albert: A Parallelized Way to Provide Data Encryption and Integrity Checking on a Processor-Memory Bus. Proceedings of the 43rd annual Design Automation Conference, July 2006. Seiten 506 – 509. https://dl.acm.org/citation.cfm?id=1147042 [abgerufen am 10.04.2018] *

Similar Documents

Publication Publication Date Title
EP3451576B1 (de) System und verfahren zur kryptographisch geschützten überwachung wenigstens einer komponente eines geräts oder einer anlage
DE102015210651B4 (de) Schaltung und Verfahren zum Testen einer Fehlerkorrektur-Fähigkeit
DE102014208838A1 (de) Verfahren zum Betreiben eines Steuergeräts
DE102013213314A1 (de) Hinterlegen mindestens eines berechenbaren Integritätsmesswertes in einem Speicherbereich eines Speichers
EP2111586B1 (de) Ein-chip-computer und tachograph
DE102013218814A1 (de) Verfahren zum Betreiben eines sicherheitskritischen Systems
DE102005061367A1 (de) IC-Chipkarte und Verfahren zur Detektion von Datenmanipulation
DE102011011333B4 (de) Lesen in Peripheriegeräte und schreiben aus Peripheriegeräten mit zeitlich getrennter, redundanter Prozessorausführung
EP1664978B1 (de) Vorrichtung und verfahren zur sicheren ausführung eines programmes
DE102006035610A1 (de) Speicherzugriffssteuerung und Verfahren zur Speicherzugriffssteuerung
DE102017006354A1 (de) Vorrichtung und Verfahren zur gerätetechnischen Erkennung von absichtlichen oder durch Störungen und / oder Fehler verursachten Datenverfälschungen in Datenverarbeitungseinheiten
DE102011014665A1 (de) Detektieren von Angriffen auf einen portablen Datenträger
EP4028878B1 (de) Verfahren zum sicheren starten einer gerätesoftware, insbesondere eines betriebssystems, eines elektronischen gerätes
DE102013108073B4 (de) Datenverarbeitungsanordnung und verfahren zur datenverarbeitung
DE102017214057A1 (de) Verfahren zum Prüfen der Integrität von Systemkomponenten eines Systems und Anordnung zur Durchführung des Verfahrens
EP2531949B1 (de) Verfahren zum ausführen einer anwendung
DE102017005972A1 (de) Vorrichtung und Verfahren zur gerätetechnischen Erkennung von Datenflussfehlern in Daneverarbeitungseinheiten und-systemen
DE102017005971A1 (de) Vorrichtung und Verfahren zur gerätetechnischen Erkennung von Wertebereichsverletzungen von Datenwerten in Datenverarbeitungseinheiten
EP3876123B1 (de) Anordnung und betriebsverfahren für einen sicheren hochfahrablauf einer elektronischen einrichtung
DE202022106894U1 (de) System zur Verbesserung der Cybersicherheit durch Erkennung und Überwachung von Datenverfälschungen mittels Künstlicher Intelligenz
EP2318974B1 (de) Verfahren zum betrieb einer transaktionsbasierten ablaufsteuerung
EP4250634A1 (de) Rechnergestütztes industriegerät und verfahren zum betreiben eines rechnergestützten industriegeräts
DE10341593B4 (de) Prozessor und Verfahren zum Ausführen einer Sequenz von Befehlen
EP4281890A1 (de) Verfahren zur bestimmung der integrität einer datenverarbeitung, vorrichtung, datenverarbeitungsanlage und anlage
WO2023061733A1 (de) Automatische analyse einer ausnutzbarkeit von schwachstellen eines software-images

Legal Events

Date Code Title Description
R086 Non-binding declaration of licensing interest
R012 Request for examination validly filed
R084 Declaration of willingness to licence
R016 Response to examination communication