DE102015211108A1 - Vorrichtung und Verfahren zur Ausführung eines Rechenverfahrens - Google Patents

Vorrichtung und Verfahren zur Ausführung eines Rechenverfahrens Download PDF

Info

Publication number
DE102015211108A1
DE102015211108A1 DE102015211108.3A DE102015211108A DE102015211108A1 DE 102015211108 A1 DE102015211108 A1 DE 102015211108A1 DE 102015211108 A DE102015211108 A DE 102015211108A DE 102015211108 A1 DE102015211108 A1 DE 102015211108A1
Authority
DE
Germany
Prior art keywords
functional unit
time
physical parameters
secondary functional
time course
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
DE102015211108.3A
Other languages
English (en)
Inventor
Robert Szerwinski
Paulius Duplys
Sebastien Leger
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 DE102015211108.3A priority Critical patent/DE102015211108A1/de
Priority to US15/736,026 priority patent/US20180191490A1/en
Priority to KR1020187001498A priority patent/KR20180018781A/ko
Priority to PCT/EP2016/060636 priority patent/WO2016202504A1/de
Priority to CN201680035115.1A priority patent/CN107690647A/zh
Publication of DE102015211108A1 publication Critical patent/DE102015211108A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/002Countermeasures against attacks on cryptographic mechanisms
    • H04L9/003Countermeasures against attacks on cryptographic mechanisms for power analysis, e.g. differential power analysis [DPA] or simple power analysis [SPA]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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 OR 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/75Protecting 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 by inhibiting the analysis of circuitry or operation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/75Protecting 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 by inhibiting the analysis of circuitry or operation
    • G06F21/755Protecting 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 by inhibiting the analysis of circuitry or operation with measures against power attack
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/76Protecting 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 application-specific integrated circuits [ASIC] or field-programmable devices, e.g. field-programmable gate arrays [FPGA] or programmable logic devices [PLD]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)
  • Measurement And Recording Of Electrical Phenomena And Electrical Characteristics Of The Living Body (AREA)

Abstract

Die Erfindung betrifft eine Vorrichtung (100) zur Ausführung eines Rechenverfahrens, insbesondere eines kryptografischen Verfahrens, wobei die Vorrichtung (100) eine primäre Funktionseinheit (110) aufweist, die zur Ausführung wenigstens eines Teils des Rechenverfahrens ausgebildet ist, dadurch gekennzeichnet, dass die Vorrichtung (100) wenigstens eine sekundäre Funktionseinheit (120) aufweist, die dazu ausgebildet ist, in einem vorgebbaren Zeitbereich ein oder mehrere physikalische Parameter der Vorrichtung (100) zu beeinflussen.

