DE69910549T2 - Verfahren zur datensicherung welches einen krypto-algorithmus verwendet - Google Patents

Verfahren zur datensicherung welches einen krypto-algorithmus verwendet Download PDF

Info

Publication number
DE69910549T2
DE69910549T2 DE69910549T DE69910549T DE69910549T2 DE 69910549 T2 DE69910549 T2 DE 69910549T2 DE 69910549 T DE69910549 T DE 69910549T DE 69910549 T DE69910549 T DE 69910549T DE 69910549 T2 DE69910549 T2 DE 69910549T2
Authority
DE
Germany
Prior art keywords
random
operations
data
conversion phase
conversion
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.)
Expired - Lifetime
Application number
DE69910549T
Other languages
English (en)
Other versions
DE69910549D1 (de
Inventor
Patrick Salle
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.)
Axalto SA
Original Assignee
Schlumberger Systemes SA
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 Schlumberger Systemes SA filed Critical Schlumberger Systemes SA
Application granted granted Critical
Publication of DE69910549D1 publication Critical patent/DE69910549D1/de
Publication of DE69910549T2 publication Critical patent/DE69910549T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0625Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation with splitting of the data block into left and right halves, e.g. Feistel based algorithms, DES, FEAL, IDEA or KASUMI
    • 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

