DE19936939A1 - Datenverarbeitungseinrichtung und Verfahren zu dessen Betrieb zum Verhindern einer differentiellen Stromverbrauchanalyse - Google Patents

Datenverarbeitungseinrichtung und Verfahren zu dessen Betrieb zum Verhindern einer differentiellen Stromverbrauchanalyse

Info

Publication number
DE19936939A1
DE19936939A1 DE19936939A DE19936939A DE19936939A1 DE 19936939 A1 DE19936939 A1 DE 19936939A1 DE 19936939 A DE19936939 A DE 19936939A DE 19936939 A DE19936939 A DE 19936939A DE 19936939 A1 DE19936939 A1 DE 19936939A1
Authority
DE
Germany
Prior art keywords
register
data
integrated circuit
registers
processing device
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
DE19936939A
Other languages
English (en)
Inventor
Markus Feuser
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.)
Philips Intellectual Property and Standards GmbH
Original Assignee
Philips Corporate Intellectual Property 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 Philips Corporate Intellectual Property GmbH filed Critical Philips Corporate Intellectual Property GmbH
Priority to DE19936939A priority Critical patent/DE19936939A1/de
Priority to EP99947401A priority patent/EP1046142B1/de
Priority to PCT/EP1999/007026 priority patent/WO2000019386A1/de
Priority to AT99947401T priority patent/ATE310293T1/de
Priority to JP2000572811A priority patent/JP2002526797A/ja
Priority to DE59912804T priority patent/DE59912804D1/de
Publication of DE19936939A1 publication Critical patent/DE19936939A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/067Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
    • G06K19/07Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
    • GPHYSICS
    • G06COMPUTING OR 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 OR 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/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 OR 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/77Protecting 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 smart cards
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/067Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
    • G06K19/07Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
    • G06K19/073Special arrangements for circuits, e.g. for protecting identification code in memory
    • G06K19/07309Means for preventing undesired reading or writing from or onto record carriers
    • G06K19/07363Means for preventing undesired reading or writing from or onto record carriers by preventing analysis of the circuit, e.g. dynamic or static power analysis or current analysis
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • 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 OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/72Indexing scheme relating to groups G06F7/72 - G06F7/729
    • G06F2207/7219Countermeasures against side channel or fault attacks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/08Randomization, e.g. dummy operations or using noise
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry
    • H04L2209/125Parallelization or pipelining, e.g. for accelerating processing of cryptographic operations

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Power Sources (AREA)

Abstract

Die vorliegende Erfindung betrifft eine Datenverarbeitungseinrichtung (100) sowie ein Verfahren zum Betreiben einer Datenverarbeitungseinrichtung, insbesondere einer Chipkarte, mit einer integrierten Schaltung, welche in Abhängigkeit von einem Taktsignal Rechenoperationen, insbesondere kryptographische Operationen, Datenein- bzw. -ausgaben sowie eine Datenübergabe von bzw. zu Registern der integrierten Schaltung ausführt. Hierbei wird die integrierte Schaltung (10) derart gesteuert, dass das Ausführen von Rechenoperationen einerseits und die Datenein-/-ausgabe sowie die Datenübergabe von Register zu Register bzw. zwischen Registern andererseits zeitlich parallel durchgeführt wird.

Description

