DE60022974T2 - Vorrichtung zur Ausführung eines Blockverschlüsselungsalgorithmus mit Wiederholungsrunden - Google Patents

Vorrichtung zur Ausführung eines Blockverschlüsselungsalgorithmus mit Wiederholungsrunden Download PDF

Info

Publication number
DE60022974T2
DE60022974T2 DE2000622974 DE60022974T DE60022974T2 DE 60022974 T2 DE60022974 T2 DE 60022974T2 DE 2000622974 DE2000622974 DE 2000622974 DE 60022974 T DE60022974 T DE 60022974T DE 60022974 T2 DE60022974 T2 DE 60022974T2
Authority
DE
Germany
Prior art keywords
input
xor
permutation
bit
tables
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
DE2000622974
Other languages
English (en)
Other versions
DE60022974D1 (de
Inventor
Herve Chabanne
Nicolas Tissot
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.)
Idemia Identity and Security France SAS
Original Assignee
Sagem 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 Sagem SA filed Critical Sagem SA
Application granted granted Critical
Publication of DE60022974D1 publication Critical patent/DE60022974D1/de
Publication of DE60022974T2 publication Critical patent/DE60022974T2/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/04Masking or blinding
    • H04L2209/043Masking or blinding of tables, e.g. lookup, substitution or mapping
    • 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/04Masking or blinding
    • H04L2209/046Masking or blinding of operations, operands or results of the operations
    • 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/24Key scheduling, i.e. generating round keys or sub-keys for block encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Description

  • Die vorliegende Erfindung betrifft Vorrichtungen zur Ausführung eines Verschlüsselungsalgorithmus, der auf der Basis von unverschlüsselten Eingangsdaten einer bestimmten Länge verschlüsselten Text oder Ausgangsdaten erzeugt, die von den Eingangsdaten und einem gespeicherten Schlüssel abhängen, der außerhalb der Vorrichtung nicht gelesen werden kann.
  • Die Erfindung betrifft Vorrichtungen der Art zum Ausführen eines Blockverschlüsselungsalgorithmus mit Wiederholungsrunden, von denen jede:
    • – lineare Transformationen und
    • – nichtlineare Transformationen aufweist, die Substitutionstabellen entsprechen, wobei ein Hauptschlüssel verwendet wird, von dem ausgehend ein oder mehrere Unterschlüssel generiert werden, die in die Runden durch lineare Operationen eingebracht werden.
  • Sie ist von besonderem Interesse in Verschlüsselungsvorrichtungen, die den DES-Algorithmus (Data Encryption Standard) ausführen, der in „Cryptographie Appliqué" von Bruce Schneier, französische Übersetzung, 2. Ausgabe, International Thomson Publishing, auf den Seiten 281 ff. beschrieben wird. Dieser Algorithmus wird bisher in Chipkarten verwendet, um auf der Basis von unverschlüsselten Eingangsdaten von 8 Oktetts und einem Hauptschlüssel von 56 Binär- oder Datenbits verschlüsselten Text oder Ausgangsdaten bereitzustellen.
  • Eine Vorrichtung zum Ausführen des DES-Verschlüsselungsalgorithmus kann so angesehen werden, dass sie 16 hintereinander angeordnete Stufen hat, wobei jede Stufe einen Eingang mit 2 × 32 Bit erhält. Vor der Eingangsstufe befindet sich eine Eingangspermutation, durch die der Eingang in einen linken Teil mit 32 Bit und einen rechten Teil mit 32 Bit geteilt wird, wobei die 32 Bits Operanden bilden. Auf die letzte Stufe folgt eine Permutation, die eine duale Operation bewirkt.
  • Jede Stufe weist Folgendes auf:
    • – ein Expansionselement, das den rechten Teil vergrößert, und
    • – einen Satz oder eine „Runde", jeweils in Kaskade mit einem Exklusiv-Oder- oder XOR-Operator, am rechten expandierten Operanden und einen Unterschlüssel derselben Länge, der vom Hauptschlüssel und von Substitutionstabellen oder „S-Boxen" ausgeführt wird, die jeweils einer Bit-Gruppe zugeordnet sind und in einer willkürlichen Reihenfolge gelesen werden, und einen XOR-Operator über den in den Tabellen gelesenen Inhalt und den linken expandierten Operanden, um den linken Teil von 32 Bit zu bilden, der einen der Stufenausgänge bildet, wobei der andere Ausgang vom Ergebnis der ersten XOR-Operation gebildet wird.
  • Der DES-Algorithmus, der in Chipkarten ausgeführt wird, funktioniert auf die folgende Weise. Die Eingangsdaten werden in 16 aufeinander folgende Stufen umgeformt, denen jeweils ein Unterschlüssel von 8 × 6 Bit zugeordnet ist, und jeder Operand wird in dem Zustand, in dem er an die Stufe angelegt wird, in 8 Tabellen von jeweils 6 Datenoktetts unterteilt.
  • Die definierten Algorithmen, und insbesondere der DES-Algorithmus, können mittels einer Leistungsaufnahmeanalyse attackiert werden, da sie im Allgemeinen mit C-MOS-Schaltungen ausgeführt werden, die nur im Änderungszustand Strom aufnehmen. Diese Art von Attacke gegen den DES-Algorithmus ist im Artikel von Chari et al. „Towards Sound Approaches to Counteract Power Analysis Attacks", Acte de la Conférence Crypto '99 beschrieben. Er beruht auf systematischen Tests an allen möglichen Unterschlüsseln. Man berechnet Bits, die an der Kalkulation auf der Basis jedes gewählten Unterschlüssels beteiligt sind. Die Aufnahmemesswerte werden dann in zwei Sätze unterteilt, die einen Versatz zeigen, wenn der Unterschlüssel korrekt ist. Die Stufen oder Iterationen des Algorithmus werden so wieder zusammengefügt. Falls der DES-Algorithmus auf Chipkarten ausgeführt wird, mit 16 Stufen und einem 64-Bit-Schlüssel (davon 56 Datenbits), so dass 16 Unterschlüssel von 48 Bit entstehen, die jeweils einer Tabelle zugeordnet sind, die wiederum in 8 elementare Unterschlüssel von 6 Bit unterteilt werden, kann der Schlüssel mit tausend Zugriffen auf die Karte ermittelt werden.
  • Das in dem oben erwähnten Artikel vorgeschlagene Verfahren, um den DES-Algorithmus robuster zu machen, nutzt die Feststellung, dass eine Differential Power Analysis, häufig DPA genannt, unmöglich gemacht oder zumindest erschwert werden kann, indem die Daten so manipuliert werden, dass die Bits, die der Angreifer auf der Basis seiner Kenntnis des Algorithmus und von Eingängen/Ausgängen der Karte berechnet, keinen Bezug zu den in der Karte realisierten Operationen haben.
  • Zu diesem Zweck schlägt der Artikel vor, eine Zufallsmaske auf die Unterschlüssel K anzuwenden, die in jede Stufe i oder in bestimmte Stufen eingreift. Aber diese Lösung hat den Nachteil, dass sie die Berechnungen enorm verkompliziert, da die Maske in den nachfolgenden Stufen nicht erhalten bleibt.
  • Die NL-C-1011800 schlägt vor, die Masken auf Eingangsoperanden anzuwenden, aber die Masken werden in den nachfolgenden Stufen ebenfalls nicht konserviert.
  • Es ist ein allgemeines Ziel der Erfindung, den Widerstand gegen eine DPA-Attacke von Algorithmen der oben definierten Art zu erhöhen. Zu diesem Zweck schlägt sie eine Vorrichtung gemäß Anspruch 1 vor.
  • Die Grundidee besteht darin, dass die Bits, die der Angreifer auf der Basis seiner Kenntnis des Algorithmus und von Eingängen/Ausgängen der Karte berechnet, keinen Bezug zur Realität von durch die Karte ausgeführten Operationen haben. Dies wird dadurch erreicht, dass die Operationen „maskiert" werden, indem über eine „Exklusiv-Oder-Operation" eine Zufallsmaske auf jeden der Operanden (und nicht auf die Unterschlüssel) angewendet wird, so dass a priori nur eine Chance von 50:50 besteht, dass die an den Berechnungen beteiligten Bits dieselben sind wie zuvor.
  • Es ist insbesondere Aufgabe der vorliegenden Erfindung, eine Vorrichtung zum Ausführen eines Verschlüsselungsalgorithmus bereitzustellen, der dieselben Resultate ergibt wie die obigen DES-Algorithmen (oder andere, wie AES und Kasami), aber widerstandsfähiger gegen eine DPA-Attacke ist, ohne die Berechnungen zu stark zu verkomplizieren.
  • Daher wird gemäß einem anderen Aspekt der Erfindung eine Verschlüsselungsvorrichtung zur Ausführung eines Algorithmus gemäß Anspruch 2 vorgeschlagen, der denselben Ausgang ergibt wie der DES-Algorithmus.
  • Die Begriffe „links" und „rechts" werden lediglich der Veranschaulichung halber verwendet und sollen keinesfalls die Anordnung von Operanden angeben. Die aufeinander folgenden Operationen können per Software oder Hardware ausgeführt werden.
  • Der obige Aufbau nutzt die Tatsache, dass die ODER-Operationen, die XOR-Operationen, die E-Expansionen und die P-Permutationen einen linearen Charakter haben, d.h., wenn M ein Oktett einer Maske ist und A und B die Oktetts von zwei Operanden sind, dann ergibt sich: A⊕(B⊕M) = (A⊕B)⊕M E(A⊕M) = E(A)⊕E(M) P(A⊕M) = P(A)⊕P(M)
  • Nur die Passage in den Tabellen, „S BOX" genannt, ist nicht linear, so dass die Tabellen auf andere Weise als die für die Ausführung des herkömmlichen DES-Algorithmus gebildet werden müssen.
  • Wenn man mit S die Operation, die von den Tabellen einer Stufe durchgeführt wird, und mit A und B die Operanden bezeichnet, dann wird die Operation: S(E[A]) = Bersetzt durch: S(E[A]⊕M1) = B⊕M2 = S(E[A])⊕M2 so dass die XOR-Operationen ausgeführt werden.
  • M1 oder M2 bezeichnen zufällig erzeugte Masken.
  • Man sieht, dass die Modifikation, die an dem gewöhnlichen DES-Schema erfolgt, einfach ist: L und R werden maskiert, nachdem die Anfangspermutation IP jeweils mit M1 und M1⊕P(M2) erfolgte. Ferner wird vor jedem Eintritt in eine Runde eine XOR-Operation zwischen R und P(M2) ausgeführt.
  • Wie man später sehen wird, bleiben die Masken nach der Passage durch die Boxen erhalten und diese Eigenschaft lässt es zu, ohne zusätzliche Berechnung den Schutz aller aufeinander folgenden Sätze zu wiederholen und somit einen maximalen Schutz ohne zusätzliche Komplikation zu erzielen. So erklärt sich der Nutzen der Anwendung einer Maske auf die Operanden anstatt der Anwendung einer Maske auf die Unterschlüssel.
  • Die Erfindung ist nicht nur auf den DES-Algorithmus anwendbar, sondern auch auf jeden anderen Verschlüsselungsalgorithmus, der vor allem lineare Operationen sowie Operationen ausführt, in denen die Maske in den nachfolgenden Stufen erhalten bleibt.
  • Die obigen sowie andere Charakteristiken werden besser nach der Lektüre der nachfolgenden Beschreibung der Umsetzung der Erfindung in einer Verschlüsselungsvorrichtung hervorgehen, die auf Vorrichtungen basiert, die gewöhnlich in Chipkarten mit 2n = 16 Stufen oder Iterationen zum Einsatz kommen.
  • In der Beschreibung wird auf die Begleitzeichnungen Bezug genommen. Dabei zeigt:
  • 1 ein Schema der Vorrichtung,
  • 2 ein Schema einer Stufe.
  • Die dargestellte Vorrichtung umfasst 16 identisch aufgebaute Stufen. Die unverschlüsselten Eingangsdaten, von denen nachfolgend angenommen wird, dass sie entweder aus 8 Oktetts oder aus 64 Bits bestehen, werden an eine Eingangspermutation 10 angelegt, die eine Permutation IP durchführt. Diese Permutation erzeugt am Ausgang einen linken Teil L von 32 Bits und einen rechten Teil R ebenfalls von 32 Bits. Vor dem Eintritt in die nachfolgenden Stufen 1, ..., i ..., 16 werden die Teile L und R, die Operanden bilden, logischen XOR-Operationen auf Bitniveau in den Ports 12 und 14 unterzogen: L⊕M1 R⊕M1⊕P(M2)
  • M1 und M2 sind Masken von 32 Bits, die in jeder Stufe der Vorrichtung verwendet werden, aber sie sind zufällig, d.h. sie ändern sich bei jedem Zugriff auf die Vorrichtung, so dass man bei 16 und 18 die Operanden L'o und R'o für die erste Stufe erhält.
  • In jeder Stufe wird der rechte Teil, der aus der XOR-Operation bei 14 entsteht, einer E-Expansion unterzogen, die die Länge von 32 auf 48 Bit bringt, wie bei 18 für Stufe 1 angedeutet wird. Der rechte Teil R'o wird bei 19 einer XOR-Operation mit P(M2) unterzogen, die die bei 14 durchgeführte Operation kompensiert. Der so modifizierte rechte Teil mit 48 Bit wird bei 20 mit einem Unterschlüssel von 48 Bit durch eine XOR-Operation kombiniert. Jeder dieser Unterschlüssel K1, ..., K16 wird auf der Basis des Hauptschlüssels durch eine Verschiebung und Auswahl von 48 Bits aus den 56 Bits des Hauptschlüssels gebildet. Diese XOR-Operation 20 bildet das erste Element einer Runde oder „Round", die in jeder Stufe identisch ist und in einer Substitutionstabelle 22 durch einen gespeicherten Substitutionsalgorithmus ausgeführt wird. Der Ausgang der Runde wird mit dem linken Teil L'o (für die Stufe 1) durch eine neue XOR-Operation 24 kombiniert, und die Ausgänge werden so vertauscht, dass der linke Teil zum rechten Teil wird und umgekehrt.
  • Am Ausgang der Runde der letzten Stufe wird der rechte Teil durch eine XOR-Operation 26 mit der Maske M1 kombiniert, während der linke Teil durch eine XOR-Operation 28 mit dem Ergebnis der Operation M1⊕P(M2) kombiniert wird. Schließlich wird das Resultat bei 30 einer Permutation IP–1 umgekehrt zur Anfangspermutation unterzogen.
  • Ein Vergleich zwischen den mit dem herkömmlichen DES-Algorithmus und dem erfindungsgemäßen modifizierten Algorithmus erhaltenen Zwischenergebnissen zeigt die Unterschiede.
  • Wenn man den linken und rechten Teil der i-ten Iteration (i-ten Stufe) des standardmäßigen DES-Algorithmus mit Li und Ri und den linken und den rechten Teil des erfindungsgemäß modifizierten DES-Algorithmus mit L'i und R'i bezeichnet, dann ergibt sich: Ri' = Ri⊕M1⊕P(M2) Li' = Li⊕M1
  • Die XOR-Operation mit P(M2) vor der Expansion impliziert: S(E[Ri'⊕P(M2)⊕K)⊕M1])) = S(E[Ri⊕K])⊕M2 und da Li+1 = Ri und Ri+1 = P(S(E[Ri⊕K]))⊕Li, ergibt sich: Li+1' = Ri'⊕P(M2) = Ri⊕M1 was Folgendes ergibt: Li+1' = Li+1⊕M1 und Ri+1' = P(S(E[Ri⊕K]⊕M2)⊕Li' = P(S(E[Ri⊕K]))⊕P(M2)⊕Li⊕M1 was Folgendes ergibt: Ri+1' = Ri+1⊕M1⊕P(M2)
  • Diese Gleichungen zeigen, dass die Masken M1 und M2 nach der Passage in den aufeinander folgenden Tabellen erhalten bleiben.
  • Die letzten XOR-Operationen bei 26 und 28 (Demaskierung von L16 und R16 unmittelbar vor der letzten Permutation) ergibt dasselbe Ergebnis wie beim standardmäßigen DES-Algorithmus.
  • Der Vorteil der Erfindung ergibt sich aus der Ungewissheit, die sie im Laufe der Berechnung an den Bits hervorruft und die aus der Maskierung resultiert. Es besteht eine Wahrscheinlichkeit von 50:50, dass jedes Bit durch die Maskierungsoperation in sein komplementäres Bit umgewandelt wird. Da sich die Masken bei jedem neuen Aufruf von DES verändern, ist es unmöglich zu ermitteln, welche die maskierten und welche die unmaskierten Bits sind. Somit kann der Angreifer die Werte der Bits selbst dann nicht mehr unterscheiden, wenn er den richtigen Unterschlüssel geraten und versucht hat. Eine DPA-Attacke ist nicht mehr möglich. Bei Experimenten ist bei 10.000 Zugriffen auf DES kein Versatz mehr aufgetreten. Die notwendige Komplexitätszunahme ist vertretbar. Bei der Ausführung auf Chipkarten (16 Stufen und 64-Bit-Daten) erfordert die Neuberechnung in den Tabellen von Runden und die systematische Neuberechnung im Live-Speicher nur 256 Oktetts. Die Ausführungszeit des DES dauert 12 bis 25 ms. Aber der Algorithmus ist in eine Prozedur gehüllt, die die Rückgewinnung des Verschlüsselungsbefehls und von Parametern erfordert, so dass der Zeitverlust lediglich bei 18% liegt. Es vergehen 72 bis 85 ms und der Assembler-Code braucht 1000 bis 1300 Oktetts, was im Hinblick auf das erhaltene Ergebnis äußerst vertretbar ist.

Claims (3)

  1. Vorrichtung zur Ausführung eines Blockverschlüsselungsalgorithmus mit Wiederholungsrunden, wobei jede Runde lineare Transformationen (12, 14, 16, 18, 19, 24) und nicht lineare Transformationen (22) aufweist, die darin bestehen, Daten durch Substitutionstabellen oder -boxen (22) laufen zu lassen, wobei ein Hauptschlüssel verwendet wird, von dem ausgehend ein oder mehrere Unterschlüssel (K1) generiert werden, die in die Runden durch lineare Operationen eingebracht werden, dadurch gekennzeichnet, dass sie durch lineare Operationen Masken (M1, M2) auf die Eingangsoperanden (L, R) anwendet, und dass die Substitutionstabellen (22) vorgesehen sind, um durch eine lineare Veränderung ihres Eingangs eine lineare Veränderung ihres Ausgangs zu bewirken.
  2. Vorrichtung Anspruch 1, bei der der ausgeführte Verschlüsselungsalgorithmus den gleichen Ausgang wie der DES-Algorithmus ergibt und folgendes umfasst: – eine Eingangspermutation P, durch die der Eingang in einen linken Teil L und einen rechten Teil R mit jeweils 32 Bit geteilt wird, – einen Eingangsoperator XOR zwischen dem linken Teil L und einer Zufallsmaske M1 gleicher Länge, – einen Eingangsoperator XOR zwischen dem rechten Teil R und dem Ergebnis der XOR-Operation, die an M1 und der Permutation P einer Zufallsmaske M2 erfolgt, – 16 hintereinander angeordnete Stufen, wobei jede Stufe einen Eingang mit 2 × 32 Bit der vorangehenden Stufe erhält und folgendes aufweist: • ein Expansionselement des rechten verdeckten Teils, das einen expandierten Wert R'i erzeugt, • ein Kompensationsgatter XOR, das die XOR-Operation an R'i und der Permutation P(M2) ausführt, • eine Runde, die die XOR-Operation zwischen dem Ausgang des Kompensations-XOR-Gatters und dem Wert L'1 ausführt und Tabellen als Substitutionstabellen besitzt, die jeweils einer Bit-Gruppe zugeordnet sind und in willkürlicher Reihenfolge gelesen werden, sowie einen XOR-Operator über den in den Tabellen gelesenen Inhalt und den linken Teil zum Erzeugen eines linken Ausgangsteils mit 32 Bit, wobei der andere Ausgang von dem Ausgang des Kompensationsgatters gebildet ist, wobei die durch die Tabellen einer Stufe an einem Eingangsoperand A und B ausgeführte Operation die Form S(E[A]⊕M1) = B⊕M2 = S(E[A]⊕M2 hat und der linke und rechte Teil L'i und R'i der i-ten Stufe mit dem linken und rechten Teil Li und Ri des Standard-DES-Algorithmus durch die Relationen Ri' = Ri⊕M1⊕P(M2) L'i = Li⊕M1 verbunden sind, • Demaskierungsgatter XOR, die nach der letzten Stufe die gleichen Operationen wie am Eingang ausführen, • eine Permutation, durch die die duale Operation P–1 der Eingangspermutation P ausgeführt wird.
  3. Vorrichtung nach Anspruch 1, dadurch gekennzeichnet, dass die in den Substitutionstabellen ausgeführten Operationen (S) die Form S(E[A]⊕M1) = B⊕M2 = S(E[A])⊕M2 haben, wobei ⊕ die Exklusiv-Oder-Operation Bit für Bit bezeichnet, E eine Expansion bezeichnet, M1 eine auf einen linken Eingangsteil angewandte Zufallsmaske bezeichnet, M2 eine Zufallsmaske bezeichnet, A und B die Eingangsoperanden bezeichnen.
DE2000622974 1999-12-15 2000-12-14 Vorrichtung zur Ausführung eines Blockverschlüsselungsalgorithmus mit Wiederholungsrunden Expired - Lifetime DE60022974T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR9915845 1999-12-15
FR9915845A FR2802741B1 (fr) 1999-12-15 1999-12-15 Dispositif mettant en oeuvre un algorithme de chiffrage par bloc a repetition de rondes

Publications (2)

Publication Number Publication Date
DE60022974D1 DE60022974D1 (de) 2005-11-10
DE60022974T2 true DE60022974T2 (de) 2006-07-27

Family

ID=9553307

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2000622974 Expired - Lifetime DE60022974T2 (de) 1999-12-15 2000-12-14 Vorrichtung zur Ausführung eines Blockverschlüsselungsalgorithmus mit Wiederholungsrunden

Country Status (4)

Country Link
EP (1) EP1109350B1 (de)
DE (1) DE60022974T2 (de)
ES (1) ES2250088T3 (de)
FR (1) FR2802741B1 (de)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9323955B2 (en) 2000-12-21 2016-04-26 Gemalto Sa Method for protecting a logic or mathematical operator installed in an electronic module with a microprocessor as well as the associated embedded electronic module and the system
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
JP3851115B2 (ja) * 2001-06-28 2006-11-29 富士通株式会社 暗号回路
CN1640051B (zh) 2002-03-07 2011-05-18 艾斯奥托公司 使具有秘密密钥的电子密码装置安全的方法
GB0211812D0 (en) * 2002-05-23 2002-07-03 Koninkl Philips Electronics Nv S-box encryption in block cipher implementations
US7403620B2 (en) 2002-07-02 2008-07-22 Stmicroelectronics S.A. Cyphering/decyphering performed by an integrated circuit
EP1457858A1 (de) * 2003-03-14 2004-09-15 SCHLUMBERGER Systèmes Methode um ein elektronisches System zu sichern, das ein Kryptoprocessor enthält
FR2875318A1 (fr) * 2004-09-15 2006-03-17 St Microelectronics Sa Protection d'un algorithme des
EP2293487A1 (de) * 2009-09-08 2011-03-09 Thomson Licensing Verfahren zur Diversifikation der Runden eines Verschlüsselungalgorithmus
SG11201407727TA (en) 2012-06-12 2015-01-29 Tigerspike Products Pte Ltd A method of cryption

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3600454B2 (ja) * 1998-08-20 2004-12-15 株式会社東芝 暗号化・復号装置、暗号化・復号方法、およびそのプログラム記憶媒体
NL1011544C1 (nl) * 1998-12-30 2000-07-03 Koninkl Kpn Nv Werkwijze en inrichting voor het cryptografisch bewerken van data.
EP1142191B1 (de) * 1998-12-30 2006-08-09 Nokia Corporation Verfahren und vorrichtung zur kryptographischen datenverarbeitung

Also Published As

Publication number Publication date
FR2802741B1 (fr) 2003-10-31
EP1109350B1 (de) 2005-10-05
DE60022974D1 (de) 2005-11-10
EP1109350A1 (de) 2001-06-20
FR2802741A1 (fr) 2001-06-22
ES2250088T3 (es) 2006-04-16

Similar Documents

Publication Publication Date Title
DE69931606T2 (de) Datenwandler und aufzeichnungsmedium zur aufnahme eines programms zur datenumwandlung
EP2605445B1 (de) Verfahren und Vorrichtung zur Absicherung von Blockchiffren gegen Template-Attacken
DE69031736T2 (de) Verschlüsselungsmethode
EP3218893B1 (de) Gehärtete white box implementierung
DE60207818T2 (de) Gesichertes Verfahren zur kryptographischen Berechnung mit Geheimschlüssel und Bauteil, das ein solches Verfahren anwendet
DE60223337T3 (de) Verfahren zur gesicherten verschlüsselung und baustein zur ausführung eines solchen verschlüsselungsverfahrens
DE602004013206T2 (de) Verfahren und diesbezügliche einrichtung zur hardwareorientierten umsetzung zwischen arithmetik- und boolscher zufallsmaskierung
EP2901611B1 (de) Seitenkanalgeschützte maskierung
DE69932740T2 (de) Verfahren und vorrichtung zur kryptographischen datenverarbeitung
DE60022974T2 (de) Vorrichtung zur Ausführung eines Blockverschlüsselungsalgorithmus mit Wiederholungsrunden
EP3387636B1 (de) Kryptoalgorithmus mit schlüsselabhängigem maskiertem rechenschritt (sbox-aufruf)
DE60301750T2 (de) Vorrichtung zur Erzeugung eines erweiterten Schlüssels, Verschlüsselungsvorrichtung und Verschlüsselungssystem
DE60027163T2 (de) Gegenmassnahmenverfahren in einem elektronischen bauelement mit einem kryptosystem mit privatem schlüssel
DE602004003675T2 (de) Sicherheitsgegenmassnahmen gegen Angriffe durch Stromverbrauchsanalysen
DE10324422B4 (de) Verfahren und Vorrichtung zur Abbildung eines abzubildenden Eingangswertes auf einen verschlüsselten abgebildeten Ausgangswert
DE60213327T2 (de) Auf einem Blockverschlüsselungsalgorithmus mit Rundenwiederholung basiertes Verfahren und Vorrichtung zur Ausführung des Verfahrens
EP3369205B1 (de) Alternative darstellung des krypto-algorithmus des
DE69829566T2 (de) Verschlüsselungsgerät
DE69934707T2 (de) Gegenmassnahmenvorrichtung in einem elektronischen bauteil um einen krypto-algorithmus mit geheimschlüssel durchzuführen
WO2014063875A1 (de) Vorrichtung und verfahren zur ausführung eines kryptographischen verfahrens
DE102015209120A1 (de) Recheneinrichtung und Betriebsverfahren hierfür
DE19921633A1 (de) Verfahren zur Implementierung kryptographischer Algorithmen
DE10149191C2 (de) Verfahren und Vorrichtung zum Ermitteln von Ursprungsausgangsdaten aus Ursprungseingangsdaten auf der Basis einer kryptographischen Operation
WO2003060692A2 (de) Schiebevorrichtung und verfahren zum verschieben
DE102004042756B3 (de) Verfahren und Anordnung zur Erzeugung von Pseudozufallszahlen

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: SAGEM SECURITE, PARIS, FR

8328 Change in the person/name/address of the agent

Representative=s name: BOSCH JEHLE PATENTANWALTSGESELLSCHAFT MBH, 80639 M