DE10310781A1 - Verfahren zum Betreiben eines Mikroprozessors und eine Mikroprozessoranordnung - Google Patents

Verfahren zum Betreiben eines Mikroprozessors und eine Mikroprozessoranordnung Download PDF

Info

Publication number
DE10310781A1
DE10310781A1 DE10310781A DE10310781A DE10310781A1 DE 10310781 A1 DE10310781 A1 DE 10310781A1 DE 10310781 A DE10310781 A DE 10310781A DE 10310781 A DE10310781 A DE 10310781A DE 10310781 A1 DE10310781 A1 DE 10310781A1
Authority
DE
Germany
Prior art keywords
program
jump
random bit
command
microprocessor
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.)
Withdrawn
Application number
DE10310781A
Other languages
English (en)
Inventor
Berndt M. Dr. Gammel
Steffen Sonnekalb
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.)
Infineon Technologies AG
Original Assignee
Infineon Technologies AG
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=32920746&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=DE10310781(A1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Infineon Technologies AG filed Critical Infineon Technologies AG
Priority to DE10310781A priority Critical patent/DE10310781A1/de
Priority to EP04709578A priority patent/EP1602017A2/de
Priority to PCT/DE2004/000241 priority patent/WO2004081971A2/de
Publication of DE10310781A1 publication Critical patent/DE10310781A1/de
Priority to US11/221,383 priority patent/US20060101513A1/en
Withdrawn legal-status Critical Current

Links

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/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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Executing Machine-Instructions (AREA)
  • Microcomputers (AREA)

Abstract

Die Erfindung schlägt ein Verfahren zum Betreiben eines Mikroprozessors vor, bei dem zumindest eine Programmverzweigung und/oder Programmverzögerung vorgesehen ist, die zur Modulation eines Programmablaufs Zufallsbit-gesteuert und als hardwarebasierender Befehl implementiert ist und sicherstellt, dass bei jedem Durchlauf eines bestimmten Programms eine jeweils von vorhergehenden Programmdurchläufen verschiedene Ausführungsdauer des Programms bewirkt wird. Weiterhin betrifft die Erfindung eine Mikroprozessoranordnung zur Durchführung des erfindungsgemäßen Verfahrens.

Description

  • Die vorliegende Erfindung betrifft ein Verfahren zur Betreiben eines Mikroprozessors und eine Mikroprozessoranordnung gemäß der nebengeordneten Patentansprüche 1 und 9.
  • Bei Programmen in Sicherheitsanwendungen, die auf einem Mikroprozessor programmiert werden, besteht generell die Möglichkeit, durch Auswertung von Befehlsfolgen geheime Informationen, wie beispielsweise Schlüssel, auszuspähen.
  • Es gibt verschiedene Möglichkeiten derartige Schaltungen für Sicherheitsanwendungen anzugreifen. Bei sogenannten "Side-Channel-Attacks" wird beispielsweise die Stromaufnahme oder die elektromagnetische Emission der Schaltung erfaßt, wenn ein bestimmter Vorgang in der Schaltung abläuft. Aus dem zeitlichen Verlauf, insbesondere dem zeitlichen Bezug der Stromaufnahme oder der elektromagnetischen Emission kann beispielsweise auf den verwendeten Schlüssel geschlossen werden.
  • Differential Power Analysis (DPA) ist ein bekanntes Angriffsszenario für Sicherheits-CPUs. Bei einem solchen Angriff wird eine Folge von Befehlen eines Programms und deren Auswirkungen in der Schaltung mittels statistischer Auswertungen der Kennlinien des Stromverbrauchs ermittelt. Aus diesen Auswertungen lassen sich detaillierte Rückschlüsse über das ausgeführte Programm gewinnen. Das Erfassen der elektromagnetischen Emission ist unter der Bezeichnung DEMA ("Differential Electro-Magnetic Analysis") bekannt.
  • Programme weisen immer mehrere Programm- bzw. Codesequenzen auf, die unabhängig voneinander sind und deren Reihenfolge in der Abarbeitung vertauschbar ist. Zum Schutz gegen oben genannte Art von Angriffen wurde bisher der Programmablauf softwaremäßig zufallsgesteuert verändert. Hierbei wurden beispielsweise Befehlsfolgen durch Permutation vertauscht, redundante Befehlsfolgen eingefügt oder mehrere verschiedene Codesequenzen, die zum gleichen Ergebnis führen, eingeführt. Dies erfordert jedoch den Einsatz eines Zufallsgenerators, der nicht bestimmbare Zufallsbits generiert, die an entsprechenden Verzweigungspunkten innerhalb des Programms softwaremäßig ausgewertet werden, um beispielsweise bei einem Sprung-Befehl in die entsprechende Codesequenz zu verzweigen.
  • Ein weiteres Verfahren zum Schutz gegen diese Art von Angriffen ist eine zufallsgesteuerte Programmverzögerung, bei der Dummy-Codesequenzen, deren Ausführungsdauer mit Hilfe eines Zufallsgenerators bestimmt wird, in den laufenden Programmcode eingefügt werden.
  • Ein aus der veröffentlichten WO/9963419 bekanntes Verfahren beschreibt die Ansteuerung eines "Wait-State-Anschlusses" einer Schaltung durch einen Zufallsgenerator, wobei in Abhängigkeit der durch den Zufallsgenerator erzeugten Zahl der Betrieb der Schaltung angehalten oder wieder aufgenommen wird und dadurch einheitliche Verarbeitungszyklen unterbunden werden.
  • Nachteilig bei den oben genannten Verfahren ist es, daß die Programmgröße zunimmt, die Laufzeit des Programms verlängert wird, die Performance sinkt und ein erhöhter Stromverbrauch zu verzeichnen ist.
  • Ausgehend von diesem Stand der Technik liegt der Erfindung die Aufgabe zugrunde, ein Verfahren zum Betreiben eines Mikroprozessors bzw. eine Mikroprozessoranordnung vorzusehen, mit denen eine ausreichende Sicherheit bei minimalem Programmaufwand gewährleistet ist.
  • Diese Aufgabe wird durch ein Verfahren bzw. eine Mikroprozessoranordnung gelöst, bei denen zumindest eine Programmver zweigung und/oder Programmverzögerung vorgesehen ist, die zur Modulation eines Programmablaufs Zufallsbit-gesteuert und als hardwarebasierender Befehl implementiert ist.
  • Da der Programmablauf durch die Reihenfolge der Befehle und deren bei der Ausführung benötigte Laufzeit bestimmt ist, wird die Modulation eines Programmablaufs in vorteilhafter Weise dadurch gesteuert, daß beispielsweise ein über einen Pseudo-Zufallsgenerator zufällig erzeugtes Bit mit einem erzeugten nicht bestimmbaren Bit eines echten physikalischen Zufallsgenerators zu einem Zufallsbit verknüpft wird, welches von den hardwarebasierenden Befehlen des Mikroprozessors genutzt wird, um zufällig Programmverzweigungen und/oder Programmverzögerungen auszuführen.
  • In vorteilhafter Weise werden Befehle eingeführt, die eine variable Ausführungszeit aufweisen, indem die Laufzeit der Befehle über die den Befehlen zugeordnete Parameter, die beispielsweise Operationszyklen angeben, zufällig verändert werden. Es können ebenso Befehle in den Programmablauf eingefügt werden, die eine Leer-Operation ausführen und keinen Einfluß auf das Ergebnis einer Codesequenz haben.
  • Zufallsgesteuerte Programmverzweigungen werden in vorteilhafter Weise durch Sprung-Befehle mit mindestens einem Sprungziel realisiert. Der Sprung wird dabei in Abhängigkeit des wertes eines Zufallsbits durchgeführt oder nicht durchgeführt. Bei einem Sprungbefehl mit mindestens zwei Sprungzielen, mit unter den Zieladressen unabhängig voneinander abzuarbeitenden Codesequenzen, kann Zufallsbit-gesteuert die Reihenfolge der abzuarbeitenden Codesequenzen variiert werden. Die Zieladressen müssen nicht zwingend alle abgearbeitet werden, wenn sie das gleiche Ergebnis erzielen. Weisen diese Codesequenzen beispielsweise unterschiedliche Laufzeitprofile auf, ist das Zeitverhalten zur Erzielung eines Ergebnisses bei einem erneuten Programmdurchlauf nicht bestimmbar, so daß die vorab beschriebenen Angriffsmethoden keine verwertbaren Informationen erzielen.
  • Nachfolgend wird die Erfindung anhand von Ausführungsbeispielen näher erläutert.
  • Im nachfolgenden ersten Ausführungsbeispiel wird ein Sprungbefehl ("jumble") implementiert, wobei der Sprungbefehl ein Sprungziel spezifiziert:
    Figure 00040001
  • In Abhängigkeit des Wertes des Zufallsbits wird der Sprung ausgeführt oder nicht ausgeführt. Ist beispielsweise das Zufallsbit gesetzt, weist also den Wert "1" auf, wird die Sprung-Operation zu Adresse "adress1" ausgeführt, wo die Codesequenz 2 abgearbeitet wird und anschließend unter der Adresse "adress2" die gemeinsame Codesequenz "common code sequence" bearbeitet wird. Die Codesequenz 1 kann hier eine Dummy-Operation beinhalten, die keinen Einfluß auf das Ergebnis hat. Für den Fall, daß das Zufallsbit nicht gesetzt ist, also den Wert "0" aufweist, wird der Sprung zu Adresse "adress1" nicht ausgeführt, sondern der Programmablauf linear mit der Codesequenz "code sequence 1" und anschließendem Sprung zu Adresse "adress2" fortgesetzt.
  • Im nächsten Ausführungsbeispiel ist ein Sprungbefehl ("jumble") implementiert, wobei der Sprungbefehl in drei Sprungziele verzweigt: Jumble <addr1>,<addr2>,<addr3>
    addr1: code sequence 1 goto addr 4
    addr2: code sequence 2 goto addr 4
    addr3: code sequence 3 goto addr 4
    addr4: common code sequence
  • Die Reihenfolge der Abarbeitung der Codesequenzen "code sequence 1, Code sequence 2 und Code sequence 3" unter den Adressen "addr1, addr2 und addr3" der Sprungziele kann vertauscht werden, da sie funktionell nicht voneinander abhängig sind. Die vom zu erzielenden Ergebnis gleichwertigen Codesequenzen müssen nicht zwingend alle abgearbeitet werden, so daß Zufallsbit-gesteuert eine Adresse angesprungen werden kann, unter der die entsprechende Codesequenz abgearbeitet wird und anschließend unter der Adresse "adress4" der Programmablauf fortgesetzt wird. Dadurch, daß die Codesequenzen unterschiedliche Laufzeitverhalten aufweisen und bei jedem erneuten Programmdurchlauf an eine andere Adresse gesprungen wird, ist eine Analyse der durch Abhörverfahren gewonnenen Daten nicht möglich. Auch die Zufallsbit-gesteuerte Reihenfolge bei einer notwendigen Abarbeitung aller Codesequenzen liefert keine verwertbaren Daten.
  • Das folgende Ausführungsbeispiel zeigt einen Sprungbefehl mit zwei möglichen Sprungzielen, der als Call-Befehl "jumblecall" implementiert ist und durch einen Sprung einen Kontextwechsel realisiert:
    Figure 00060001
  • Zufallsbit-gesteuert kann in diesem Beispiel der Befehl entweder zu einem oder zu beiden Sprungzielen ausgeführt werden. Um nach Abarbeitung einer Codesequenz das Unterprogramm zu verlassen, wird ein Befehl "return" ausgeführt, der den vorherigen Kontext wieder herstellt.
  • Das folgenden Ausführungsbeispiel zeigen einen Befehl, der einen Leer-Operation "jumplenop" ausführt:
    Figure 00060002
  • Die Zufallsbit-gesteuerten Parameter <n> und <m> spezifizieren hier die Ober- und Untergrenze möglicher Operationszyklen, so daß eine variable Lauflänge des Befehls erzielt wird. Zur Erzielung einer variablen Ausführungszeit eines Befehls, wobei die Parameter einem beliebigen Befehl zugeordnet werden können, könnte auch lediglich ein Parameter als Obergrenze angegeben werden. Weisen die Parameter den Wert "0" auf, so wird der Befehl in einem optimalen Zeitraum durchgeführt. Weisen die Parameter einen von "0" verschiedenen Wert auf, werden bis zu <n> oder <m> Takte benötigt, um diesen Befehl auszuführen.
  • Der Befehl "jumpleadd" des nachfolgenden Ausführungsbeispiels ist ebenso für alle Befehle anwendbar:
    Figure 00070001
  • Mit Hilfe dieses Befehls wird die Ausführungszeit ebenfalls zufällig verlängert.
  • Generell müssen die die Laufzeit eines Befehls bestimmenden Parameter nicht zwingend für jeden einzelnen Befehl spezifiziert werden. Diese Parameter können in einem Konfigurationsregister hinterlegt werden, auf das über beispielsweise einen Konfigurationsbefehl "jumple_config <op1> <op2> zugegriffen wird.
  • Das vorab beschriebene Verfahren bezieht sich nicht nur auf die ausgeführten Beispiele. Sie sollen vielmehr verdeutlichen, daß Programmverzögerungen und Programmverzweigungen zur Modulation eines Programmablaufs in beliebiger Variation implementiert werden können.

Claims (9)

  1. Verfahren zum Betreiben eines Mikroprozessors, gekennzeichnet durch das Vorsehen von zumindest einer Programmverzweigung und/oder Programmverzögerung, die zur Modulation eines Programmablaufs Zufallsbit-gesteuert und als hardwarebasierender Befehl implementiert ist.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß eine Programmverzögerung mittels hardwarebasierender Befehle mit zufällig variierender Laufzeit erzielt wird.
  3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß die zufällig variierende Laufzeit durch den Befehlen zugeordneten Zufallsbit-gesteuerten Parameter, die die Laufzeit eines Befehls festlegen, bestimmt ist.
  4. Verfahren nach Anspruch 3, dadurch gekennzeichnet, daß die die Laufzeit bestimmenden Parameter der Befehle durch ein dem Mikroprozessor zugeordnetes Konfigurationsregister fest vorgegeben sind.
  5. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß eine Programmverzweigung mittels eines hardwarebasierenden Sprung-Befehls mit einem Sprungziel erzielt wird und daß das Zufallsbit bestimmt, ob ein Sprung ausgeführt wird oder nicht.
  6. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß eine Programmverzweigung mittels eines hardwarebasierenden Sprung-Befehls mit zumindest zwei Sprungzielen erzielt wird und daß das Zufallsbit bestimmt, in welcher Reihenfolge die Sprungziele angesprungen werden.
  7. Verfahren nach Anspruch 6, dadurch gekennzeichnet, daß die Sprungziele willkürlich zum Zeitpunkt der Ausführung des Sprung-Befehls bestimmt werden.
  8. Verfahren nach einem der Ansprüche 1 bis 7, dadurch gekennzeichnet, daß die Zufallsbit-gesteuerte Programmverzweigung und/oder Programmverzögerung sicherstellt, dass bei jedem Durchlauf eines bestimmten Programms eine jeweils von vorhergehenden Programmdurchläufen verschiedene Ausführungsdauer des Programms bewirkt wird.
  9. Mikroprozessoranordnung, gekennzeichnet durch zumindest einen hardwarebasierenden Befehl, der eine Zufallsbit-gesteuerte Programmverzweigung und/oder Programmverzögerung zur Modulation eines Programmablaufs bewirkt.
DE10310781A 2003-03-12 2003-03-12 Verfahren zum Betreiben eines Mikroprozessors und eine Mikroprozessoranordnung Withdrawn DE10310781A1 (de)

Priority Applications (4)

Application Number Priority Date Filing Date Title
DE10310781A DE10310781A1 (de) 2003-03-12 2003-03-12 Verfahren zum Betreiben eines Mikroprozessors und eine Mikroprozessoranordnung
EP04709578A EP1602017A2 (de) 2003-03-12 2004-02-10 Verfahren zum betreiben eines mikroprozessors und eine mikroprozessoranordung
PCT/DE2004/000241 WO2004081971A2 (de) 2003-03-12 2004-02-10 Verfahren zum betreiben eines mikroprozessors und eine mikroprozessoranordung
US11/221,383 US20060101513A1 (en) 2003-03-12 2005-09-06 Method for operating a microprocessor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE10310781A DE10310781A1 (de) 2003-03-12 2003-03-12 Verfahren zum Betreiben eines Mikroprozessors und eine Mikroprozessoranordnung

Publications (1)

Publication Number Publication Date
DE10310781A1 true DE10310781A1 (de) 2004-09-30

Family

ID=32920746

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10310781A Withdrawn DE10310781A1 (de) 2003-03-12 2003-03-12 Verfahren zum Betreiben eines Mikroprozessors und eine Mikroprozessoranordnung

Country Status (4)

Country Link
US (1) US20060101513A1 (de)
EP (1) EP1602017A2 (de)
DE (1) DE10310781A1 (de)
WO (1) WO2004081971A2 (de)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102006038879A1 (de) 2006-08-18 2008-02-21 Giesecke & Devrient Gmbh Verfahren und Vorrichtung zur nebenläufigen Ausführung von Prozessen
EP2234031A1 (de) * 2009-03-24 2010-09-29 SafeNet, Inc. Obfuskation
GB2494731B (en) 2011-09-06 2013-11-20 Nds Ltd Preventing data extraction by sidechannel attack
US10432511B2 (en) 2015-03-12 2019-10-01 Nec Corporation Method for forwarding data in a network, forwarding element for forwarding data, and a network for forwarding data

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4408507A1 (de) * 1994-03-14 1995-09-28 Heidelberg Instruments Mikrotechnik Gmbh Lithografisches Verfahren
IL110181A (en) * 1994-06-30 1998-02-08 Softchip Israel Ltd Install microprocessor and peripherals
US5732138A (en) * 1996-01-29 1998-03-24 Silicon Graphics, Inc. Method for seeding a pseudo-random number generator with a cryptographic hash of a digitization of a chaotic system
US6009543A (en) * 1996-03-01 1999-12-28 Massachusetts Institute Of Technology Secure software system and related techniques
FR2745924B1 (fr) * 1996-03-07 1998-12-11 Bull Cp8 Circuit integre perfectionne et procede d'utilisation d'un tel circuit integre
EP1084543B1 (de) * 1998-06-03 2008-01-23 Cryptography Research Inc. Verwendung von unvorhersagbarer Information zur Leckminimierung von chipkarten und anderen Kryptosystemen
CA2258338C (en) * 1999-01-11 2009-02-24 Certicom Corp. Method and apparatus for minimizing differential power attacks on processors
US6349393B1 (en) * 1999-01-29 2002-02-19 International Business Machines Corporation Method and apparatus for training an automated software test
FR2818772A1 (fr) * 2000-12-21 2002-06-28 Bull Cp8 Procede de securisation d'un operateur logique ou mathematique implante dans un module electronique a microprocesseur, ainsi que le module electronique et le systeme embarque associes
JP2003018143A (ja) * 2001-06-28 2003-01-17 Mitsubishi Electric Corp 情報処理装置
US6764808B2 (en) * 2002-02-27 2004-07-20 Advanced Micro Devices, Inc. Self-aligned pattern formation using wavelenghts

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
CORON, Jean-Sebastien et al.: On Boolean and Arithmetic Masking against Differential Power Analysis *
CORON, Jean-Sebastien et al.: On Boolean and Arithmetic Masking against Differential Power Analysis; In: C.K. Koc and C. Paar, Eds: Crypto- graphic Hardware and Embedded Systems - CHES 2000, Vol. 1965 of "Lecture Notes in Computer Science", pp 231-237, Springer-Verlag 2000, S. 1-8
In: C.K. Koc and C. Paar, Eds: Crypto- graphic Hardware and Embedded Systems - CHES 2000,Vol. 1965 of "Lecture Notes in Computer Science", pp 231-237, Springer-Verlag 2000, S. 1-8 *
IRWIN, J. et al.: Instruction Stream Mutation for Non-Deterministic Processors, Technical report CSTR-01-008, Department of Computer Science, University of Bristol, December 2001, S. 1-17 *

Also Published As

Publication number Publication date
EP1602017A2 (de) 2005-12-07
US20060101513A1 (en) 2006-05-11
WO2004081971A2 (de) 2004-09-23
WO2004081971A3 (de) 2005-03-31

Similar Documents

Publication Publication Date Title
DE10000503A1 (de) Datenverarbeitungseinrichtung und Verfahren zu dessen Betrieb
DE69125881T2 (de) Verhinderung der Bestimmung der Ausführungszeit einer vorbestimmten Datenverarbeitungsroutine im Zusammenhang mit dem Auftreten eines zuvor beobachtbaren Ereignisses
DE60036928T2 (de) Gegenmassnahmeverfahren in einem elektronischen baustein zur ausführung eines krypto-algorithmus mit geheimschlüssel
DE10310781A1 (de) Verfahren zum Betreiben eines Mikroprozessors und eine Mikroprozessoranordnung
DE60036667T2 (de) Prozess zur Seitenfreigebung für virtuellen Adressierungsmechanismus
EP1468518B1 (de) Vorrichtung und verfahren zum erzeugen eines befehlscodes für ein kryptogramm
DE69934707T2 (de) Gegenmassnahmenvorrichtung in einem elektronischen bauteil um einen krypto-algorithmus mit geheimschlüssel durchzuführen
DE60213327T2 (de) Auf einem Blockverschlüsselungsalgorithmus mit Rundenwiederholung basiertes Verfahren und Vorrichtung zur Ausführung des Verfahrens
DE19709975C2 (de) Mikrocomputer
DE602005003258T2 (de) Kontrolle der Ausführung eines Algorithmuses durch eine integrierte Schaltung
WO2003088051A1 (de) Verfahren zum ersetzen eines inhalts einer datenspeichereinheit
DE10254657A1 (de) Mikrocontroller und zugeordnetes Verfahren zum Abarbeiten der Programmierung des Mikrocontrollers
DE60220793T2 (de) Verwürfelung bzw. Verschleierung (Scrambling) einer Berechnung, bei welcher eine modulare Funktion zur Anwendung kommt
DE602004001293T2 (de) Programmintegritätsprüfung mittels Statistiken
DE69909118T9 (de) Vorrichtung und verfahren zur sicherung einer integrierten schaltung
DE10103222A1 (de) Halbleiter-Speichereinrichtung und Programm-Unterscheidungssystem
WO2021148123A1 (de) Verfahren und vorrichtungen zum betreiben eines elektrischen oder elektronischen geräts
DE102018006313A1 (de) Verfahren mit Safe-Error-Abwehrmaßnahme
WO2000019367A1 (de) Datenverarbeitungseinrichtung und verfahren zu dessen betrieb zum verhindern einer differentiellen stromverbrauchanalyse
DE19921633A1 (de) Verfahren zur Implementierung kryptographischer Algorithmen
EP1031081B1 (de) Programmgesteuerte einheit und verfahren
EP0184023A1 (de) Verfahren und Einrichtung zum Schutz vor unberechtigtem Betrieb geschützter Programme in einem Mikrocomputer
EP1159675B1 (de) Mikroprozessor und verfahren zur adressierung in einem mikroprozessor
DE10358358B4 (de) Mikroprozessoranordnung und Verfahren zum Betreiben einer Mikroprozessoranordnung
DE102009005483A1 (de) Verfahren zum Ausführen einer Fehlerroutine durch einen Prozessor bei einem Angriff auf einen Datenträger

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8130 Withdrawal