Description

  • Stand der Technik
  • Die Erfindung betrifft eine Vorrichtung zur Ausführung eines Rechenverfahrens, insbesondere eines kryptografischen Verfahrens, wobei die Vorrichtung eine primäre Funktionseinheit aufweist, die zur Ausführung wenigstens eines Teils des Rechenverfahrens ausgebildet ist.
  • Die Erfindung betrifft ferner ein entsprechendes Verfahren.
  • Datenverarbeitungsvorrichtungen bzw. -verfahren sind an sich bekannt und werden u.a. zur Ausführung von kryptografischen Verfahren oder allgemein zur Verarbeitung von sicherheitsrelevanten Daten, insbesondere auch im Bereich der IT(Informationstechnologie)-Sicherheit, benutzt. Es ist ebenfalls bekannt, dass die vorstehend genannten Systeme und Verfahren bzw. genauer deren konkrete hard- und softwaremäßige Implementierung in einem Zielsystem wie z.B. einem Mikrocontroller oder dergleichen mittels sog. Seitenkanalattacken (engl.: side channel attack) angreifbar sind. Bei diesen Seitenkanalattacken werden ein oder mehrere physikalische Parameter (z.B. Stromverbrauch, elektromagnetische Abstrahlungen, usw.) eines anzugreifenden Systems erfasst und im Hinblick auf eine Korrelation mit geheimen Daten wie z.B. geheimen Schlüsseln von kryptografischen Verfahren untersucht. Daraus kann ein Angreifer Informationen über den geheimen Schlüssel und/oder die verarbeiteten Daten erlangen.
  • Offenbarung der Erfindung
  • Demgemäß ist es Aufgabe der vorliegenden Erfindung, eine Vorrichtung und ein Verfahren anzugeben, welche gegenüber den vorstehend genannten Angriffen weniger anfällig sind.
  • Diese Aufgabe wird bei einer Vorrichtung der eingangs genannten Art erfindungsgemäß dadurch gelöst, dass die Vorrichtung wenigstens eine sekundäre Funktionseinheit aufweist, die dazu ausgebildet ist, in einem vorgebbaren Zeitbereich ein oder mehrere physikalische Parameter der Vorrichtung zu beeinflussen. Dies ermöglicht vorteilhaft, eine Synchronisation ("alignment") mehrerer Messreihen (englisch: "traces" bzw. "leakage traces") der physikalischen Parameter untereinander, wie sie bei Seitenkanalattacken typischerweise ermittelt werden, zu erschweren, weil individuelle Messreihen bzw. traces durch die erfindungsgemäße Beeinflussung so verändert werden können, dass ein Bezug zu anderen Messreihen, der ggf. eine Synchronisation ermöglicht, gestört bzw. zerstört wird. Auf diese Weise können Seitenkanalattacken erschwert, insbesondere aufwendiger und damit kostenintensiver gemacht, werden. Der erfindungsgemäße Ansatz kann auch als "alignment confusion" bezeichnet werden.
  • Bei einer vorteilhaften Ausführungsform ist vorgesehen, dass die sekundäre Funktionseinheit dazu ausgebildet ist wenigstens einen der folgenden physikalischen Parameter der Vorrichtung zu beeinflussen: eine elektrische Energieaufnahme der Vorrichtung, insbesondere einen Zeitverlauf der elektrischen Energieaufnahme der Vorrichtung, ein elektrisches Feld der Vorrichtung, insbesondere einen Zeitverlauf des elektrischen Felds, der Vorrichtung, ein magnetisches Feld der Vorrichtung, insbesondere einen Zeitverlauf des magnetischen Felds, der Vorrichtung, ein elektromagnetisches Feld der Vorrichtung, insbesondere einen Zeitverlauf des elektromagnetischen Felds, der Vorrichtung, ein elektrisches Potential einer Komponente der Vorrichtung, insbesondere einen Zeitverlauf eines elektrischen Potentials einer Komponente der Vorrichtung, eine elektrische Spannung zwischen zwei Komponenten der Vorrichtung, insbesondere einen Zeitverlauf der elektrischen Spannung zwischen den zwei Komponenten der Vorrichtung. Alternativ oder ergänzend kann die erfindungsgemäße Beeinflussung auch jeden anderen Paramter der Vorrichtung betreffen, der im Rahmen von Seitenkanalattacken auswertbar ist, z.B. eine räumliche Temperaturverteilung in der Vorrichtung, (Körper-)Schallemission, und dergleichen.
  • Bei einer vorteilhaften Ausführungsform ist vorgesehen, dass der vorgebbare Zeitbereich so gewählt ist, dass er zeitlich zumindest teilweise überlappt mit einer Ausführung des Rechenverfahrens auf der primären Funktionseinheit, wobei vorzugsweise der vorgebbare Zeitbereich so gewählt ist, dass er zeitlich im wesentlichen vollständig (d.h., zu mindestens etwa 80 %) überlappt mit einer Ausführung des Rechenverfahrens auf der primären Funktionseinheit. Dadurch ergibt sich eine besonders wirksame Störung von Seitenkanalattacken.
  • Bei einer vorteilhaften Ausführungsform ist vorgesehen, dass die sekundäre Funktionseinheit dazu ausgebildet ist, den einen oder die mehreren physikalischen Parameter der Vorrichtung durch Erzeugung eines vorgebbaren Zeitverlaufs ("Signalform") für wenigstens einen der physikalischen Parameter zu beeinflussen. Dadurch ergibt sich eine besonders wirksame Störung von Seitenkanalattacken, weil der vorgebbare Zeitverlauf vorteilhaft an – im Rahmen der Ausführung des Rechenverfahrens auf der primären Funktionseinheit – tatsächlich auftretende Signalverläufe des bzw. der physikalischen Parameter angepasst werden kann, hierdurch mithin falsche Sychronisationsinformationen ("alignment patterns") erzeugt werden können, die die Seitenkanalattacke weiter stören.
  • Beispielsweise kann die sekundäre Funktionseinheit dazu ausgebildet sein, einen zeitlichen Verlauf des bzw. der physikalischen Parameter so zu beeinflussen, dass sich an einem bzw. mehreren vorgebbaren und/oder zufällig wählbaren Zeitpunkten bzw. Zeiträumen zeitliche Verläufe für den bzw. die physikalischen Parameter ergeben, die identisch oder ähnlich sind zu solchen zeitlichen Verläufen, wie sie durch die primäre Funktionseinheit bei Ausführung des Rechenverfahrens auftreten können. Wenn z.B. die Ausführung des Rechenverfahrens auf der primären Funktionseinheit einen bestimmten zeitlichen Signalverlauf, z.B. Zeitverlauf der elektrischen Energieaufnahme, der Vorrichtung bewirkt, kann die sekundäre Funktionseinheit so betrieben bzw. gesteuert werden, dass sie einen ähnlichen oder identischen Signalverlauf, hier z.B. zeitlichen Verlauf der elektrischen Energieaufnahme, einmal oder mehrmals zu verschiedenen Zeitpunkten(vorgegeben oder (pseudo-)zufallsabhängig ermittelt) bewirkt, z.B. indem sie ihre eigene elektrische Energieaufnahme entsprechend zeitlich verändert (z.B. durch entsprechende Ansteuerung einer "dummy load" (pseudo-Last), Ausführung bestimmter Rechen- bzw. Verarbeitungsschritte, usw.). Wenn beispielsweise die Ausführung des Rechenverfahrens auf der primären Funktionseinheit einen charakteristischen Zeitverlauf der elektrischen Energieaufnahme mit lokalem Maximum ("peak") aufweist, kann die sekundäre Funktionseinheit diesen charakteristischen Zeitverlauf mit "peak" nachbilden, vorzugsweise zu mehreren unterschiedlichen Zeitpunkten, sodass eine ggf. laufende Seitenkanalattacke die mittels der sekundären Funktionseinheit nachgebildeten Zeitverläufe bzw. "peaks" irrtümlich in ihre Auswertung miteinbezieht, da sie diese nicht als absichtlich durch die sekundäre Funktionseinheit veranlasste Täuschungsmaßnahme erkennen kann. Besonders vorteilhaft kann die sekundäre Funktionseinheit solche charakteristischen Zeitverläufe (oder einen einzelnen hiervon) dann erzeugen bzw. bewirken, wenn die primäre Funktionseinheit nicht gerade einen derartigen Zeitverlauf verursacht, wodurch die Täuschungswirkung des erfindungsgemäßen Ansatzes besonders groß ist, mithin starke "alignment confusion" verursacht wird.
  • Bei einer vorteilhaften Ausführungsform ist vorgesehen, dass der vorgebbare Zeitverlauf in Abhängigkeit einer Hardwarestruktur der Vorrichtung gewählt ist, und/oder in Abhängigkeit des Rechenverfahrens, wodurch die falsche Sychronisationsinformationen ("alignment patterns") besonders gut an die konkrete erfindungsgemäße Vorrichtung bzw. das Rechenverfahren angepasst werden können.
  • Bei einer vorteilhaften Ausführungsform ist vorgesehen, dass die sekundäre Funktionseinheit dazu ausgebildet ist, den vorgebbaren Zeitverlauf dynamisch, also während eines Betriebs der primären Funktionseinheit, zu ändern, was die Sicherheit weiter steigert.
  • Bei einer vorteilhaften Ausführungsform ist vorgesehen, dass die sekundäre Funktionseinheit dazu ausgebildet ist, den einen oder die mehreren physikalischen Parameter der Vorrichtung durch Erzeugung wenigstens eines Rauschsignals zu beeinflussen. Im Gegensatz zu an tatsächlich auftretende Signalverläufe des bzw. der physikalischen Parameter angepasste "Störsignale" können hierbei alternativ oder ergänzend auch zufallsabhängige und/oder pseudozufallsabhängige Signale zur Erschwerung von Seitenkanalattacken verwendet werden.
  • Bei einer vorteilhaften Ausführungsform ist vorgesehen, dass eine Steuereinheit zur Steuerung des Betriebs der sekundären Funktionseinheit vorgesehen ist.
  • Bei einer weiteren vorteilhaften Ausführungsform ist vorgesehen, dass die primäre Funktionseinheit selbst nicht durch besondere bzw. irgendwelche Maßnahmen gegen Seitenkanalattacken geschützt ist. Vielmehr resultiert bei der vorliegenden Erfindung der Schutz durch die Beeinflussung der Parameter der Vorrichtung mittels der sekundären Funkionseinheit.
  • Bei einer weiteren vorteilhaften Ausführungsform kann die sekundäre Funktionseinheit vollständig getrennt sein von der primären Funktionseinheit. Bei einer weiteren vorteilhaften Ausführungsform kann die sekundäre Funktionseinheit so ausgebildet sein, dass sie keinerlei Rechenverfahren bzw. kryptografisches Verfahren ausführt, wie dies bei der primären Funktionseinheit der Fall ist. Vielmehr kann die sekundäre Funktionseinheit einer Ausführungsform zufolge als "Signalgenerator" arbeiten, der ein oder mehrere im Rahmen von Seitenkanalattacken auswertbare physikalische Parameter der Vorrichtung und/oder der primären Funktionseinheit beeinflusst.
  • Bei einer weiteren vorteilhaften Ausführungsform ist vorgesehen, dass ein im Rahmen der erfindungsgemäßen Beeinflussung durch die sekundäre Funktionseinheit erzeugtes Signal eine Signalenergie aufweist, die etwa im Bereich einer Signalenergie des betrachteten physikalischen Parameters liegt. Wenn beispielsweise ein Zeitverlauf der elektrischen Leistungsaufnahme der Vorrichtung als im Rahmen einer Seitenkanalattacke ermittelbarer Parameter betrachtet wird, so ist es vorteilhaft, wenn die sekundäre Funktionseinheit eine elektrische Leistungsaufnahme im Sinne der erfindungsgemäßen Beeinflussung aufweist, welche wenigstens der Größenordnung nach im Bereich der elektrischen Leistungsaufnahme der (restlichen) Vorrichtung bzw. der primären Funktionseinheit liegt.
  • Als weitere Lösung der Aufgabe der vorliegenden Erfindung ist ein Verfahren gemäß Patentanspruch 9 angegeben. Vorteilhafte Ausgestaltungen sind Gegenstand der Unteransprüche.
  • Nachfolgend werden beispielhafte Ausführungsformen der Erfindung unter Bezugnahme auf die Zeichnung erläutert. In der Zeichnung zeigt:
  • 1 schematisch eine Vorrichtung gemäß einer ersten Ausführungsform,
  • 2 schematisch eine Vorrichtung gemäß einer zweiten Ausführungsform,
  • 3a, 3b, 3c schematisch jeweils einen Zeitverlauf eines physikalischen Parameters gemäß weiterer Ausführungsformen,
  • 4 schematisch einen Zeitverlauf eines physikalischen Parameters gemäß einer weiteren Ausführungsform, und
  • 5 schematisch ein Flussdiagramm einer Ausführungsform des erfindungsgemäßen Verfahrens.
  • 1 zeigt schematisch eine Vorrichtung 100 zur Ausführung eines Rechenverfahrens, insbesondere eines kryptografischen Verfahrens (z.B. Schritte oder Teilschritte des AES Algorithmus oder SHA Algorithmus oder dergleichen), gemäß einer ersten Ausführungsform. Die Vorrichtung kann beispielsweise als (Mikro)prozessor bzw. digitaler Signalprozessor (DSP), FPGA (programmierbarer Liogikbaustein, "Field Programmable Gate Array"), ASIC (application specific integrated circuit) oder dergleichen ausgebildet sein und verfügt über eine primäre Funktionseinheit 110, die zur Ausführung wenigstens eines Teils des Rechenverfahrens ausgebildet ist. Beispielsweise kann die primäre Funktionseinheit 110 dazu ausgebildet sein, auf als Eingangsdaten zugeführte digitale Daten einen kryptografischen Algorithmus anzuwenden und hierbei erhaltene Ausgangsdaten an weitere Komponenten extern und/oder intern der Vorrichtung 100 auszugeben.
  • Ein kryptografischer "Angreifer" ist in 1 mit dem Bezugszeichen 200 angedeutet. Hierbei kann es sich beispielsweise um eine Messeinrichtung handeln, welche einen Zeitverlauf ("trace") einer elektromagnetischen Abstrahlung der primären Funktionseinheit 110 bzw. der Vorrichtung 100 erfasst, vgl. den Blockpfeil S1.
  • Wenn der Angreifer 200 eine Mehrzahl von traces erfasst, kann er u.U. auf geheime Informationen der primären Funktionseinheit 110 wie z.B. einen geheimen Schlüssel des kryptografischen Verfahrens schließen. Hierzu ist üblicherweise eine zeitlich korrelierte Auswertung mehrere Zeitverläufe ("traces") erforderlich. 3a zeigt beispielhaft einen ersten Zeitverlauf c1 (Amplitude y in beliebiger Einheit aufgetragen über einer Zeitachse t), wobei eine besonders unterscheidungskräftige Signalform S0 zu dem Zeitbereich t0 durch den Rahmen R1 hervorgehoben ist.
  • 3b zeigt zusätzlich zu dem ersten Zeitverlauf c1 nach 3a zwei weitere Zeitverläufe c2, c3, wie sie bei weiteren Messungen durch den Angreifer 200 (1) erhalten werden. Wie aus 3b ersichtlich weisen auch die zwei weiteren Zeitverläufe c2, c3 eine unterscheidungskräftige Signalform S0', S0'' auf.
  • Zur Ausführung einer erfolgreichen Seitenkanalattacke wird der Angreifer versuchen, die drei Zeitverläufe c1, c2, c3 so relativ zueinander zu verschieben, dass ihre jeweilige charakteristische Signalform mit denen der anderen Zeitverläufe übereinstimmt, vgl. 3b. Hierzu ist es erforderlich, dass der Angreifer die jeweilige charakteristische Signalform, insbesondere ihre zeitliche Lage, in den einzelnen Zeitverläufen c1, c2, c3 korrekt identifizieren kann.
  • Um dies zu erschweren ist erfindungsgemäß vorgesehen, dass die Vorrichtung 100 (1) wenigstens eine sekundäre Funktionseinheit 120 aufweist, die dazu ausgebildet ist, in einem vorgebbaren Zeitbereich ein oder mehrere physikalische Parameter der Vorrichtung 100 zu beeinflussen. Vorliegend kann die sekundäre Funktionseinheit 120 z.B. dazu ausgebildet sein, die im Rahmen der Ausführung des Rechenverfahrens erfolgende elektromagnetische Abstrahlung der primären Funktionseinheit 110 bzw. der Vorrichtung 100 zu beeinflussen, mit dem Ziel, die Synchronisation der einzelnen Zeitverläuife bzw. traces c1, c2, c3 zueinander zu erschweren.
  • Beispielsweise kann die sekundäre Funktionseinheit ein elektromagnetisches Signal S2 (1) mit wenigstens näherungsweise der Signalform S0 gemäß 3a zu einem oder mehreren Zeitpunkten erzeugen, welches – da an sich völlig unkorreliert zu der Ausführung des Rechenverfahrens auf der primären Funktionseinheit 110 – gleichsam als Störsignal für die Seitenkanalattacke dient. Der Angreifer 200 kann nämlich nicht erkennen, dass die von der sekundären Funktionseinheit 120 erzeugte Signalform nicht im Rahmen der Ausführung des Rechenverfahrens auf der primären Funktionseinheit 110 entstanden ist, sondern absichtlich durch die Funktionseinheit 120 zu Verschleierungszwecken generiert worden isf. Folglich wird der Angreifer das von der sekundären Funktionseinheit 120 erzeugte "Störsignal" ebenfalls in die Auswertung seiner Seitenkanalattacke einbeziehen und diese somit mit – für die Seitenkanalattacke unerwünschter – Entropie anreichern.
  • Diese Wirkung kann gemäß anderen Ausführungsformen auch mit durch die sekundäre Funktionseinheit 120 erzeugten "Störsignalen" anderer Form (als der von S0) erreicht werden. Wesentlich ist, dass die sekundäre Funktionseinheit 120 überhaupt eine Beeinflussung des wenigstens einen physikalischen Parameters vornimmt in einem vorgebbaren Zeitbereich, in dem die Messreihen c1, c2, c3 durch den Angreifer 200 ermittelt werden.
  • Bei einer vorteilhaften Ausführungsform ist vorgesehen, dass die sekundäre Funktionseinheit 120 (1) dazu ausgebildet ist wenigstens einen der folgenden physikalischen Parameter der Vorrichtung 100 zu beeinflussen: eine elektrische Energieaufnahme der Vorrichtung 100, insbesondere einen Zeitverlauf der elektrischen Energieaufnahme der Vorrichtung 100, ein elektrisches Feld der Vorrichtung 100, insbesondere einen Zeitverlauf des elektrischen Felds, der Vorrichtung 100, ein magnetisches Feld der Vorrichtung 100, insbesondere einen Zeitverlauf des magnetischen Felds, der Vorrichtung 100, ein elektromagnetisches Feld der Vorrichtung 100, insbesondere einen Zeitverlauf des elektromagnetischen Felds, der Vorrichtung 100, ein elektrisches Potential einer Komponente (z.B. Kontaktierung, Lötkontakt, oder "pin") der Vorrichtung 100, insbesondere einen Zeitverlauf eines elektrischen Potentials einer Komponente der Vorrichtung 100, eine elektrische Spannung zwischen zwei Komponenten der Vorrichtung 100, insbesondere einen Zeitverlauf der elektrischen Spannung zwischen den zwei Komponenten der Vorrichtung 100.
  • Bei einer vorteilhaften Ausführungsform ist vorgesehen, dass der vorgebbare Zeitbereich so gewählt ist, dass er zeitlich zumindest teilweise überlappt mit einer Ausführung des Rechenverfahrens auf der primären Funktionseinheit 110, wobei vorzugsweise der vorgebbare Zeitbereich so gewählt ist, dass er zeitlich im wesentlichen vollständig überlappt mit einer Ausführung des Rechenverfahrens auf der primären Funktionseinheit 110. Besonders vorteilhaft kann die sekundäre Funktionseinheit 120 eine derartige Beeinflussung während der gesamten Betriebszeit der primären Funktionseinheit 110 ausführen.
  • Bei einer vorteilhaften Ausführungsform ist vorgesehen, dass die sekundäre Funktionseinheit 120 dazu ausgebildet ist, den einen oder die mehreren physikalischen Parameter der Vorrichtung 100 durch Erzeugung eines vorgebbaren Zeitverlaufs für wenigstens einen der physikalischen Parameter zu beeinflussen. Beispielsweise kann die sekundäre Funktionseinheit 120 eine Signalform vergleichbar zur Kurve c1 aus 3a ein- oder mehrmals in einem betrachteten Zeitverlauf generieren, z.B. durch Erzeugung eines entsprechenden Magnetfelds.
  • Bei einer besonders vorteilhaften Ausführungsform ist vorgesehen, dass der vorgebbare Zeitverlauf, innerhalb dessen die erfindungsgemäße Beeinflussung erfolgt, in Abhängigkeit einer Hardwarestruktur der Vorrichtung 100 gewählt ist, und/oder in Abhängigkeit des Rechenverfahrens auf der primären Funktionseinheit 110.
  • Bei einer besonders vorteilhaften Ausführungsform ist vorgesehen, dass die sekundäre Funktionseinheit 120 dazu ausgebildet ist, den vorgebbaren Zeitverlauf dynamisch, also während eines Betriebs der primären Funktionseinheit 110, zu ändern, wodurch weitere Freiheitsgrade gegeben sind.
  • Bei einer besonders vorteilhaften Ausführungsform ist vorgesehen, dass die sekundäre Funktionseinheit 120 dazu ausgebildet ist, den einen oder die mehreren physikalischen Parameter der Vorrichtung 100 durch Erzeugung wenigstens eines Rauschsignals (zufallsabhgängig und/oder pseudozufallsabhängig) zu beeinflussen. In diesem Fall kann das Rauschsignal auch durch die sekundäre Funktionseinheit 120 erzeugt werden.
  • Bei einer besonders vorteilhaften Ausführungsform ist vorgesehen, dass eine Steuereinheit 120a (1) zur Steuerung des Betriebs der sekundären Funktionseinheit 120 vorgesehen ist.
  • 4 schematisch einen Zeitverlauf eines physikalischen Parameters, hier konkret einen Zeitverlauf der elektrischen Leistungsaufnahme y der Vorrichtung 100 (1) gemäß einer weiteren Ausführungsform. Zu den mit den in 4 vertikal nach oben deutenden Pfeilen markierten Zeitpunkten weist die elektrische Leistungsaufnahme y der Vorrichtung 100 bedingt durch die Ausführung eines kyptografischen Verfahrens durch die primäre Funktionseinheit 110 charakteristische Signalverläufe auf, welche als Signal S1 (1) durch den Angreifer 200 ermittelbar sind. Erfindungsgemäß beeinflusst die sekundäre Funktionseinheit 120 das Signal S1 durch das zusätzliche Signal S2 (1), welches insbesondere zu den Zeitpunkten t1, t2, t3, t4, t5, t6 zu den charakteristischen Signalverläufen des Signals S1 vergleichbare Signalverläufe aufweist. Die tatsächlich mit der Ausführung des kyptografischen Verfahrens durch die primäre Funktionseinheit 110 entstehenden Signalverläufe S1 werden somit erfindungsgemäß in dem durch die sekundäre Funktionseinheit S2 erzeugten Signal S2, das die elektrische Leistungsaufnahme y entsprechend beeinflusst, versteckt, wodurch alignment confusion bewirkt werden kann.
  • Alternativ oder ergänzend kann die sekundäre Funktionseinheit 120 auch Rauschsignale erzeugen, um das Signal S1 erfindungsgemäß zu beeinflussen. D.h., eine Kombination von deterministisch und nicht-deterministisch erhaltenen Signalen S2 zur Beeinflussung des bzw. der physikalischen Parameter ist ebenfalls denkbar.
  • Bei einer weiteren Ausführungsform kann die sekundäre Funktionseinheit 120 auch verschiedene physikalische Parameter der Vorrichtung 100 gleichzeitig oder zeitlich versetzt zueinander beeinflussen. Beispielsweise kann die Erzeugung charakteristischer Signalformen S0 für die elektrische Leistungsaufnahme kombiniert werden mit einer gleichzeigten Abstrahlung von elektromagnetischen Feldern, die auf Rauschsignalen basieren.
  • 5 zeigt schematisch ein Flussdiagramm einer Ausführungsform des erfindungsgemäßen Verfahrens. In Schritt 300 wird das kryptografische bzw. Rechenverfahren durch die primäre Funktionseinheit 110 ausgeführt, und im wesentlichen gleichzeitig hierzu wird in Schritt 310 die erfindungsgemäße Beeinflussung des Signals S1 durch ein mittels der sekundären Funktionseinheit 120 erzeugtes Signal S2 (1) vorgenommen.
  • 2 zeigt eine weitere Erfindungsvariante, bei der der primären Funktionseinheit 110 eine Eingangsschnittstelle 110a zugeordnet ist zum Zuführen von digitalen Eingangsdaten, und eine Ausgangsschnittstelle 110b zur Ausgabe von digitalen Ausgangsdaten, die mittels der primären Funktionseinheit 110 unter Ausführung eines Rechenverfahrens aus den Eingangsdaten erhalten worden sind.
  • Die Komponente 400 repräsentiert eine gemeinsame elektrische Energieversorgung. Ein von der Vorrichtung 100 während der Ausführung des Rechenverfahrens aufgenommer Strom in einer Zuleitung von der Energieversorgung 400 zu der Vorrichtung 100 repräsentiert den im Rahmen einer Seitenkanalattacke erfassbaren physikalischen Parameter bzw. seinen zeitlichen Verlauf. Erfindungsgemäß "erzeugt" die sekundäre Funktionseinheit 120 ein Störsignal in Form einer vorgebbaren bzw. zufallsbasierten elektrischen Energieaufnahme, die eine entsprechende Stromänderung bewirkt, welche die Seitenkanallattacke auf das Rechenverfahren in der primären Funktionseinheit 110 weniger aussagekräftig macht. Die Erzeugung des "Störsignals" durch die sekundäre Funktionseinheit 120 wird durch die Steuereinheit 120a gesteuert.
  • Das erfindungsgemäße Prinzip ermöglicht vorteilhaft die Absicherung von Rechenverfahren bzw. kryptografischen Verfahren bzw. sie ausführenden Funktionseinheiten 110 gegen Seitenkanalattacken, ohne dass eine Änderung an der zu sichernden Funktionseinheit 110 selbst erforderlich ist.