Technisches Gebiet
Die Erfindung betrifft ein Verfahren zum Betreiben einer Datenverarbei­ tungseinrichtung, insbesondere einer Chipkarte, mit einer integrierten Schaltung, welche in Abhängigkeit von einem Taktsignal Rechenoperatio­ nen, insbesondere kryptographische Operationen, Datenein- bzw. -ausgaben sowie eine Datenübergabe zwischen Registern der integrierten Schaltung ausführt, gemäß dem Oberbegriff des Anspruchs 1. Die Erfin­ dung betrifft ferner eine Datenverarbeitungseinrichtung, insbesondere Chipkarte, insbesondere zum Ausführen des Verfahrens, mit einer inte­ grierten Schaltung, welche in Abhängigkeit von einem Taktsignal Re­ chenoperationen, insbesondere kryptographische Operationen, ausführt, wobei die integrierte Schaltung ein Rechenwerk mit zugeordnetem ersten Register und Datenein- und -ausgängen aufweist, gemäß dem Oberbegriff des Anspruchs 3.
Stand der Technik
In vielen Datenverarbeitungsgeräten mit integrierter Schaltung dienen bei­ spielsweise kryptographische Operationen zum Schutz des Betriebes die­ ser Geräte bzw. zum Schutz von in dem Gerät transportierten Daten. Die hierfür notwendigen Rechenoperationen werden dabei sowohl von Stan­ dard-Rechenwerken als auch von dedizierten Crypto-Rechenwerken durchgeführt. Ein typisches Beispiel für letzteres sind Chipkarten bzw. IC- Karten. Bei in diesem Zusammenhang verwendeten Daten bzw. Zwi­ schenergebnissen handelt es sich üblicherweise um sicherheitsrelevante Informationen, wie beispielsweise kryptographische Schlüssel oder Ope­ randen.
Bei von der integrierten Schaltung durchgeführten Rechenoperationen, beispielsweise zur Berechnung von kryptographischen Algorithmen, wer­ den logische Verknüpfungen zwischen Operanden bzw. Zwischenergeb­ nissen durchgeführt. In Abhängigkeit von der verwendeten Technologie führen diese Operationen, insbesondere das Laden von leeren oder zuvor gelöschten Speicherbereichen bzw. Register mit Daten, zu einem erhöh­ ten Stromverbrauch der Datenverarbeitungsgeräte. Bei komplementärer Logik, wie beispielsweise der CMOS-Technik, tritt ein erhöhter Stromver­ brauch dann auf, wenn der Wert einer Bit-Speicherzelle geändert wird, d. h. sein Wert sich von "0" auf "1" bzw. von "1" auf "0" ändert. Der erhöhte Verbrauch hängt dabei von der Anzahl der im Speicher bzw. Register ge­ änderten Bitstellen ab. Mit anderen Worten lässt das Laden eines zuvor gelöschten Registers einen Stromverbrauch proportional zum Hamming­ gewicht des in das leere Register geschriebenen Operanden (= Anzahl der Bits mit dem Wert "1") ansteigen. Durch eine entsprechende Analyse die­ ser Stromänderung könnte es möglich sein, Informationen über die be­ rechneten Operationen zu extrahieren, so dass eine erfolgreiche Krypto­ analyse von geheimen Operanden, wie beispielsweise kryptographischen Schlüsseln, möglich ist. Mittels Durchführung mehrerer Strommessungen am Datenverarbeitungsgerät könnten beispielsweise bei sehr kleinen Si­ gnaländerungen eine hinreichende Extraktion der Informationen ermög­ licht werden. Andererseits könnten mehrere Strommessungen eine ggf. erforderliche Differenzbildung ermöglichen. Diese Art der Kryptoanalyse wird auch als "Differential Power Analysis" bezeichnet, mittels derer ein Außenstehender durch reine Beobachtung von Änderungen des Strom­ verbrauches des Datenverarbeitungsgerätes eine ggf. unberechtigte Kryptoanalyse der kryptographischen Operationen, Algorithmen, Operan­ den bzw. Daten erfolgreich ausführen kann. Die "Differential Power Analy­ sis" ermöglicht somit über eine reine Funktionalität hinaus zusätzliche in­ terne Informationen einer integrierten Schaltung gewinnen zu können.
Aus der US 5 297 201 ist es bekannt, einen Hochfrequenz abstrahlenden Computer mit einer Einrichtung zu kombinieren, welche ebenfalls eine Hochfrequenz ähnlich zu derjenigen des Computers abstrahlt. Dadurch ist es für einen unberechtigten Dritten nicht mehr möglich, die Hochfre­ quenzabstrahlung des Computers zu dekodieren. Eine Kryptoanalyse durch einen Dritten, der unmittelbar Zugang zum Computer hat, kann die­ ses System jedoch nicht verhindern.
Die WO 90/15489 beschreibt ein gesichertes Kommunikationssystem, bei dem Dummyverkehr bzw. -übertragungen erzeugt werden, um kryptogra­ phische Analysen zu erschweren. Eine Kryptoanalyse durch einen Dritten, der unmittelbar Zugang zum Computer hat, kann dieses System jedoch ebenfalls nicht verhindert werden.
Darstellung der Erfindung, Aufgabe, Lösung, Vorteile
Es ist Aufgabe der vorliegenden Erfindung, ein verbessertes Verfahren und eine verbesserte Datenverarbeitungseinrichtung der obengenannten Art zur Verfügung zu stellen, welche die obengenannten Nachteile besei­ tigen und einen wirksamen Schutz gegen eine "Differential Power Analy­ sis" zur Verfügung stellen.
Diese Aufgabe wird durch ein Verfahren der o. g. Art mit den in Anspruch 1 gekennzeichneten Merkmalen und durch eine Datenverarbeitungsein­ richtung der o. g. Art mit den in Anspruch 3 gekennzeichneten Merkmalen gelöst.
Dazu ist es bei dem Verfahren der o. g. Art erfindungsgemäß vorgesehen, dass die integrierte Schaltung derart gesteuert wird, dass das Ausführen von Rechenoperationen einerseits und die Datenein-/-ausgabe sowie die Datenübergabe von Register zu Register bzw. zwischen Registern ande­ rerseits zeitlich parallel durchgeführt wird.
Dies hat den Vorteil, dass für eine "Differential Power Analysis" Anhalts­ punkte dafür fehlen, wann eine Rechenoperation endet bzw. wann ein Auslesen/Beschreiben von Registern oder wann eine Datenein-/-ausgabe erfolgt, da Zeitbereiche sowohl der eigentlichen Berechnungen als auch der Datenein- und Datenausgabe verschleiert werden. Die "Differential Power Analysis" wird somit erheblich erschwert, da von außen nicht mehr festgestellt werden kann, ob eine wirkliche Berechnung oder eine Ein- /Ausgabe stattfindet.
In einer vorteilhaften Weiterbildung des Verfahrens werden zum weiteren Verschleiern der Rechenoperationen sowie Datenein-/Ausgaben unmittel­ bar vor, während und/oder unmittelbar nach der Datenübergabe zwischen den Registern der integrierten Schaltung Dummyberechnungen von einem Rechenwerk der integrierten Schaltung ausgeführt, welche zufällige oder vorbestimmte Daten bearbeiten, wobei keine Daten in Register der inte­ grierten Schaltung geschrieben werden.
Bei einer Datenverarbeitungseinrichtung der o. g. Art ist es erfindungsge­ mäß vorgesehen, dass ein mit dem ersten Register verbundenes zweites Register vorgesehen ist, welches die Datenein- und -ausgänge aufweist, wobei ferner eine Steuereinheit mit der integrierten Schaltung verbunden ist, welche derart ausgebildet ist, dass sie einen zeitlich parallelen Betrieb der Register zur Datenein-/-ausgabe und Datenübergabe zwischen den Registern einerseits und Rechenoperationen der Recheneinheit anderer­ seits steuert.
Dies hat den Vorteil, dass für eine "Differential Power Analysis" Anhalts­ punkte dafür fehlen, wann eine Rechenoperation endet bzw. wann ein Auslesen/Beschreiben von Registern oder wann eine Datenein-/-ausgabe erfolgt, da Zeitbereiche sowohl der eigentlichen Berechnungen als auch der Datenein- und Datenausgabe verschleiert werden. Durch das zweite Register ist eine Ein-/Ausgabe von Daten möglich, während das Rechen­ werk aktiv ist und ggf. Daten in das erste Register schreibt oder Daten aus dem ersten Register ausliest. Die "Differential Power Analysis" wird somit erheblich erschwert, da von außen bei geeigneter Ansteuerung des zwei­ ten Registers nicht mehr festgestellt werden kann, ob eine wirkliche Be­ rechnung oder eine Ein-/Ausgabe stattfindet.
In einer vorteilhaften Weitergestaltungen der Datenverarbeitungseinrich­ tung ist das erste Register ein Operandenregister des Rechenwerkes und/oder das zweite Register ein Operandenregister der Datenein-/­ -ausgabe.
Kurze Beschreibung der Zeichnungen
Nachstehend wird die Erfindung anhand der beigefügten Zeichnungen näher erläutert. Diese zeigen in
Fig. 1 ein Blockschaltbild einer bevorzugten Ausführungsform einer erfindungsgemäßen Datenverarbeitungseinrichtung,
Fig. 2 ein Blockschaltbild einer integrierten Schaltung der Datenver­ arbeitungseinrichtung von Fig. 1,
Fig. 3 eine graphische Veranschaulichung der Aktivität der erfin­ dungsgemäßen Datenverarbeitungseinrichtung über die Zeit gemäß dem Stand der Technik und
Fig. 4 eine graphische Veranschaulichung der Aktivität der erfin­ dungsgemäßen Datenverarbeitungseinrichtung über die Zeit gemäß der Erfindung.
Bester Weg zur Ausführung der Erfindung
Fig. 1 zeigt eine bevorzugte Ausführungsform einer erfindungsgemäßen Datenverarbeitungseinrichtung 100 mit einer integrierten Schaltung 10, einem Register 12 mit Programmzugriff 14 und einer Steuereinheit 16. Über Leitung 18 erhält die Steuereinheit 16 sowie die integrierte Schaltung ein in Fig. 3 und 4 dargestelltes Taktsignal 20. Über Steuerleitungen 22 steuert die Steuereinheit 16 die integrierte Schaltung 10, die Datenein­ gänge 24 und Datenausgänge 26 aufweist.
Wie aus Fig. 2 ersichtlich ist umfasst die integrierte Schaltung 10 ein Re­ chenwerk 28, ein dem Rechenwerk 28 zugeordnetes erstes Operanden­ register 30 und ein mit dem ersten Operandenregister 30 verbundenes zweites Operandenregister 32. Die Dateneingänge 24 und Datenausgän­ ge 26 sind am zweiten Operandenregister 32 angeordnet. Das Taktsignal 20 (Fig. 3 und 4) wird über die Leitung 18 sowohl an das Rechenwerk 28 als auch an die beiden Operandenregister 30 und 32 weitergeleitet. Bei Ausführung von Berechnungen bzw. Operationen durch das Rechenwerk 28 liest dieses aus dem ersten Register 30 Daten aus bzw. schreibt ein Ergebnis einer Berechnung in das erste Register 30 ein. Zwischen den Registern 30 und 32 erfolgt ein entsprechender Datenaustausch bzw. eine gegenseitige Datenübergabe, nachfolgend als R2-1 bezeichnet, wenn Daten von dem zweiten Register 32 an das erste Register 30 übergeben werden, bzw. als R1-2 bezeichnet, wenn Daten von dem ersten Register 30 an das zweite Register 32 übergeben werden. Eine der von der Steu­ ereinheit 16 kommenden Steuerleitung 22 ist mit dem zweiten Register 32 zu dessen Steuerung verbunden, während eine andere Steuerleitung 22 mit dem ersten Register 30 zu dessen Steuerung verbunden ist.
Eine von Paul Köcher im Internet unter http://www.cryptography.com/dpa veröffentlichte "Differential Power Analysis" hat den Ansatz, dass neben den Ein/Ausgangssignalen zusätzlich eine Stromaufnahme Ia bzw. Span­ nungseinbrüche ΔUa einer Versorgungsspannung Ua der integrierten Schaltung analysiert werden. Der Erfolg dieser Analysemethode hängt davon ab, ob man eine Anzahl NA von analogen (Ia(t) oder ΔUa(t)) Signal­ verläufen S(k,t) über die Zeit mit k = {1, . . ., NA} unterschiedlichen Operanden derart aufnehmen kann, dass eine Summenbildung der Form
mit den Koeffizienten p(i,k) mit i = {0, 1, 2, . . .} möglich ist. Betrachtet man unterschiedliche Signalverläufe S(k1,t1), S(k2,t1), S(k3,t1). . . zum gleichen Zeitpunkt t = t1, kann eine "Differential Power Analysis" nur funktionieren, wenn die integrierte Schaltung in diesem Moment die gleiche Rechenope­ ration mit unterschiedlichen Operanden k = {1, . . ., NA} ausführt, d. h. die Si­ gnalverläufe S(k,t) müssen genau übereinandergelegt werden können. Dieses gilt nicht nur für die Berechnung selbst, sondern auch für die Ein- und Ausgabe von Daten.
Die Erfindung verschleiert sowohl die Zeitbereiche, der eigentlichen Be­ rechnung als auch die Zeitbereiche der Datenein- bzw. Datenausgabe. Bei geeigneter Ansteuerung des zweiten Registers 32 kann von außen nicht mehr festgestellt werden, wann eine wirkliche Berechnung oder eine Ein-/Ausgabe stattfindet. Die "Differential Power Analysis" wird somit er­ heblich erschwert. Die integrierte Schaltung 10 ist erfindungsgemäß mit den beiden Operandenregistern 30 und 32 ausgestattet. Diese erlauben eine Ein- und Ausgabe von Daten über das zweite Operandenregister 32 mit dessen Dateneingängen 24 und Datenausgängen 26 auch während das Rechenwerk 28 unter Nutzung des ersten Operandenregisters 30 ak­ tiv ist und Berechnungen bzw. Operationen ausführt.
Fig. 4 veranschaulicht eine Betriebsweise der erfindungsgemäßen Daten­ verarbeitungseinrichtung 100, wobei über eine Zeitachse 34 das Taktsi­ gnal 20 und ein Betriebszustand von Rechenwerk bzw. Operandenregi­ stern angegeben ist. Hierbei bezeichnet 36 einen Betriebszustand, bei dem das Rechenwerk eine Berechnung ausführt. Mit 38 ist ein Betriebs­ zustand bezeichnet, bei dem eine Datenein- bzw. Datenausgabe stattfin­ det, mit 40 ist ein Betriebszustand bezeichnet, bei dem eine Datenüber­ gabe R1-2 stattfindet und mit 42 ist ein Betriebszustand bezeichnet, bei dem eine Datenübergabe R2-1 stattfindet.
Fig. 3 veranschaulicht in einer zu Fig. 3 analogen Darstellung zum Ver­ gleich eine Betriebsweise einer herkömmlichen Datenverarbeitungsein­ richtung. Hier sind die Ein- bzw. Ausgabephasen 38 der eigentlichen Be­ rechnung 36 zeitlich vor- bzw. nachgeschaltet. Bei der "Differential Power Analysis" können die Phasen der Berechnungen 36 und der Ein-/Ausgabe 38 leicht identifiziert werden, insbesondere welche Eingaben 38 bei einer Berechnung 40 Verwendung finden und welche Ausgaben 38 die Folge sind.
Bei der in Fig. 4 dargestellten, erfindungsgemäßen Betriebsweise werden mittels der Steuereinheit 16 die Berechnungen 36 sowie die Datenein-/­ -ausgaben 38, 40, 42 dadurch verschleiert, dass der Datenfluss der beiden Operandenregister 30, 32 zeitlich parallel zu den Berechnungen 36 ge­ steuert wird. Berechnungen 36 finden immer statt. Ob aber eine Berech­ nung 40 von der Eingabe 38 abhängt oder eine Ausgabe 38 liefert, wird durch die Kopieraktionen R1-2 40 und R2-1 42 bestimmt. Die Berechnun­ gen vor R2-1 42 bzw. nach R1-2 40 sind beispielsweise Dummyberech­ nungen. Dummyrechenoperationen sind solche Rechenoperationen, wel­ che vorbestimmte oder zufällig gewählte Eingangsdaten bearbeiten, wobei das Ergebnis verworfen wird und nicht in die Ergebnisse bzw. Eingangs­ daten der wirklichen Rechenoperationen eingehen. Zusätzliche Dum­ myein-/-ausgaben sind ferner optional vorgesehen. Sowohl die Dummybe­ rechnungen als auch die Dummyeingaben/Dummyausgaben erzeugen Strom- bzw. Spannungsänderungen, welche denen der wirklichen Be­ rechnungen und Ein-/Ausgaben sehr ähnlich sind.
Die erfindungsgemäß zum Schutz der integrierten Schaltungsteile 10 ge­ gen "Differential Power Analysis" vorgesehene Steuereinheit 16 zielt spe­ ziell auf die Ein-/Ausgabephasen 38, 40, 42 einer in den integrierten Schaltungsteilen 10 mit Hilfe digitaler, elektronischer Signalverarbeitung durchzuführenden Berechnungen 36 ab, da auch Ein-/Ausgaben anhand des Stromverbrauches mittels der "Differential Power Analysis" analysiert werden könnten. Entsprechend ist bei der "Differential Power Analysis" von Interesse, wann eine Berechnung 36 beginnt oder endet. Genau die­ se Informationen werden von dem erfindungsgemäßen Verfahren bzw. bei der erfindungsgemäßen Vorrichtung im Stromverbrauchssignal unter­ drückt.
Bezugszeichenliste
100
Datenverarbeitungseinrichtung
10
integrierte Schaltung
12
Register
14
Programmzugriff
16
Steuereinheit
18
Leitung
20
Taktsignal
22
Steuerleitungen
24
Dateneingänge
26
Datenausgänge
28
Rechenwerk
30
erstes Operandenregister R1
32
zweites Operandenregister R2
34
Zeitachse
36
Berechnung
38
Datenein- bzw. Datenausgabe
40
Datenübergabe R1-2
42
Datenübergabe R2-1

