DE19936938A1 - 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
DE19936938A1
DE19936938A1 DE19936938A DE19936938A DE19936938A1 DE 19936938 A1 DE19936938 A1 DE 19936938A1 DE 19936938 A DE19936938 A DE 19936938A DE 19936938 A DE19936938 A DE 19936938A DE 19936938 A1 DE19936938 A1 DE 19936938A1
Authority
DE
Germany
Prior art keywords
integrated circuit
data processing
processing device
operations
clock
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
DE19936938A
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 DE19936938A priority Critical patent/DE19936938A1/de
Priority to EP99948823A priority patent/EP1046131B1/de
Priority to DE59914806T priority patent/DE59914806D1/de
Priority to PCT/EP1999/007025 priority patent/WO2000019367A1/de
Priority to KR1020007005809A priority patent/KR100718352B1/ko
Priority to JP2000572793A priority patent/JP2002526840A/ja
Priority to AT99948823T priority patent/ATE401624T1/de
Publication of DE19936938A1 publication Critical patent/DE19936938A1/de
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/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
    • 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
    • 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
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)
  • Recording Measured Values (AREA)
  • Transmission And Conversion Of Sensor Element Output (AREA)
  • Crushing And Grinding (AREA)
  • Semiconductor Integrated Circuits (AREA)

Abstract