Claims (14)

  1. Vorrichtung (100) zur Ausführung eines Rechenverfahrens, insbesondere eines kryptografischen Verfahrens, wobei die Vorrichtung (100) eine primäre Funktionseinheit (110) aufweist, die zur Ausführung wenigstens eines Teils des Rechenverfahrens ausgebildet ist, dadurch gekennzeichnet, dass die Vorrichtung (100) wenigstens eine sekundäre Funktionseinheit (120) aufweist, die dazu ausgebildet ist, in einem vorgebbaren Zeitbereich ein oder mehrere physikalische Parameter der Vorrichtung (100) zu beeinflussen.
  2. Vorrichtung (100) nach Anspruch 1, wobei die sekundäre Funktionseinheit (120) dazu ausgebildet ist, wenigstens einen der folgenden physikalischen Parameter der Vorrichtung (100) zu beeinflussen: – eine elektrische Energieaufnahme der Vorrichtung (100), insbesondere einen Zeitverlauf der elektrischen Energieaufnahme der Vorrichtung (100), – ein elektrisches Feld der Vorrichtung (100), insbesondere einen Zeitverlauf des elektrischen Felds, der Vorrichtung (100), – ein magnetisches Feld der Vorrichtung (100), insbesondere einen Zeitverlauf des magnetischen Felds, der Vorrichtung (100), – ein elektromagnetisches Feld der Vorrichtung (100), insbesondere einen Zeitverlauf des elektromagnetischen Felds, der Vorrichtung (100), – ein elektrisches Potential einer Komponente der Vorrichtung (100), insbesondere einen Zeitverlauf eines elektrischen Potentials einer Komponente der Vorrichtung (100), – eine elektrische Spannung zwischen zwei Komponenten der Vorrichtung (100), insbesondere einen Zeitverlauf der elektrischen Spannung zwischen den zwei Komponenten der Vorrichtung (100).
  3. Vorrichtung (100) nach einem der vorstehenden Ansprüche, wobei der vorgebbare Zeitbereich so gewählt ist, dass er zeitlich zumindest teilweise überlappt mit einer Ausführung des Rechenverfahrens auf der primären Funktionseinheit (110), wobei vorzugsweise der vorgebbare Zeitbereich so gewählt ist, dass er zeitlich im wesentlichen vollständig überlappt mit einer Ausführung des Rechenverfahrens auf der primären Funktionseinheit (110).
  4. Vorrichtung (100) nach einem der vorstehenden Ansprüche, wobei die sekundäre Funktionseinheit (120) dazu ausgebildet ist, den einen oder die mehreren physikalischen Parameter der Vorrichtung (100) durch Erzeugung eines vorgebbaren Zeitverlaufs für wenigstens einen der physikalischen Parameter zu beeinflussen.
  5. Vorrichtung (100) nach Anspruch 4, wobei der vorgebbare Zeitverlauf in Abhängigkeit einer Hardwarestruktur der Vorrichtung gewählt ist, und/oder in Abhängigkeit des Rechenverfahrens.
  6. Vorrichtung (100) nach Anspruch 4 oder 5, wobei die sekundäre Funktionseinheit (120) dazu ausgebildet ist, den vorgebbaren Zeitverlauf dynamisch, also während eines Betriebs der primären Funktionseinheit (110), zu ändern.
  7. Vorrichtung (100) nach einem der vorstehenden Ansprüche, wobei die sekundäre Funktionseinheit (120) dazu ausgebildet ist, den einen oder die mehreren physikalischen Parameter der Vorrichtung (100) durch Erzeugung wenigstens eines Rauschsignals zu beeinflussen.
  8. Vorrichtung (100) nach einem der vorstehenden Ansprüche, wobei eine Steuereinheit (120a) zur Steuerung des Betriebs der sekundären Funktionseinheit (120) vorgesehen ist.
  9. Verfahren zum Betreiben einer Vorrichtung (100) zur Ausführung eines Rechenverfahrens, insbesondere eines kryptografischen Verfahrens, wobei die Vorrichtung (100) eine primäre Funktionseinheit (110) aufweist, die zur Ausführung wenigstens eines Teils des Rechenverfahrens ausgebildet ist, dadurch gekennzeichnet, dass die Vorrichtung (100) wenigstens eine sekundäre Funktionseinheit (120) aufweist, und dass die sekundäre Funktionseinheit (120) in einem vorgebbaren Zeitbereich ein oder mehrere physikalische Parameter der Vorrichtung (100) beeinflusst.
  10. Verfahren nach Anspruch 9, wobei die sekundäre Funktionseinheit (120) wenigstens einen der folgenden physikalischen Parameter der Vorrichtung (100) beeinflusst: – eine elektrische Energieaufnahme der Vorrichtung (100), insbesondere einen Zeitverlauf der elektrischen Energieaufnahme der Vorrichtung (100), – ein elektrisches Feld der Vorrichtung (100), insbesondere einen Zeitverlauf des elektrischen Felds, der Vorrichtung (100), – ein magnetisches Feld der Vorrichtung (100), insbesondere einen Zeitverlauf des magnetischen Felds, der Vorrichtung (100), – ein elektromagnetisches Feld der Vorrichtung (100), insbesondere einen Zeitverlauf des elektromagnetischen Felds, der Vorrichtung (100), – ein elektrisches Potential einer Komponente der Vorrichtung (100), insbesondere einen Zeitverlauf eines elektrischen Potentials einer Komponente der Vorrichtung (100), – eine elektrische Spannung zwischen zwei Komponenten der Vorrichtung (100), insbesondere einen Zeitverlauf der elektrischen Spannung zwischen den zwei Komponenten der Vorrichtung (100).
  11. Verfahren nach einem der Ansprüche 9 bis 10, wobei der vorgebbare Zeitbereich so gewählt wird, dass er zeitlich zumindest teilweise überlappt mit einer Ausführung des Rechenverfahrens auf der primären Funktionseinheit (110), wobei vorzugsweise der vorgebbare Zeitbereich so gewählt wird, dass er zeitlich im wesentlichen vollständig überlappt mit einer Ausführung des Rechenverfahrens auf der primären Funktionseinheit (110).
  12. Verfahren nach einem der Ansprüche 9 bis 11, wobei die sekundäre Funktionseinheit (120) den einen oder die mehreren physikalischen Parameter der Vorrichtung (100) durch Erzeugung eines vorgebbaren Zeitverlaufs für wenigstens einen der physikalischen Parameter beeinflusst.
  13. Verfahren nach einem der Ansprüche 9 bis 12, wobei der vorgebbare Zeitverlauf in Abhängigkeit einer Hardwarestruktur der Vorrichtung gewählt wird, und/oder in Abhängigkeit des Rechenverfahrens, und wobei insbesondere der vorgebbare Zeitverlauf dynamisch, also während eines Betriebs der primären Funktionseinheit (110), geändert wird.
  14. Verfahren nach einem der Ansprüche 9 bis 13, wobei die sekundäre Funktionseinheit (120) den einen oder die mehreren physikalischen Parameter der Vorrichtung (100) durch Erzeugung wenigstens eines Rauschsignals beeinflusst.