Claims (4)

1. Verfahren zum Betreiben einer Datenverarbeitungseinrichtung (100), insbesondere einer Chipkarte, mit einer integrierten Schal­ tung (10), welche in Abhängigkeit von einem Taktsignal Re­ chenoperationen, insbesondere kryptographische Operationen, Datenein- bzw. -ausgaben (38) sowie eine Datenübergabe (40) von bzw. zu Registern der integrierten Schaltung (10) ausführt, dadurch gekennzeichnet, dass die integrierte Schaltung (10) derart gesteuert wird, dass das Aus­ führen von Rechenoperationen einerseits und die Datenein-/­ -ausgabe (38) sowie die Datenübergabe (40) von Register zu Regi­ ster bzw. zwischen Registern (30, 32) andererseits zeitlich parallel durchgeführt wird.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass unmittelbar vor, während und/oder unmittelbar nach der Daten­ übergabe von Register zu Register bzw. zwischen den Registern (30, 32) der integrierten Schaltung Dummyberechnungen von ei­ nem Rechenwerk (28) der integrierten Schaltung (10) ausgeführt werden, welche zufällige oder vorbestimmte Daten bearbeiten, wo­ bei keine Daten in Register (30, 32) der integrierten Schaltung ge­ schrieben werden.
3. Datenverarbeitungseinrichtung (100), insbesondere Chipkarte, ins­ besondere zum Ausführen eines Verfahrens gemäß wenigstens ei­ nem der vorhergehenden Ansprüche, mit einer integrierten Schal­ tung (10), welche in Abhängigkeit von einem Taktsignal (20) Re­ chenoperationen, insbesondere kryptographische Operationen, ausführt, wobei die integrierte Schaltung (10) ein Rechenwerk (28) mit zugeordnetem ersten Register (30) und Datenein- und -ausgänge (24, 26) aufweist, dadurch gekennzeichnet, dass ein mit dem ersten Register (30) verbundenes zweites Register (32) vorgesehen ist, welches die Datenein- und -ausgänge (24, 26) auf­ weist, wobei ferner eine Steuereinheit (16) mit der integrierten Schaltung (10) verbunden ist, welche derart ausgebildet ist, dass sie einen zeitlich parallelen Betrieb der Register (30, 32) zur Daten­ ein-/-ausgabe (38) und Datenübergabe (40) von Register zu Regi­ ster bzw. zwischen den Registern (30, 32) einerseits und Re­ chenoperationen (40) der Recheneinheit (28) andererseits steuert.
4. Datenverarbeitungseinrichtung (100) nach Anspruch 3, dadurch gekennzeichnet, dass das erste Register (30) ein Operandenregister des Rechenwerkes (28) und/oder das zweite Register (32) ein Operandenregister der Datenein-/-ausgabe (38) ist.
DE19936939A 1998-09-30 1999-08-05 Datenverarbeitungseinrichtung und Verfahren zu dessen Betrieb zum Verhindern einer differentiellen Stromverbrauchanalyse Withdrawn DE19936939A1 (de)