Die vorliegende Erfindung betrifft eine Datenverarbeitungseinrichtung (100) sowie ein Verfahren zum Betreiben einer Datenverarbeitungseinrichtung, insbesondere einer Chipkarte, mit einer integrierten Schaltung (10), welche in Abhängigkeit von einem ersten Taktsignal Nutzrechenoperationen, insbesodere kryptographische Operationen, ausführt. Hierbei wird aus dem ersten Taktsignal zufallsgesteuert ein zweites Taktsignal abgeleitet und statt des ersten Taktsignals der integrierten Schaltung (10) zugeführt, wobei Abstände zwischen Taktflanken des zweiten Taktsignals zufällig über die Zeit variieren. Dazu ist eine mit der integrierten Schaltung (10) verbundene Taktsteuereinheit (14) sowie ein mit der Taktsteuereinheit (14) verbundener Zufallsgenerator (12) vorgesehen, wobei die Taktsteuereinheit (14) derart ausgebildet ist, dass sie in Abhängigkeit vom Zufallsgenerator (12) un dem ersten Taktsignal (18) ein zweites Taktsignal (20) erzeugt, welches zufällig variiert und die integrierte Schaltung (10) ansteuert.

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 ersten Taktsignal Nutzre­ chenoperationen, insbesondere kryptographische Operationen, ausführt, gemäß dem Oberbegriff des Anspruchs 1. Die Erfindung betrifft ferner eine Datenverarbeitungseinrichtung, insbesondere Chipkarte, insbesonde­ re zum Ausführen des Verfahrens, mit einer integrierten Schaltung, wel­ che in Abhängigkeit von einem ersten Taktsignal Nutzrechenoperationen, insbesondere kryptographische Operationen, ausführt, gemäß dem Ober­ begriff des Anspruchs 6.
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 4 813 024 ist eine integrierte Schaltung zum Speichern und Verarbeiten geheimer Daten bekannt, wobei ein Speicher eine Simulati­ onsspeicherzelle aufweist, welche einen identischen Stromverbrauch auf­ weist wie eine Speicherzelle, die bisher nicht programmiert wurde. Hier­ durch werden Schwankungen in Strom und Spannung größtenteils aber nicht ganz eliminiert. Dieses System ist auch aufwendig und kosteninten­ siv.
Bei einer aus der EP 0 482 975 B1 bekannten Speicherkarte mit Mi­ kroschaltung und wenigstens einem Speicher, die an einem Datenverar­ beitungsorgan angeschlossen ist, wobei das Datenverarbeitungsorgan von einem Datensignal von außerhalb der Karte gesteuert wird und als Antwort auf dieses Datensignal zu einem Zeitpunkt ein Befehlsendesignal abgibt, welches um eine vorbestimmte Dauer (T) bzgl. des Empfangs des Datensignals verzögert ist, wird zum Erhöhen des Schutzes die Zeitdauer (T) auf Zufallsbasis zeitlich variabel gewählt. Auf diese Weise unterliegt eine Zeitspanne zwischen einem Empfang eines externen Signals und einer Anwort einem Zufallsgenerator und ist nicht zur Auswertung zum Erhalten von geheimen Daten geeignet. Eine Kryptoanalyse auf der Basis einer Stromänderung beim Beschreiben des Speichers bzw. bei Durchfüh­ ren von Rechenoperationen kann dieses System jedoch nicht verhindern.
Aus der EP 0 507 669 A1 ist es bei einer Karte für elektronische Zahlung, einer sogen. Paycard, bekannt, jede Bezahleinheit nicht mit einem einzi­ gen Bit sondern mit mehreren Bits zu besetzen, wobei die zusätzlichen Bits in einer Zufallsreihe die Bezahleinheiten durchnumerieren und von einer Zufallszahlenreihe abgeleitet sind. Diese Zufallszahlenreihe steht Verkäufern, welche eine Paycard akzeptieren, zur Verfügung. Auch dieses System kann jedoch eine Kryptoanalyse auf der Basis einer Stromände­ rung beim Beschreiben des Speichers bzw. bei Durchführen von Re­ chenoperationen nicht verhindern.
Die FR 2 693 014 B1 beschreibt eine Vorrichtung zum Auswerten von Chipkarten, wie beispielsweise eine öffentliche Telefonzelle, welche mit­ tels einer Kapazitätsmessung feststellt, ob an eine eingeschobene Chip­ karte externe Geräte angeschlossen sind.
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 6 gekennzeichneten Merkmalen gelöst.
Dazu ist es bei dem Verfahren der o. g. Art erfindungsgemäß vorgesehen, dass aus dem ersten Taktsignal zufallsgesteuert ein zweites Taktsignal abgeleitet und statt des ersten Taktsignals der integrierten Schaltung zu­ geführt wird, wobei Abstände zwischen Taktflanken des zweiten Taktsi­ gnals zufällig über die Zeit variieren.
Dies hat den Vorteil, dass ein zeitlicher Ablauf von Nutzrechenoperationen unabhängig von in der Datenverarbeitungseinrichtung bearbeiteten Daten verzerrt wird, so dass ein bzgl. der Nutzrechenoperationen charakteristi­ scher Anteil in einem Stromverbrauch der integrierten Schaltung ver­ schleiert wird und mittels einer "Differential Power Analysis" nicht mehr analysierbar ist.
Vorzugsweise Weitergestaltungen des Verfahrens sind in den Ansprüchen 2 bis 5 beschrieben.
Zur weiteren Verschleierung eines charakteristischen Anteiles im Strom­ verbrauch der integrierten Schaltung von Berechnung bzw. Nutzoperatio­ nen der integrierten Schaltung wird die integrierte Schaltung zufallsge­ steuert in verschiedene Betriebsarten geschaltet.
Zum Verhindern einer Wiederholbarkeit des charakteristischen Anteils im Stromverbrauch von identischen Nutzoperationen umfassen die verschie­ denen Betriebsarten wenigstens zwei Berechnungsmethoden, welche auf verschiedenen Berechnungswegen ein identisches Ergebnis erhalten.
Zur weiteren Verschleierung von Art und Zeitpunkt der Nutzrechenopera­ tionen umfassen die verschiedenen Betriebsarten wenigstens eine Be­ triebsart "Dummy", bei der von der integrierten Schaltung keine Nutzope­ rationen sondern Dummyrechenoperationen durchgeführt werden, welche vorbestimmte oder zufällig gewählte Eingangsdaten bearbeiten, wobei das Ergebnis verworfen wird und nicht in die Ergebnisse bzw. Eingangsdaten der Nutzrechenoperationen eingehen. Optional ist zusätzlich eine Be­ triebsart "Deaktiviert" vorgesehen, bei der von der integrierten Schaltung keine Rechenoperationen ausgeführt werden.
Bei einer Datenverarbeitungseinrichtung der o. g. Art ist es erfindungsge­ mäß vorgesehen, dass eine mit der integrierten Schaltung verbundene Taktsteuereinheit sowie ein mit der Taktsteuereinheit verbundener Zu­ fallsgenerator vorgesehen ist, wobei die Taktsteuereinheit derart ausge­ bildet ist, dass sie in Abhängigkeit vom Zufallsgenerator und dem ersten Taktsignal ein zweites Taktsignal erzeugt, welches zufällig variiert und die integrierte Schaltung ansteuert.
Dies hat den Vorteil, dass ein zeitlicher Ablauf von Nutzrechenoperationen unabhängig von in der Datenverarbeitungseinrichtung bearbeiteten Daten verzerrt wird, so dass ein bzgl. der Nutzrechenoperationen charakteristi­ scher Anteil in einem Stromverbrauch der integrierten Schaltung ver­ schleiert wird und mittels einer "Differential Power Analysis" nicht mehr analysierbar ist.
Vorzugsweise Weitergestaltungen der Datenverarbeitungseinrichtung sind in den Ansprüchen 7 bis 10 beschrieben.
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 bevorzugte Ausführungsform einer erfindungsgemäßen Datenverarbeitungseinrichtung und
Fig. 2 eine graphische Veranschaulichung verschiedener in der Da­ tenverarbeitungseinrichtung erzeugter und verwendeter Si­ gnale.
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 Zufallsgenerator 12 und einer Taktsteuereinheit 14. Die integrierten Schaltung 10 führt nachfolgend näher spezifizierte Nutzrechenoperationen aus. Nutzrechenoperationen sind solche Rechenoperationen, welche Ein­ gangsdaten in gewünschter Weise bearbeiten und ein gewünschtes Er­ gebnis bzw. Zwischenergebnis erzielen. Ein Beispiel hierfür ist eine vorbe­ stimmte Rechenmethode mit kryptographischen Operationen in dedizier­ ten Crypto-Rechenwerken. Diese vorbestimmte Rechenmethode wird nachfolgend als Methode 1 bzw. erste Betriebsart bezeichnet.
Fig. 2 veranschaulicht übereinander verschiedene in der Datenverarbei­ tungseinrichtung 100 erzeugte und verwendete Signale über die Zeit t, welche über einer horizontalen Achse 16 aufgetragen sind 18 ist ein Si­ gnal TAKT1, welches über eine Leitung 19 die Taktsteuereinheit 14 steu­ ert. Mit 20 ist ein Signal TAKT2 bezeichnet, welches von der Taktsteuer­ einheit 14 erzeugt und über eine Leitung 21 an die integrierte Schaltung 10 ausgegeben wird. 22 ist ein Signal DUMMY, mit 24 ein Signal DEAKT und mit 26 ist ein Signal ALT bezeichnet, welche über Steuerleitungen 28 von der Taktsteuereinheit 14 an die integrierte Schaltung 10 zum Steuern derselben abgegeben werden. In einer zusätzlichen Zeile 29 ist angege­ ben, in welcher Betriebsart die integrierte Schaltung 10 gesteuert von der Taktsteuereinheit 14 gerade arbeitet. Hierbei steht 30 für eine Betriebsart "Methode 1", 32 für eine Betriebsart "Dummy", 34 für eine Betriebsart "Methode 2" und 36 für eine Betriebsart "Deaktiviert". Nachfolgend werden diese Betriebsarten 30, 32, 34 und 36 und ihre Funktion näher erläutert.
Eine von Paul Kocher 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, . . ., 2} 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,t0, 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 verhindert das "Übereinanderlegen", indem die integrierte Schaltung 10 durch die zufallsgesteuerte Taktsteuereinheit 14 betrieben wird. Darüber hinaus verfügt die integrierte Schaltung neben der Betriebs­ art "Methode 1" 30 über die Betriebsart "Dummy" 32, in der nachfolgend näher spezifizierte Dummyrechenoperationen ausgeführt werden, die Be­ triebsart "Deaktiviert" 36, in der von der integrierten Schaltung 10 keine Rechenoperationen ausgeführt und bisherige Resultate bzw. Zwischener­ gebnisse ggf. gespeichert werden, und die Betriebsart "Methode 2" 34, in der die Nutzrechenoperationen von "Methode 1" 30 mit einem alternativen Verfahren ausgeführt werden, wobei sich das Ergebnis nicht von der er­ sten Betriebsart "Methode 1" 30 unterscheidet sondern lediglich anders gerechnet wird, so dass sich bei "Methode 2" 34 im Vergleich mit "Metho­ de 1" 30 ein anderer Verlauf des Eingangsstromes Ia bzw. von Span­ nungsänderungen ΔUa der integrierten Schaltung 10 bei gleichem Ope­ randen k ergibt.
Dummyrechenoperationen sind solche Rechenoperationen, welche vor­ bestimmte oder zufällig gewählte Eingangsdaten bearbeiten, wobei das Ergebnis verworfen wird und nicht in die Ergebnisse bzw. Eingangsdaten der Nutzrechenoperationen eingehen.
Die Taktsteuereinheit 14 wird über Leitung 19 durch das Signal TAKT1 18 sowie von dem Zufallsgenerator 12 über Leitung 38 gesteuert. Die Takt­ steuereinheit 14 generiert aus TAKT1 18 und dem Eingang von Leitung 38 ein zufälliges Taktsignal TAKT2 20, welches die Zeitachse 16 in S(k,t) un­ abhängig von in der integrierten Schaltung 10 gerechneten Daten verzerrt. Hierdurch ist die o. g. Summenbildung der "Differential Power Analysis" nicht mehr mit dem gewünschten Ergebnis durchführbar.
Ferner werden von einer Taktflanke bis zu einer später folgenden Takt­ flanke auf die Steuerleitungen 28 in Abhängigkeit vom Zufallsgenerator die Steuersignale DUMMY 22, DEAKT 24 und ALT 26 in der in Fig. 2 dar­ gestellten Weise gesetzt. Bei dem Signal DUMMY 22 befindet sich die integrierte Schaltung 10 in der Betriebsart "Dummy" 32, bei dem Signal DEAKT 24 befindet sich die integrierte Schaltung 10 in der Betriebsart Deaktiviert 36, bei dem Signal ALT 26 befindet sich die integrierte Schal­ tung 10 in der Betriebsart "Methode 2" 34 und bei keinem Signal auf den Steuerleitungen 28 befindet sich die integrierte Schaltung 10 in der Be­ triebsart "Methode 1" 30, wie aus der die Betriebsarten angebenden Zeile 29 in Fig. 2 ersichtlich.
Die Betriebsart "Dummy" 32 verschleiert die eigentliche Berechnung S(k,t). Ggf. sind mehrere verschiedene Betriebsarten "Dummy n" mit ent­ sprechenden verschiedenen Signalen "DUMMY n" vorgesehen. Beson­ ders vorteilhaft ist hier, dass Zeitpunkt und Dauer der Dummysignale nicht von der zu schützenden integrierten Schaltung 10 selbst sondern durch die externen Einrichtungen Zufallsgenerator 12 und Taktsteuereinheit 14 bestimmt werden. In der Betriebsart "Deaktiviert" 36 wird die Zeitachse 16 weiter zusätzlich verzerrt, so dass die o. g. Summenbildung der "Differenti­ al Power Analysis" zusätzlich erschwert bzw. unmöglich wird. In der Be­ triebsart "Methode 2" 34 erfolgt eine weitere Verschleierung der Berech­ nung, so dass die Berechnung S(k,t) schlecht identifizierbar ist. Ggf. sind weitere unterschiedliche Betriebsarten mit anderem Berechnungsweg "Methode n" vorgesehen, jeweils zugehörigen Signalen "ALT n".
Zusammenfassend wird erfindungsgemäß ein charakteristischer Anteil des Stromverbrauchs der integrierten Schaltung 10 nicht eliminiert son­ dern verschleiert. Hierzu werden flexibel verschiedene Verschleierungs­ methoden mittels der Taktsteuereinheit 14 miteinander kombiniert. Teil­ weise werden durch Dummyberechnungen Dummysignale generiert, wel­ che von außen als solche nicht erkennbar sind, da sie zufällig erzeugt werden.
Bezugszeichenliste
100
Datenverarbeitungseinrichtung
10
integrierte Schaltung
12
Zufallsgenerator
14
Taktsteuereinheit
16
horizontalen Achse t
18
Signal TAKT1
19
Leitung
20
Signal TAKT2
21
Leitung
22
Signal DUMMY
24
Signal DEAKT,
26
Signal ALT
28
Steuerleitungen
29
Zeile Betriebsarten
30
Betriebsart "Methode 1"
32
Betriebsart "Dummy"
34
Betriebsart "Methode 2"
36
Betriebsart "Deaktiviert"
38
Leitung