DE102015211108.3A 2015-06-17 2015-06-17 Vorrichtung und Verfahren zur Ausführung eines Rechenverfahrens Pending DE102015211108A1 (de)

Priority Applications (5)

Application Number Priority Date Filing Date Title
DE102015211108.3A DE102015211108A1 (de) 2015-06-17 2015-06-17 Vorrichtung und Verfahren zur Ausführung eines Rechenverfahrens
US15/736,026 US20180191490A1 (en) 2015-06-17 2016-05-12 Apparatus and method for carrying out a computing process
KR1020187001498A KR20180018781A (ko) 2015-06-17 2016-05-12 계산 프로세스를 실행하기 위한 장치 및 방법
PCT/EP2016/060636 WO2016202504A1 (de) 2015-06-17 2016-05-12 Vorrichtung und verfahren zur ausführung eines rechenverfahrens
CN201680035115.1A CN107690647A (zh) 2015-06-17 2016-05-12 用于实施计算方法的设备和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102015211108.3A DE102015211108A1 (de) 2015-06-17 2015-06-17 Vorrichtung und Verfahren zur Ausführung eines Rechenverfahrens

Publications (1)

Publication Number Publication Date
DE102015211108A1 true DE102015211108A1 (de) 2016-12-22

Family

ID=55967281

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102015211108.3A Pending DE102015211108A1 (de) 2015-06-17 2015-06-17 Vorrichtung und Verfahren zur Ausführung eines Rechenverfahrens