Priority Applications (6)

Application Number Priority Date Filing Date Title
DE19936939A DE19936939A1 (de) 1998-09-30 1999-08-05 Datenverarbeitungseinrichtung und Verfahren zu dessen Betrieb zum Verhindern einer differentiellen Stromverbrauchanalyse
EP99947401A EP1046142B1 (de) 1998-09-30 1999-09-21 Datenverarbeitungseinrichtung und verfahren zu dessen betrieb zum verhindern einer differentiellen stromverbrauchanalyse
PCT/EP1999/007026 WO2000019386A1 (de) 1998-09-30 1999-09-21 Datenverarbeitungseinrichtung und verfahren zu dessen betrieb zum verhindern einer differentiellen stromverbrauchanalyse
AT99947401T ATE310293T1 (de) 1998-09-30 1999-09-21 Datenverarbeitungseinrichtung und verfahren zu dessen betrieb zum verhindern einer differentiellen stromverbrauchanalyse
JP2000572811A JP2002526797A (ja) 1998-09-30 1999-09-21 微分電流消費解析を防止するデータ処理装置およびこの装置の動作方法
DE59912804T DE59912804D1 (de) 1998-09-30 1999-09-21 Datenverarbeitungseinrichtung und verfahren zu dessen betrieb zum verhindern einer differentiellen stromverbrauchanalyse

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE19844992 1998-09-30
DE19936939A DE19936939A1 (de) 1998-09-30 1999-08-05 Datenverarbeitungseinrichtung und Verfahren zu dessen Betrieb zum Verhindern einer differentiellen Stromverbrauchanalyse