Claims (11)

1. Verfahren zum Betreiben einer Datenverarbeitungseinrichtung (100), insbesondere einer Chipkarte, mit einer integrierten Schal­ tung (10), welche in Abhängigkeit von einem ersten Taktsignal Nutzrechenoperationen, insbesondere kryptographische Operatio­ nen, ausführt, dadurch gekennzeichnet, dass aus dem ersten Taktsignal zufallsgesteuert ein zweites Taktsignal abgeleitet und statt des ersten Taktsignals der integrierten Schal­ tung (10) zugeführt wird, wobei Abstände zwischen Taktflanken des zweiten Taktsignals zufällig über die Zeit variieren.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die integrierte Schaltung (10) zufallsgesteuert in verschiedene Be­ triebsarten geschaltet wird.
3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, dass die verschiedenen Betriebsarten wenigstens zwei Berechnungs­ methoden umfassen, welche auf verschiedenen Berechnungswe­ gen ein identisches Ergebnis erhalten.
4. Verfahren nach einem der Ansprüche 2 oder 3, dadurch gekennzeichnet, dass die verschiedenen Betriebsarten wenigstens eine Betriebsart "Dummy" (32) umfassen, bei der von der integrierten Schaltung (10) keine Nutzoperationen sondern Dummyrechenoperationen durchgeführt werden, welche vorbestimmte oder zufällig gewählte Eingangsdaten bearbeiten, wobei das Ergebnis verworfen wird und nicht in die Ergebnisse bzw. Eingangsdaten der Nutzrechenopera­ tionen eingehen.
5. Verfahren nach einem der Ansprüche 2 bis 4, dadurch gekennzeichnet, dass die verschiedenen Betriebsarten eine Betriebsart "Deaktiviert" (36) umfassen, bei der von der integrierten Schaltung (10) keine Re­ chenoperationen ausgeführt werden.
6. 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 ersten Taktsignal (18) Nutzrechenoperationen, insbesondere kryptographische Operatio­ nen, ausführt, dadurch gekennzeichnet, dass eine mit der integrierten Schaltung (10) verbundene Taktsteuerein­ heit (14) sowie ein mit der Taktsteuereinheit (14) verbundener Zu­ fallsgenerator (12) vorgesehen ist, wobei die Taktsteuereinheit (14) derart ausgebildet ist, dass sie in Abhängigkeit vom Zufallsgenera­ tor (12) und dem ersten Taktsignal (18) ein zweites Taktsignal (20) erzeugt, welches zufällig variiert und die integrierte Schaltung (10) ansteuert.
7. Datenverarbeitungseinrichtung (100) nach Anspruch 6, dadurch gekennzeichnet, dass die Taktsteuereinheit (14) derart ausgebildet ist, dass sie in Abhän­ gigkeit vom Zufallsgenerator (12) die integrierte Schaltung (10) über Steuerleitungen (28) zufallsgesteuert in verschiedene Betriebsarten (30, 32, 34, 36) schaltet.
8. Datenverarbeitungseinrichtung (100) nach Anspruch 7, dadurch gekennzeichnet, dass die verschiedenen Betriebsarten (30, 32, 34, 36) wenigstens zwei Berechnungsmethoden (30, 34) umfassen, welche auf verschiede­ nen Berechnungswegen ein identisches Ergebnis erhalten.
9. Datenverarbeitungseinrichtung (100) nach einem der Ansprüche 7 oder 8, dadurch gekennzeichnet, dass die verschiedenen Betriebsarten (30, 32, 34, 36) wenigstens eine Betriebsart "Dummy" (32) umfassen, bei der die integrierte Schal­ tung (10) keine Nutzoperationen sondern Dummyrechenoperatio­ nen durchführt, welche vorbestimmte oder zufällig gewählte Ein­ gangsdaten bearbeiten, wobei das Ergebnis nicht in Ergebnisse bzw. Eingangsdaten der Nutzrechenoperationen eingehen.
10. Datenverarbeitungseinrichtung (100) nach einem der Ansprüche 7 bis 9, dadurch gekennzeichnet, dass die verschiedenen Betriebsarten (30, 32, 34, 36) eine Betriebsart "Deaktiviert" (36) umfassen, bei der die integrierten Schaltung (10) keine Rechenoperationen ausführt.
11. Datenverarbeitungseinrichtung (100) nach einem der Ansprüche 7 bis 10, dadurch gekennzeichnet, dass mindestens bei einer weiteren Betriebsart die Zeitachse (16) weiter zusätzlich verzerrt wird, so dass die Summenbildung der "Differen­ tial Power Analysis" zusätzlich erschwert bzw. unmöglich wird.
DE19936938A 1998-09-30 1999-08-05 Datenverarbeitungseinrichtung und Verfahren zu dessen Betrieb zum Verhindern einer differentiellen Stromverbrauchanalyse Withdrawn DE19936938A1 (de)