Description

  • Die vorliegende Erfindung bezieht sich auf ein Datensicherungsverfahren, das zum Beispiel durch den Mikroprozessor einer Kreditkarte oder einer Zugangsberechtigungskarte während einer Verbindung mit einem EDV-Überprüfungsterminal zum Einsatz gebracht wird.
  • Bei den Datensicherungsverfahren bekannter Art kommen ein kryptographischer Algorithmus zum Einsatz, der in einem Speicher der Karte enthaltene Ausführungszyklen von sich wiederholenden Operationen zur Verarbeitung von Datenelementen umfasst, um eine verschlüsselte Information zu erzeugen, die an das EDV-Terminal weitergegeben wird.
  • Das am 18.08.1996 veröffentlichte Dokument D1 "Timing attacks on implementations of Diffie-Hellman, RSA, DSS and other systems" von Paul C. Kocher behandelt das Problem der Datensicherung in einer Chipkarte. In diesem Dokument werden verschiedene Techniken dargestellt, um Angriffe zu verhindern: insbesondere wird bei RSA- und Diffie-Hellmann-Algorithmen vor Ausführung einer modularen Exponentier-Operation eine Unterschrift berechnet.
  • Die Ausführung des Verfahrens durch den Mikroprozessor der Karte führt zur Abgabe von zum Beispiel von Verbrauchsspitzen im Bereich der Stromversorgung des Mikroprozessors oder von Variationen der elektromagnetischen Strahlung abgeleiteten Signalen, so dass die Hülle der elektromagnetischen Strahlung für die bearbeiteten Daten kennzeichnend ist. Ein Betrüger, der auf unerlaubte Weise Karten mit Mikroprozessoren verwenden will, kann mehrmals die Ausführung des Verfahrens starten und die abgegebenen abgeleiteten Signale analysieren, um herauszufinden, welche der einzelnen Operationen welchem Signal oder welcher Signalreihe entspricht. Ausgehend von diesen Zuordnungen und dadurch, dass die Karte zu ganz bestimmten Zeitpunkten während des Algorithmusablaufs zum Beispiel elektromagnetischen Störeinflüssen oder Spannungsabfällen ausgesetzt wird, kann der Betrüger die erhaltene verschlüsselte Information und die Unterschiede oder aber das Fehlen von Unterschieden zwischen den abgegebenen abgeleiteten Signalen untersuchen, um die im Speicher der Karte enthaltenen Daten ausfindig zu machen.
  • Um eine solche Analyse der abgeleiteten Signale zu erschweren, kam man darauf, zusätzlich zu den bei der Ausführung des Verfahrens abgegebenen abgeleiteten Signalen Störsignale zu erzeugen. Das Extrahieren der der Ausführung des Verfahrens entsprechenden Signale wird dadurch erschwert, bleibt jedoch weiterhin möglich. Man hat auch daran gedacht, die elektronischen Komponenten der Karte und das Ausführungsprogramm des Verfahrens derart zu gestalten, dass die abgegebenen abgeleiteten Signale vom Wert der sensiblen Daten unabhängig sind. Allerdings macht dies die Herstellung der Karten komplizierter, ohne jedoch einen ausreichenden Schutz der Daten zu gewährleisten.
  • Ein Ziel der Erfindung ist es, ein wirksames Sicherungsverfahren vorzuschlagen, das nicht die vorab aufgeführten Nachteile aufweist.
  • In Hinblick auf das Erreichen dieses Ziels sieht man erfindungsgemäß ein Datensicherungsverfahren vor, bei dem ein kryptographischer Operationsausführungsalgorithmus zur Verarbeitung von Datenelementen zum Einsatz kommt, um eine verschlüsselte Information zu erzeugen, wobei dieses Verfahren mindestens einen zufälligen Umwandlungsschritt der Ausführung von mindestens einer Operation von einem Zyklus zum anderen oder eine zufällige Umwandlung von mindestens einem der Datenelemente umfasst, so dass die verschlüsselte Information durch diese zufällige Umwandlung unverändert bleibt.
  • Unter zufälliger Umwandlung der Ausführung mindestens einer Operation versteht man eine Modifikation der Ausführungsreihenfolge von Operationen oder Operationsteilen, bzw. eine Änderung des Ablaufs einer einzigen Operation. Auf diese Weise wird mindestens eine Operation und/oder mindestens eine der verarbeiteten Daten zufällig verändert, was auf zufällige Weise die abgegebenen abgeleiteten Signale beeinträchtigt. Dadurch ist es für einen Betrüger sehr schwierig, ausgehend von den abgeleiteten Signalen die einzelnen Bearbeitungsoperationen zu unterscheiden und die Daten ausfindig zu machen. Zudem beeinträchtigt die zufällige Modifikation nicht die verschlüsselte Information, so dass diese nach ihrer Erstellung auf übliche An verwendet werden kann.
  • Weitere Merkmale und Vorteile der Erfindung werden in Verbindung mit der einzigen beiliegenden Zeichnung anhand der Beschreibung eines besonderen und nicht einschränkenden Ausführungsbeispiels der Erfindung deutlich, wobei diese Zeichnung in Form eines Blockschemas den Ablauf des Verfahrens gemäß dieser Ausführungsweise darstellt.
  • Das erfindungsgemäße Sicherungsverfahren wird hier unter Einsatz eines symmetrischen kryptographischen Algorithmus vom Typ DES (Abkürzung für DATA ENCRYPTION STANDARD) in Hinblick auf die Erzeugung einer verschlüsselten 64 Bit-Information C ausgehend von einem Meldungsblock M und einem Geheimschlüssel K1, die beide auch 64 Bit aufweisen, beschrieben.
  • Das Verfahren beginnt mit dem Konvertieren 10 der Bits des Meldungsblocks M untereinander, um den Block M0 zu bilden.
  • Der Block M0 wird dann während eines Divisionsschritts 20 in zwei Blöcke M1 und M2 mit jeweils 32 Bits geteilt.
  • Anschließend wird eine Erweiterung 30 des Blocks M2 vorgenommen, um einen Block M3 mit 48 Bits zu bilden. Diese Erweiterung 30 erfolgt zum Beispiel durch Unterteilen des Blocks M2 in acht Halbbytes und dadurch, dass jedem Halbbyte das äußerste Bit neben den das betroffene Halbbyte einfassenden Halbbytes hinzugefügt wird (die äußersten Halbbytes werden als anliegend betrachtet).
  • Parallel zu diesen Operationen erfolgt ein Konvertieren 110 an den Bits des Schlüssels K1, um den Schlüssel K2 zu bilden. Gleichzeitig werden die nicht signifikanten Bits des Schlüssels K1 entfernt, so dass der Schlüssel K2 nur 56 Bits aufweist.
  • Erfindungsgemäß werden dann die Bits des Schlüssels K2 auf zufällige Weise während einer Umwandlung 120 modifiziert. Die den modifizierten Bits des Schlüssels K2 entsprechenden Bits des Schlüssels K3, die hier mit einem Sternchen gekennzeichnet sind, werden gespeichert. Die zufällige Umwandlung 120 erfolgt zum Beispiel dadurch, dass dem Schlüssel KZ durch einen logischen Operator vom Typ exklusives ODER eine Zufallszahl zugeordnet wird, die von einem Generator unvorhersehbarer Zahlen der Karte erzeugt wird.
  • Durch die Drehung 130 der Bits des Schlüssels K3 erhält man einen Schlüssel K4. Anschließend erfolgt an den Bits des Schlüssels K4 ein Konvertieren 140, um den Schlüssel K5 zu bilden. Gleichzeitig mit der Konvertierung 140 werden die nicht signifikanten Bits des Schlüssels K4 entfernt, so dass der Schlüssel K5 48 Bits umfasst.
  • Das Verfahren wird durch die Verknüpfung 210 des Blocks M3 und des Schlüssels K5 durch einen logischen Operator vom Typ exklusives ODER fortgesetzt. Das Ergebnis dieser Verknüpfung ist der Block R1.
  • Anschließend erfolgt die umgekehrte Umwandlung der den durch die Umwandlung 120 modifizierten Bits entsprechenden Bits des Blocks R1, um den Block R2 zu bilden. Diese umgekehrte Umwandlung 220 der Umwandlung 120 beabsichtigt, die den mit einem Sternchen gekennzeichneten Bits entsprechenden Bits des Blocks R1 in den Zustand zurückzuversetzen, in dem sie sich ohne der Umwandlung 120 befunden hätten.
  • Anschließend erfolgt auf herkömmliche An die Division und Verarbeitung 230 des Blocks R2, das Konvertieren 240 der während des Schritts 230 gebildeten Bits des Blocks R3 und durch einen exklusiven ODER-Operator die Verknüpfung 250 des aus dem Schritt 240 hervorgehenden Blocks R4 mit dem Block M1, um den Block R5 zu bilden.
  • Die auf allgemeine Weise mit der Bezugszahl 270 bezeichnete Operationsgruppe wird anschließend erneut fünfzehn Mal ausgeführt, wobei bei einem Zuordnungsschritt 260 jeder einzelnen Operation der Wert des Blocks M1 dem Block M2 und der Wert des Blocks R5 dem Block M1 zugeordnet wird.
  • Das Verfahren wird durch die Operation 300 des Erhaltens der verschlüsselten Information C durch die umgekehrte Umwandlung und die Verbindung des zuletzt erzielten Blocks M2 und des zuletzt erzielten Blocks R5 abgeschlossen.
  • Man versteht, dass der Schritt der zufälligen Modifikation des Schlüssels K2 die Umwandlungsphase 120 und die umgekehrte Umwandlungsphase 220 umfasst. Durch diese beiden Phasen erhält man eine verschlüsselte Information C, die nicht von dieser zufälligen Modifikation beeinträchtigt wird.
  • Auf die gleiche Art könnte man auch eine zufällige Modifikation des Blocks M2 und/oder anderer Daten vornehmen.
  • Gemäß einer anderen Ausführungsweise der Erfindung, die mit einem wie vorausgehend beschriebenen Modifikationsschritt verbunden werden kann, kann die Ausführung mindestens einer Operation von einem Zyklus zum anderen auf zufällige Art modifiziert werden, wobei ein Zyklus ein kompletter Ausführungszyklus des Algorithmus oder ein Zwischenzyklus der Ausführung einer Operationsgruppe sein kann.
  • Zum Beispiel kann eine zufällige Bestimmung der Ausführungsreihenfolge bestimmter Operationen im Laufe eines Ausführungszyklus des Algorithmus erfolgen. Dazu werden solche Operationen verwendet, deren Ausführungsreihenfolge untereinander keinen Einfluss auf das Ergebnis hat. Zur Durchführung dieser Bestimmung kann man am Ende der gewählten Operationen in Abhängigkeit des Wertes einer Zufallszahl einen bedingten Sprung zu bestimmten Operationen vorsehen oder eine Adressentabelle der zufällig durchlaufenen einzelnen Operationen definieren.
  • Zum Beispiel könnte das Konvertieren 10 der Bits des Meldungsblocks M nach dem Konvertieren 110 der Bits des Schlüssels K1 oder umgekehrt erfolgen.
  • Genauso könnte eine zufällige Bestimmung der Ausführungsreihenfolge der Operationen der Gruppe 270 für jeden Ausführungszwischenzyklus dieser Operationen vorgesehen werden (16 Ausführungszwischenzyklen dieser Operationen pro kompletten Ausführungszyklus des Algorithmus). Auch hier wird die Ausführungsreihenfolge dieser Operationen so gewählt, dass sie das Ergebnis nicht beeinflusst.
  • Außerdem werden bei bestimmten Operationen die Daten nach Elementen verarbeitet. So werden bei der Erweiterung 30 die Blöcke M2 je Halbbyte verarbeitet. Bei dieser Operation kann man vorsehen, die Verarbeitungsreihenfolge der einzelnen Halbbytes auf zufällige Weise zu bestimmen. Ebenso werden beim Konvertieren 140 die Bits des Schlüssels K4 einzeln verarbeitet. Für die Ausführung dieser Konvertierung kann auch ein zufälliger Bestimmungsschritt der Verarbeitungsreihenfolge der Bits vorgesehen werden. Die Halbbytes des Blocks M2 können auch abwechselnd mit den Bits des Schlüssels K4 verarbeitet werden, d. h. es wird zum Beispiel ein erstes Halbbyte des Blocks M2 verarbeitet, dann eine Bit-Reihe des Schlüssels K4, anschließend ein zweites Halbbyte des Blocks M2 usw., wobei jedes Mal die verarbeiteten Datenelemente gespeichert werden, um zu kontrollieren, dass auch wirklich alle erforderlichen Operationen richtig durchgeführt werden.
  • Selbstverständlich beschränkt sich die Erfindung nicht auf die eben beschriebene Ausführungsweise, sondern umfasst ganz im Gegensatz dazu jede Variante, die mit gleichwertigen Mitteln diese wesentlichen Merkmale aufweist.
  • Insbesondere kann die Erfindung, obwohl sie in Verbindung mit einem Algorithmus vom Typ DES beschrieben wurde, auch bei anderen symmetrischen Algorithmen angewendet werden, die mit einer Bit-Modifikation funktionieren. Da also die Modifikation mittels einem logischen Operator vom Typ EXKLUSIVES ODER durchgeführt wird, entspricht die Länge der nicht verwandelten Datenelemente genau der Länge dieser verwandelten Datenelemente.
  • Außerdem werden die Bitzahlen der Daten nur als Richtwerte angegeben und können modifiziert werden, um dem gewünschten Sicherungsgrad angepasst zu werden.
  • Zudem ist festzuhalten, dass alle Datenelemente M, M0, M1, M2, M3, K1, K2, K3, K4, K5, R1, R2, R3, R4 und R5 umgewandelt werden können, indem man ihnen über den logischen EXKLUSIVES ODER-Operator eine Zufallszahl zuordnet, wobei im Anschluss an diesen zufälligen Umwandlungsschritt ein umgekehrter Umwandlungsschritt vorgenommen wird, so dass die verschlüsselte Information C durch die besagten Umwandlungen unverändert bleibt.
  • Insbesondere kann es sich bei den Datenelementen um die Schlüssel K1, K2, K3, K4, K5 oder um die Meldungsblöcke M, M0, M1, M2, M3 oder um Meldungsblöcke handeln, die durch einen logischen Operator vom Typ EXKLUSIVES ODER R1, R2, R3, R4, R5 mit einem Schlüssel verknüpft werden.
  • Schließlich ist festzuhalten, dass wenn es sich beim zufälligen Umwandlungsschritt um einen Schritt handelt, der der mehrmals ausgeführten Operationsgruppe vorausgeht und wenn es sich beim umgekehrten Umwandlungsschritt um einen Schritt handelt, der nach der besagten Operationsgruppe erfolgt, es reicht, einmal eine Zufallszahl zu erzeugen und den Meldungsblock M mit dem Algorithmus zu verarbeiten, um eine verschlüsselte Information zu erhalten, wobei alle Datenelemente des Blocks modifiziert werden. Die Datenkette ist von Anfang bis Ende geschützt. Außerdem kommt der Algorithmus dadurch, dass die Umwandlungsschritte und die Anzahl der erzeugten Zufallszahlen nicht vervielfacht werden, schnell zum Einsatz, was im Fall einer Chipkarte, bei der die Ausführungsdauer eines Algorithmus minimal sein muss, erforderlich ist.