Country Status (5)

Country Link
US (1) US20180191490A1 (de)
KR (1) KR20180018781A (de)
CN (1) CN107690647A (de)
DE (1) DE102015211108A1 (de)
WO (1) WO2016202504A1 (de)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102021001204A1 (de) 2021-02-25 2022-08-25 Karl-Heinz Krempels Elektronische Vorrichtung zur Erzeugung von Signalen zur Übertragung von Informationen für das Internet of Things (IoT)
DE102021001493A1 (de) 2021-03-18 2022-09-22 Karl-Heinz Krempels Elektronische Vorrichtung zur Erzeugung von Signalen zur Übertragung von Information für das Internet of Things (IoT)
DE102021001205A1 (de) 2021-02-26 2022-09-29 Karl-Heinz Krempels Elektronische Vorrichtung zur Erzeugung von Signalen zur Übertragung von Informationen für das Internet of Things (IoT)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021514658A (ja) * 2018-03-06 2021-06-17 ザ トラスティーズ オブ ザ ユニバーシティ オブ ペンシルバニア 前立腺特異的膜抗原carおよびその使用方法

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7764785B2 (en) * 2004-11-08 2010-07-27 King Fahd University Of Petroleum And Minerals Method for communicating securely over an insecure communication channel
JP2007128184A (ja) * 2005-11-01 2007-05-24 Sharp Corp 消費電力解析対策機能付き半導体装置
US7864951B2 (en) * 2006-07-10 2011-01-04 King Fahd University Of Petroleum And Minerals Scalar multiplication method with inherent countermeasures
DE102008032550B4 (de) * 2007-07-12 2022-03-24 Arm Limited Vorrichtung, System und Verfahren zum Verschleiern von in einer integrierten Schaltung verarbeiteten Daten
JP5407352B2 (ja) * 2009-01-19 2014-02-05 富士通株式会社 復号処理装置、復号処理プログラム、復号処理方法
CN101695021A (zh) * 2009-10-22 2010-04-14 杭州晟元芯片技术有限公司 一种抗spa/dpa攻击的系统和方法
JP2011169977A (ja) * 2010-02-16 2011-09-01 Renesas Electronics Corp 暗号処理装置
US9213835B2 (en) * 2010-04-07 2015-12-15 Xilinx, Inc. Method and integrated circuit for secure encryption and decryption
DE102011078642A1 (de) * 2011-07-05 2013-01-10 Robert Bosch Gmbh Verfahren zum Prüfen eines m aus n Codes
US8627131B2 (en) * 2011-10-27 2014-01-07 Certicom Corp. Hardware countermeasure against cryptographic attack
DE102012219205A1 (de) * 2012-10-22 2014-05-08 Robert Bosch Gmbh Vorrichtung und Verfahren zur Ausführung eines kryptographischen Verfahrens
DE102012025416A1 (de) * 2012-12-21 2014-06-26 Giesecke & Devrient Gmbh Verfahren zum Betreiben eines portablen Datenträgers sowie ein solcher portabler Datenträger
US8909967B1 (en) * 2012-12-31 2014-12-09 Emc Corporation Technique for secure computation
DE102013208530A1 (de) * 2013-05-08 2014-11-13 Robert Bosch Gmbh Speichereinrichtung
TWI517655B (zh) * 2013-05-23 2016-01-11 晨星半導體股份有限公司 密碼裝置以及密鑰保護方法
US9485088B2 (en) * 2014-10-31 2016-11-01 Combined Conditional Access Development And Support, Llc Systems and methods for dynamic data masking

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102021001204A1 (de) 2021-02-25 2022-08-25 Karl-Heinz Krempels Elektronische Vorrichtung zur Erzeugung von Signalen zur Übertragung von Informationen für das Internet of Things (IoT)
DE102021001205A1 (de) 2021-02-26 2022-09-29 Karl-Heinz Krempels Elektronische Vorrichtung zur Erzeugung von Signalen zur Übertragung von Informationen für das Internet of Things (IoT)
DE102021001493A1 (de) 2021-03-18 2022-09-22 Karl-Heinz Krempels Elektronische Vorrichtung zur Erzeugung von Signalen zur Übertragung von Information für das Internet of Things (IoT)