Publications (1)

Publication Number Publication Date
DE19936939A1 true DE19936939A1 (de) 2000-04-06

Family

ID=7882891

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19936939A Withdrawn DE19936939A1 (de) 1998-09-30 1999-08-05 Datenverarbeitungseinrichtung und Verfahren zu dessen Betrieb zum Verhindern einer differentiellen Stromverbrauchanalyse

Country Status (1)

Country Link
DE (1) DE19936939A1 (de)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1158384A1 (de) * 2000-05-22 2001-11-28 Infineon Technologies AG Sicherheits-Datenverarbeitungseinheit sowie dazugehöriges Verfahren
DE10101956A1 (de) * 2001-01-17 2002-07-25 Infineon Technologies Ag Verfahren zur Erhöhung der Sicherheit einer CPU
FR2831739A1 (fr) * 2001-10-31 2003-05-02 Gemplus Card Int Procede de mise en oeuvre securisee d'un module fonctionnel, dans un composant electronique et composant correspondant
WO2005124506A3 (en) * 2004-06-08 2006-05-11 Hrl Lab Llc Cryptographic architecture with instruction masking and other techniques for thwarting differential power analysis
EP1873671A1 (de) 2006-06-29 2008-01-02 Incard SA Verfahren zum Schutz von IC-Karten vor Leistungsanalyse-Attacken

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7412608B2 (en) 2000-05-22 2008-08-12 Infineon Technologies Ag Secure data processing unit, and an associated method
WO2001090854A1 (de) * 2000-05-22 2001-11-29 Infineon Technologies Ag Sicherheits-datenverarbeitungseinheit sowie dazugehöriges verfahren
EP1496420A1 (de) * 2000-05-22 2005-01-12 Infineon Technologies AG Sicherheits-Datenverarbeitungseinheit sowie dazugehöriges Verfahren
EP1158384A1 (de) * 2000-05-22 2001-11-28 Infineon Technologies AG Sicherheits-Datenverarbeitungseinheit sowie dazugehöriges Verfahren
DE10101956A1 (de) * 2001-01-17 2002-07-25 Infineon Technologies Ag Verfahren zur Erhöhung der Sicherheit einer CPU
WO2002057905A1 (de) * 2001-01-17 2002-07-25 Infineon Technologies Ag Verfahren zur erhöhung der sicherheit einer cpu
FR2831739A1 (fr) * 2001-10-31 2003-05-02 Gemplus Card Int Procede de mise en oeuvre securisee d'un module fonctionnel, dans un composant electronique et composant correspondant
US8065532B2 (en) 2004-06-08 2011-11-22 Hrl Laboratories, Llc Cryptographic architecture with random instruction masking to thwart differential power analysis
GB2430515A (en) * 2004-06-08 2007-03-28 Hrl Lab Llc Cryptographic architecture with instruction masking and other techniques for thwarting differential power analysis
GB2430515B (en) * 2004-06-08 2008-08-20 Hrl Lab Llc A cryptographic CPU architecture for thwarting differential power analysis
US7949883B2 (en) 2004-06-08 2011-05-24 Hrl Laboratories, Llc Cryptographic CPU architecture with random instruction masking to thwart differential power analysis
WO2005124506A3 (en) * 2004-06-08 2006-05-11 Hrl Lab Llc Cryptographic architecture with instruction masking and other techniques for thwarting differential power analysis
US8095993B2 (en) 2004-06-08 2012-01-10 Hrl Laboratories, Llc Cryptographic architecture with instruction masking and other techniques for thwarting differential power analysis
US8296577B2 (en) 2004-06-08 2012-10-23 Hrl Laboratories, Llc Cryptographic bus architecture for the prevention of differential power analysis
EP1873671A1 (de) 2006-06-29 2008-01-02 Incard SA Verfahren zum Schutz von IC-Karten vor Leistungsanalyse-Attacken
US8804949B2 (en) 2006-06-29 2014-08-12 Stmicroelectronics International N.V. Method for protecting IC cards against power analysis attacks