Claims (10)

  1. Datensicherungsverfahren (M), bei dem in einem Mikroprozessor einer Chipkarte ein kryptographischer Operationsausführungsalgorithmus zur Verarbeitung von Datenelementen (M, M0, M1, M2, M3, K1, K2, K3, K4, K5, R1, R2, R3, R4, R5) zum Einsatz kommt, um eine verschlüsselte Information (C) herzustellen, dadurch gekennzeichnet, dass es zum einen mindestens eine zufällige Bit-Umwandlungsphase (120) von mindestens einem der Datenelemente (KZ) umfasst, indem dem besagten Datenelement (K2) über einen booleschen Operator vom Typ ausschließendes ODER eine Zufallszahl zugeordnet wird und zum anderen nach dieser zufälligen Umwandlungsphase eine umgekehrte Umwandlungsphase (220) umfasst, so dass die verschlüsselte Information (C) durch diese Umwandlungsphasen (120, 220) nicht verändert wird.
  2. Sicherungsverfahren nach Anspruch 1, dadurch gekennzeichnet, dass ein auf zufällige Art umgewandeltes Datenelement ein Schlüssel (K1, K2, K3, K4, K5) ist.
  3. Sicherungsverfahren nach einem der Ansprüche 1 oder 2, dadurch gekennzeichnet, dass ein auf zufällige Art umgewandeltes Datenelement ein Meldungsblock (M, M0, M1, M2, M3) ist.
  4. Sicherungsverfahren nach einem der Ansprüche 1, 2 oder 3, dadurch gekennzeichnet, dass ein auf zufällige Art umgewandeltes Datenelement ein durch einen booleschen Operator vom Typ ausschließendes ODER (R1, R2, R3, R4, R5) einem Schlüssel zugeordneter Meldungsblock ist.
  5. Sicherungsverfahren nach einem der vorausgehenden Ansprüche, dadurch gekennzeichnet, dass der kryptographische Operationsausführungsalgorithmus zur Verarbeitung von Daten (M, M0, M1, M2, M3, K1, K2, K3, K4, K5, R1, R2, R3, R4, R5) eine Reihe von Operationen (270) umfasst, die mehrmals ausgeführt wird.
  6. Sicherungsverfahren nach Anspruch 5, dadurch gekennzeichnet, dass die zufällige Umwandlungsphase eine der mehrmals ausgeführten Reihe von Operationen (270) vorausgehende Phase ist und dass die umgekehrte Umwandlungsphase nach der besagten Reihe von Operationen (270) stattfindet.
  7. Sicherungsverfahren nach einem der vorausgehenden Ansprüche, dadurch gekennzeichnet, dass es zudem eine Phase der zufälligen Änderung der Ausführungsreihenfolge der Operationen der Operationsreihe (270) umfasst.
  8. Sicherungsverfahren nach einem der vorausgehenden Ansprüche, dadurch gekennzeichnet, dass der kryptographische Algorithmus vom Typ DATA ENCRYPTION STANDARD ist.
  9. Chipkarten mit einem programmierten Mikroprozessor zum Einsatz eines kryptographischen Operationsausführungsalgorithmus zur Verarbeitung von Datenelementen (M, M0, M1, M2, M3, K1, K2, K3, K4, K5, R1, R2, R3, R4, R5), um eine verschlüsselte Information (C) herzustellen, wobei das Datensicherungsverfahren (M) zum einen mindestens eine zufällige Bit-Umwandlungsphase (120) von mindestens einem der Datenelemente (K2) umfasst, indem dem besagten Datenelement (K2) über einen booleschen Operator vom Typ ausschließendes ODER eine Zufallszahl zugeordnet wird und zum anderen nach dieser zufälligen Umwandlungsphase eine umgekehrte Umwandlungsphase (220) umfasst, so dass die verschlüsselte Information (C) durch diese Umwandlungsphasen (120, 220) nicht verändert wird.
  10. Computerprogrammprodukt für einen Mikroprozessor einer Chipkarte, wobei dieses eine Reihe von Anleitungen umfasst, die, wenn sie im Mikroprozessor geladen ist, den Mikroprozessor dazu führt, einen kryptographischen Algorithmus auszuführen, bei dem Operationen zur Verarbeitung von Datenelementen (M, M0, M1, M2, M3, K1, K2, K3, K4, K5, R1, R2, R3, R4, R5) durchgeführt werden, um eine verschlüsselte Information (C) herzustellen, wobei die Verarbeitungsoperationen von Datenelementen zum einen mindestens eine zufällige Bit-Umwandlungsphase (120) von mindestens einem der Datenelemente (K2) umfasst, indem dem besagten Datenelement (KZ) über einen booleschen Operator vom Typ ausschließendes ODER eine Zufallszahl zugeordnet wird und zum anderen nach dieser zufälligen Umwandlungsphase eine umgekehrte Umwandlungsphase (220) umfasst, so dass die verschlüsselte Information (C) durch diese Umwandlungsphasen (120, 220) nicht verändert wird.