Priority Applications (7)

Application Number Priority Date Filing Date Title
DE19936938A DE19936938A1 (de) 1998-09-30 1999-08-05 Datenverarbeitungseinrichtung und Verfahren zu dessen Betrieb zum Verhindern einer differentiellen Stromverbrauchanalyse
EP99948823A EP1046131B1 (de) 1998-09-30 1999-09-21 Datenverarbeitungseinrichtung und verfahren zu dessen betrieb zum verhindern einer differentiellen stromverbrauchanalyse
DE59914806T DE59914806D1 (de) 1998-09-30 1999-09-21 Datenverarbeitungseinrichtung und verfahren zu dessen betrieb zum verhindern einer differentiellen stromverbrauchanalyse
PCT/EP1999/007025 WO2000019367A1 (de) 1998-09-30 1999-09-21 Datenverarbeitungseinrichtung und verfahren zu dessen betrieb zum verhindern einer differentiellen stromverbrauchanalyse
KR1020007005809A KR100718352B1 (ko) 1998-09-30 1999-09-21 데이터 처리 장치 및 그 작동 방법
JP2000572793A JP2002526840A (ja) 1998-09-30 1999-09-21 差動電流消費分析を防止するためのデータ処理装置および作動方法
AT99948823T ATE401624T1 (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
DE19844962 1998-09-30
DE19936938A DE19936938A1 (de) 1998-09-30 1999-08-05 Datenverarbeitungseinrichtung und Verfahren zu dessen Betrieb zum Verhindern einer differentiellen Stromverbrauchanalyse

Publications (1)

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

Family

ID=7882872

Family Applications (2)

Application Number Title Priority Date Filing Date
DE19936938A Withdrawn DE19936938A1 (de) 1998-09-30 1999-08-05 Datenverarbeitungseinrichtung und Verfahren zu dessen Betrieb zum Verhindern einer differentiellen Stromverbrauchanalyse
DE59914806T Expired - Lifetime DE59914806D1 (de) 1998-09-30 1999-09-21 Datenverarbeitungseinrichtung und verfahren zu dessen betrieb zum verhindern einer differentiellen stromverbrauchanalyse

Family Applications After (1)

Application Number Title Priority Date Filing Date
DE59914806T Expired - Lifetime DE59914806D1 (de) 1998-09-30 1999-09-21 Datenverarbeitungseinrichtung und verfahren zu dessen betrieb zum verhindern einer differentiellen stromverbrauchanalyse

Country Status (3)

Country Link
KR (1) KR100718352B1 (de)
AT (1) ATE401624T1 (de)
DE (2) DE19936938A1 (de)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003081398A2 (de) * 2002-03-25 2003-10-02 Infineon Technologies Ag Vorrichtung und verfahren zum sicheren laden von nutzdaten
EP1355269A1 (de) * 2002-04-18 2003-10-22 Infineon Technologies AG Datenverbeitungsvorrichtung und Verfahren zum Betreiben eines Datenverarbeitungsmoduls
WO2005062243A1 (de) * 2003-12-22 2005-07-07 Giesecke & Devrient Gmbh Tragbarer datenträger
GB2479871A (en) * 2010-04-26 2011-11-02 David Coyne System for preventing side channel attacks on a synchronous logic device.
WO2016190924A3 (en) * 2015-03-06 2017-01-05 Qualcomm Incorporated Side channel analysis resistant architecture
DE102016009045A1 (de) * 2016-07-25 2018-01-25 Detlef Fischer Zwischenschaltgerät und Betriebsverfahren dafür

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100974773B1 (ko) * 2008-08-12 2010-08-06 현대자동차주식회사 배기가스 촉매컨버터의 지지장치

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5404402A (en) * 1993-12-21 1995-04-04 Gi Corporation Clock frequency modulation for secure microprocessors

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003081398A3 (de) * 2002-03-25 2004-07-29 Infineon Technologies Ag Vorrichtung und verfahren zum sicheren laden von nutzdaten
WO2003081398A2 (de) * 2002-03-25 2003-10-02 Infineon Technologies Ag Vorrichtung und verfahren zum sicheren laden von nutzdaten
DE10213268A1 (de) * 2002-03-25 2003-10-23 Infineon Technologies Ag Vorrichtung und Verfahren zum sicheren Laden von Nutzdaten
DE10217291B4 (de) * 2002-04-18 2005-09-29 Infineon Technologies Ag Datenverarbeitungsvorrichtung und Verfahren zum Betreiben eines Datenverarbeitungsmoduls
DE10217291A1 (de) * 2002-04-18 2003-11-06 Infineon Technologies Ag Datenverarbeitungsvorrichtung und Verfahren zum Betreiben eines Datenverarbeitungsmoduls
EP1355269A1 (de) * 2002-04-18 2003-10-22 Infineon Technologies AG Datenverbeitungsvorrichtung und Verfahren zum Betreiben eines Datenverarbeitungsmoduls
US7181632B2 (en) 2002-04-18 2007-02-20 Infineon Technologies Ag Data processing apparatus and method for operating a data processing module for secure power saving
WO2005062243A1 (de) * 2003-12-22 2005-07-07 Giesecke & Devrient Gmbh Tragbarer datenträger
GB2479871A (en) * 2010-04-26 2011-11-02 David Coyne System for preventing side channel attacks on a synchronous logic device.
WO2016190924A3 (en) * 2015-03-06 2017-01-05 Qualcomm Incorporated Side channel analysis resistant architecture
US9735953B2 (en) 2015-03-06 2017-08-15 Qualcomm Incorporated Side channel analysis resistant architecture
CN107223320A (zh) * 2015-03-06 2017-09-29 高通股份有限公司 防旁信道分析的架构
DE102016009045A1 (de) * 2016-07-25 2018-01-25 Detlef Fischer Zwischenschaltgerät und Betriebsverfahren dafür

Also Published As

Publication number Publication date
KR20010032564A (ko) 2001-04-25
DE59914806D1 (de) 2008-08-28
ATE401624T1 (de) 2008-08-15
KR100718352B1 (ko) 2007-05-14

Similar Documents

Publication Publication Date Title
DE10136335B4 (de) Prozessor mit mehreren Rechenwerken
EP1115094A2 (de) Datenverarbeitungseinrichtung und Verfahren zu dessen Betrieb
EP1430376B1 (de) Verhindern der unerwuenschten externen erfassung von operationen in integrierten digitalschaltungen
DE10115118A1 (de) Verfahren zur Übertragung von Daten über einen Datenbus
EP1044426B1 (de) Datenverarbeitungseinrichtung und verfahren zu deren spannungsversorgung
DE102007009526A1 (de) Vorrichtung zum Speichern eines binären Zustandes
DE19936938A1 (de) Datenverarbeitungseinrichtung und Verfahren zu dessen Betrieb zum Verhindern einer differentiellen Stromverbrauchanalyse
EP1272984B1 (de) Tragbarer datenträger mit schutz vor seitenkanalattacken
EP1046142B1 (de) Datenverarbeitungseinrichtung und verfahren zu dessen betrieb zum verhindern einer differentiellen stromverbrauchanalyse
DE102004061312A1 (de) Vorrichtung und Verfahren zum Detektieren eines potentiellen Angriffs auf eine kryptographische Berechnung
EP1046131B1 (de) Datenverarbeitungseinrichtung und verfahren zu dessen betrieb zum verhindern einer differentiellen stromverbrauchanalyse
DE102005057104A1 (de) Smartcard und Steuerverfahren hierfür
DE10344647B3 (de) Schaltungsanordnung und Verfahren zur Verarbeitung eines Dual-Rail-Signals
DE19936939A1 (de) Datenverarbeitungseinrichtung und Verfahren zu dessen Betrieb zum Verhindern einer differentiellen Stromverbrauchanalyse
DE102005042790B4 (de) Integrierte Schaltungsanordnung und Verfahren zum Betrieb einer solchen
EP1080400B1 (de) Verfahren und vorrichtung zum verarbeiten von daten
EP1495542B1 (de) Schaltungsanordnung und verfahren zur erzeugung eines dual-rail-signals
DE19936890A1 (de) Verschlüsselungsverfahren zum Ausführen von kryptographischen Operationen
DE19822218B4 (de) Zugriffsgeschützter Datenträger
EP1044534A1 (de) Verschlüsselungsverfahren zum ausführen von kryptographischen operationen
DE19936919A1 (de) Datenverarbeitungseinrichtung und Verfahren zu deren Spannungsversorgung
WO2003003207A2 (de) Datenfluss-analysator und verfahren zur analyse von programmen
DE102005062763B4 (de) Schaltungsanordnung für eine Speicherkarte mit Debit- oder Ausweiskartenfunktion
DE10129241B4 (de) Multifunktionaler Rechner
DE10130099B4 (de) Challenge-Response-Vorrichtung, Authentifikationssystem, Verfahren zum Erzeugen eines Response-Signals aus einem Challenge-Signal und Verfahren zur Authentifikation

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