Similar Documents

Publication Publication Date Title
DE10136335B4 (de) Prozessor mit mehreren Rechenwerken
DE10000503A1 (de) Datenverarbeitungseinrichtung und Verfahren zu dessen Betrieb
DE10061997A1 (de) Kryptographieprozessor
EP1044426B1 (de) Datenverarbeitungseinrichtung und verfahren zu deren spannungsversorgung
DE102005058238B4 (de) Detektorschaltung zur Erfassung einer externen Manipulation einer elektrischen Schaltung sowie Verfahren zum Betreiben einer Schaltungsanordnung, bei dem externe Manipulation erfasst werden
EP1158384A1 (de) Sicherheits-Datenverarbeitungseinheit sowie dazugehöriges Verfahren
DE102004061312B4 (de) Vorrichtung und Verfahren zum Detektieren eines potentiellen Angriffs auf eine kryptographische Berechnung
EP1046142B1 (de) Datenverarbeitungseinrichtung und verfahren zu dessen betrieb zum verhindern einer differentiellen stromverbrauchanalyse
DE19936938A1 (de) Datenverarbeitungseinrichtung und Verfahren zu dessen Betrieb zum Verhindern einer differentiellen Stromverbrauchanalyse
EP1046131B1 (de) Datenverarbeitungseinrichtung und verfahren zu dessen betrieb zum verhindern einer differentiellen stromverbrauchanalyse
DE102012015913A1 (de) Vorrichtungsanordnung zur Durchführung oder Freigabe eines elektronischen Diensts, Elektronikmodul für eine solche Vorrichtungsanordnung und Verfahren zum sicheren Eingeben von Autorisierungsdaten
DE102004009144A1 (de) Schaltung
EP1080400B1 (de) Verfahren und vorrichtung zum verarbeiten von daten
EP1118924B1 (de) Verfahren zum betrieb einer mikroprozessoranordnung und mikroprozessoranordnung
DE102006035610B4 (de) Speicherzugriffssteuerung und Verfahren zur Speicherzugriffssteuerung
EP0321728B1 (de) Verfahren und Datenträgeranordnung zur Echtheitserkennung von Speicherchips
DE19960047B4 (de) Verfahren und Einheit zur sicheren Informationsbehandlung in einem kryptographischen Informationsverarbeitungssystem
DE102005057104A1 (de) Smartcard und Steuerverfahren hierfür
DE10130099B4 (de) Challenge-Response-Vorrichtung, Authentifikationssystem, Verfahren zum Erzeugen eines Response-Signals aus einem Challenge-Signal und Verfahren zur Authentifikation
DE19936890A1 (de) Verschlüsselungsverfahren zum Ausführen von kryptographischen Operationen
DE19822218B4 (de) Zugriffsgeschützter Datenträger
DE19936919A1 (de) Datenverarbeitungseinrichtung und Verfahren zu deren Spannungsversorgung
DE10129241B4 (de) Multifunktionaler Rechner
WO2000019657A1 (de) Verschlüsselungsverfahren zum ausführen von kryptographischen operationen
EP1039422B1 (de) Prüfung der Echtheit eines tragbaren Datenträgers

Legal Events

Date Code Title Description
8127 New person/name/address of the applicant

Owner name: PHILIPS INTELLECTUAL PROPERTY & STANDARDS GMBH, 20

8141 Disposal/no request for examination