DE69910549T 1998-03-17 1999-03-17 Verfahren zur datensicherung welches einen krypto-algorithmus verwendet Expired - Lifetime DE69910549T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR9803242 1998-03-17
FR9803242A FR2776445A1 (fr) 1998-03-17 1998-03-17 Procede de securisation de donnees mettant en oeuvre un algorithme cryptographique
PCT/FR1999/000613 WO1999048239A1 (fr) 1998-03-17 1999-03-17 Procede de securisation de donnees mettant en oeuvre un algorithme cryptographique

Publications (2)

Publication Number Publication Date
DE69910549D1 DE69910549D1 (de) 2003-09-25
DE69910549T2 true DE69910549T2 (de) 2004-06-17

Family

ID=9524129

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69910549T Expired - Lifetime DE69910549T2 (de) 1998-03-17 1999-03-17 Verfahren zur datensicherung welches einen krypto-algorithmus verwendet

Country Status (7)

Country Link
US (2) US7073072B1 (de)
EP (1) EP1064752B1 (de)
AU (1) AU2842299A (de)
DE (1) DE69910549T2 (de)
ES (1) ES2205784T3 (de)
FR (1) FR2776445A1 (de)
WO (1) WO1999048239A1 (de)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7587044B2 (en) 1998-01-02 2009-09-08 Cryptography Research, Inc. Differential power analysis method and apparatus
WO1999035782A1 (en) * 1998-01-02 1999-07-15 Cryptography Research, Inc. Leak-resistant cryptographic method and apparatus
CA2333095C (en) * 1998-06-03 2005-05-10 Cryptography Research, Inc. Improved des and other cryptographic processes with leak minimization for smartcards and other cryptosystems
DE69935913T2 (de) 1998-07-02 2008-01-10 Cryptography Research Inc., San Francisco Leckresistente aktualisierung eines indexierten kryptographischen schlüssels
DE19837808A1 (de) * 1998-08-20 2000-02-24 Orga Kartensysteme Gmbh Verfahren zur Ausführung eines Verschlüsselungsprogramms zur Verschlüsselung von Daten in einem mikroprozessorgestützten, tragbaren Datenträger
JP3600454B2 (ja) 1998-08-20 2004-12-15 株式会社東芝 暗号化・復号装置、暗号化・復号方法、およびそのプログラム記憶媒体
WO2000019656A1 (de) * 1998-09-30 2000-04-06 Koninklijke Philips Electronics N.V. Verschlüsselungsverfahren zum ausführen von kryptographischen operationen
FR2789776B1 (fr) * 1999-02-17 2001-04-06 Gemplus Card Int Procede de contre-mesure dans un composant electronique mettant en oeuvre un algorithme de cryptographie a cle secrete
DE19921633A1 (de) * 1999-05-10 2000-11-16 Deutsche Telekom Ag Verfahren zur Implementierung kryptographischer Algorithmen
US6724894B1 (en) * 1999-11-05 2004-04-20 Pitney Bowes Inc. Cryptographic device having reduced vulnerability to side-channel attack and method of operating same
CA2298990A1 (en) * 2000-02-18 2001-08-18 Cloakware Corporation Method and system for resistance to power analysis
FR2813972B1 (fr) * 2000-09-14 2003-12-12 St Microelectronics Sa Procede de brouillage de la consommation electrique d'un circuit integre
CA2327911A1 (en) * 2000-12-08 2002-06-08 Cloakware Corporation Obscuring functions in computer software
FR2820577B1 (fr) * 2001-02-08 2003-06-13 St Microelectronics Sa Procede securise de calcul cryptographique a cle secrete et composant mettant en oeuvre un tel procede
FR2820576B1 (fr) * 2001-02-08 2003-06-20 St Microelectronics Sa Procede de cryptage protege contre les analyses de consommation energetique, et composant utilisant un tel procede de cryptage
FR2844409B1 (fr) * 2002-09-05 2004-12-24 Sagem Protection d'une cle secrete pour algorithme d'authentification dans un radiotelephone mobile
FR2862454A1 (fr) * 2003-11-18 2005-05-20 Atmel Corp Methode de reduction modulaire aleatoire et equipement associe
FR2867635B1 (fr) 2004-03-11 2006-09-22 Oberthur Card Syst Sa Procede de traitement de donnees securise, base notamment sur un algorithme cryptographique
FR2885711B1 (fr) * 2005-05-12 2007-07-06 Atmel Corp Procede et materiel modulaire et aleatoire pour la reduction polynomiale
FR2889349A1 (fr) * 2005-07-26 2007-02-02 St Microelectronics Sa Procede et dispositif de securisation d'un circuit integre, notamment une carte a microprocesseur
FR2897216B1 (fr) * 2006-02-08 2008-05-02 Sagem Defense Securite Protection d'un algorithme cryptographique
FR2914129B1 (fr) * 2007-03-21 2009-06-12 Oberthur Card Syst Sa Procede de traitement de donnees au sein d'une entite electronique
WO2009156881A2 (en) * 2008-06-24 2009-12-30 Nds Limited Security within integrated circuits
EP2234031A1 (de) * 2009-03-24 2010-09-29 SafeNet, Inc. Obfuskation

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3029381B2 (ja) * 1994-01-10 2000-04-04 富士通株式会社 データ変換装置
US6049613A (en) * 1997-03-07 2000-04-11 Jakobsson; Markus Method and apparatus for encrypting, decrypting, and providing privacy for data values
US5991415A (en) * 1997-05-12 1999-11-23 Yeda Research And Development Co. Ltd. At The Weizmann Institute Of Science Method and apparatus for protecting public key schemes from timing and fault attacks
US6064740A (en) * 1997-11-12 2000-05-16 Curiger; Andreas Method and apparatus for masking modulo exponentiation calculations in an integrated circuit
WO1999035782A1 (en) 1998-01-02 1999-07-15 Cryptography Research, Inc. Leak-resistant cryptographic method and apparatus
WO1999063696A1 (en) * 1998-06-03 1999-12-09 Cryptography Research, Inc. Using unpredictable information to minimize leakage from smartcards and other cryptosystems
JP3600454B2 (ja) * 1998-08-20 2004-12-15 株式会社東芝 暗号化・復号装置、暗号化・復号方法、およびそのプログラム記憶媒体
JP4188571B2 (ja) * 2001-03-30 2008-11-26 株式会社日立製作所 情報処理装置の演算方法および耐タンパ演算攪乱実装方式