Also Published As

Publication number Publication date
KR20180018781A (ko) 2018-02-21
US20180191490A1 (en) 2018-07-05
CN107690647A (zh) 2018-02-13
WO2016202504A1 (de) 2016-12-22

Similar Documents

Publication Publication Date Title
DE102015211108A1 (de) Vorrichtung und Verfahren zur Ausführung eines Rechenverfahrens
DE112018004408B4 (de) Identifikation von angriffsströmen in einer mehrschichtigen netzwerktopologie
DE10128573A1 (de) Verhindern der unerwünschten externen Erfassung von Operationen in integrierten Digitalschaltungen
EP2940620A1 (de) Ableiten eines gerätespezifischen wertes mit hilfe einer unklonbaren funktion
DE102009036179A1 (de) Verfahren zur Ausstellung eines digitalen Zertifikats durch eine Zertifizierungsstelle, Anordnung zur Durchführung des Verfahrens und Rechnersystem einer Zertifizierungsstelle
EP3387636B1 (de) Kryptoalgorithmus mit schlüsselabhängigem maskiertem rechenschritt (sbox-aufruf)
Ashtiani et al. Partial discharge pulse localization in excessive noisy data window
EP3400459B1 (de) Verfahren zur elektronischen analyse eines zeitlich veränderlichen signals
DE19963407A1 (de) Tragbarer Datenträger mit Zugriffsschutz durch Nachrichtenverfremdung
DE102014114563A1 (de) Verfahren zum Ermitteln von Kenngrößen eines Teilentladungsvorgangs
DE102012219205A1 (de) Vorrichtung und Verfahren zur Ausführung eines kryptographischen Verfahrens
DE102017216644A1 (de) Verfahren und Anordnung zum Erkennen von Teilentladungen bei einem elektrischen Betriebsmittel
EP1468518A1 (de) Vorrichtung und verfahren zum erzeugen eines befehlscodes für ein kryptogramm
DE102011107104B4 (de) Tragbares Sicherheitsmodul und Verfahren zu dessen Betrieb zur Abwehr eines Angriffs in Echtzeit per Mustererkennung
DE102014213071A1 (de) Verfahren und Vorrichtung zur Verarbeitung von Daten
EP3994473B1 (de) Auswerten von teilentladungssignalen
DE102013219221A1 (de) Erkennen einer Manipulation eines Prozessors
DE10258323A1 (de) Verschlüsselungsverfahren
DE102008033162A1 (de) Physikalischer Zufallszahlengenerator
DE10310781A1 (de) Verfahren zum Betreiben eines Mikroprozessors und eine Mikroprozessoranordnung
DE102009050618B4 (de) Messverfahren, Messvorrichtung und Computerprogramm zur Ermittlung eines störungsbefreiten Meßsignals
DE2629003C2 (de) Verfahren und Anordnung zur Anzeige des Vorhandenseins von Gegenständen in einem Überwachungsbereich, insbesondere zur Verhinderung von Ladendiebstählen
DE102015222968A1 (de) Betriebsverfahren für eine elektronische Vorrichtung und elektronische Vorrichtung
DE102016124335B4 (de) Manipulationssichere Einhausung von PCBs
DE102011007976A1 (de) Verfahren zur gesicherten Ausführung einer Kryptographischen Berechnung

Legal Events

Date Code Title Description
R012 Request for examination validly filed