Also Published As

Publication number Publication date
EP1064752A1 (de) 2001-01-03
US20060271795A1 (en) 2006-11-30
US7073072B1 (en) 2006-07-04
DE69910549D1 (de) 2003-09-25
FR2776445A1 (fr) 1999-09-24
AU2842299A (en) 1999-10-11
ES2205784T3 (es) 2004-05-01
WO1999048239A1 (fr) 1999-09-23
EP1064752B1 (de) 2003-08-20

Similar Documents

Publication Publication Date Title
DE69910549T2 (de) Verfahren zur datensicherung welches einen krypto-algorithmus verwendet
EP1262037B1 (de) Tragbarer datenträger mit zugriffsschutz durch schlüsselteilung
DE4339460C1 (de) Verfahren zur Authentifizierung eines Systemteils durch ein anderes Systemteil eines Informationsübertragungssystems nach dem Challenge-and Response-Prinzip
EP1589413B1 (de) Kryptographieprozessor
DE69906022T2 (de) Datenverarbeitungsanlage
DE102005028662A1 (de) Verfahren und Vorrichtung zum Berechnen einer Polynom-Multiplikation, insbesondere für die elliptische Kurven-Kryptographie
DE60302512T2 (de) Feistel-Verschlüsselungsverfahren und -vorrichtung mit Schutz gegen DPA-Angriffe
DE10000503A1 (de) Datenverarbeitungseinrichtung und Verfahren zu dessen Betrieb
EP2605445A1 (de) Verfahren und Vorrichtung zur Absicherung von Blockchiffren gegen Template-Attacken
EP0981115B1 (de) Verfahren zur Ausführung eines Verschlüsselungsprogramms zur Verschlüsselung von Daten in einem mikroprozessorgestützten, tragbaren Datenträger
WO2000017826A1 (de) Vorrichtung zum liefern von ausgangsdaten als reaktion auf eingangsdaten und verfahren zum überprüfen der authentizität und verfahren zum verschlüsselten übertragen von informationen
DE60100363T2 (de) Sequenznummerierungsmechanismus zur sicherung der ausführungsordnungs-integrietät von untereinander abhängigen smart-card anwendungen
DE102009007246A1 (de) Pseudozufallszahlengenerator und Verfahren zum Erzeugen einer Pseudozufallszahlenbitsequenz
EP1272984B1 (de) Tragbarer datenträger mit schutz vor seitenkanalattacken
DE60103520T2 (de) Gegenmassnahmeverfahren in einem mikrokontroller mit pipelinearchitektur
DE10232348A1 (de) Integrierte Halbleiterschaltung mit interner Busdatenübertragung und zugehöriges Datenübertragungsverfahren
DE102004038594B4 (de) Verschlüsselungsverfahren und -vorrichtung
DE602005003258T2 (de) Kontrolle der Ausführung eines Algorithmuses durch eine integrierte Schaltung
EP2545483A1 (de) Ausspähungsschutz bei der ausführung einer operationssequenz in einem tragbaren datenträger
EP1506473B1 (de) Ausspähungsgeschützte modulare inversion
DE102015209120A1 (de) Recheneinrichtung und Betriebsverfahren hierfür
WO2002019065A2 (de) Verfahren und vorrichtung zum durchführen einer modularen exponentiation in einem kryptographischen prozessor
DE19960047B4 (de) Verfahren und Einheit zur sicheren Informationsbehandlung in einem kryptographischen Informationsverarbeitungssystem
DE102018006313A1 (de) Verfahren mit Safe-Error-Abwehrmaßnahme
EP1556754B1 (de) Vorrichtung und verfahren zum erzeugen einer pseudozufälligen folge von zahlen

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: AXALTO S.A., MONTROUGE, FR