EP1579312A1 - Procede de division entiere ou de reduction modulaire securise contre les attaques a canaux caches - Google Patents

Procede de division entiere ou de reduction modulaire securise contre les attaques a canaux caches

Info

Publication number
EP1579312A1
EP1579312A1 EP03813170A EP03813170A EP1579312A1 EP 1579312 A1 EP1579312 A1 EP 1579312A1 EP 03813170 A EP03813170 A EP 03813170A EP 03813170 A EP03813170 A EP 03813170A EP 1579312 A1 EP1579312 A1 EP 1579312A1
Authority
EP
European Patent Office
Prior art keywords
division
modular reduction
random number
bits
during
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
EP03813170A
Other languages
German (de)
English (en)
French (fr)
Inventor
Marc Joye
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.)
Thales DIS France SA
Original Assignee
Gemplus Card International SA
Gemplus 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 Gemplus Card International SA, Gemplus SA filed Critical Gemplus Card International SA
Publication of EP1579312A1 publication Critical patent/EP1579312A1/fr
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/52Multiplying; Dividing
    • G06F7/535Dividing only
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/60Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
    • G06F7/72Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic
    • 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]
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3006Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
    • H04L9/302Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters involving the integer factorization problem, e.g. RSA or quadratic sieve [QS] schemes
    • 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
    • G06F2207/7223Randomisation as countermeasure against side channel attacks
    • G06F2207/7233Masking, e.g. (A**e)+r mod n
    • G06F2207/7238Operand masking, i.e. message blinding, e.g. (A+r)**e mod n; k.(P+R)
    • 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
    • G06F2207/7223Randomisation as countermeasure against side channel attacks
    • G06F2207/7257Random modification not requiring correction
    • 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

Definitions

  • the invention relates to a whole division or modular reduction method secured against hidden channel attacks, and in particular differential attacks.
  • the invention can be used to perform division operations in a more general cryptographic method, 1 for example a secret or public key cryptographic method.
  • a 'cryptographic process ' can for example be implemented in electronic devices such as' smart cards.
  • a and / or b are secret data, for example elements of a process key.
  • Such cryptographic methods using an integer division method and / or a modular reduction method are susceptible to hidden channel attacks, as will be seen in the example below.
  • a known method for implementing both an integer division and a modular reduction is the so-called "pencil paper” method.
  • This process takes up in practice the method used when such an operation is carried out by hand. This process is recalled below.
  • the method successively performs several divisions of an integer A of n + 1 bits by the integer b of n bits.
  • the remainder r is a number of at most n bits since r ⁇ b.
  • the quotient q is stored in the m-n + 1 least significant bits of the register initially containing the number a.
  • the most significant bit of the rest r is stored in a 1 bit register used as carry (carry) during computation and the n-1 least significant bits of. rest r are stored in the n-1 most significant bits of the register initially containing the number a.
  • ⁇ - and the notation y ⁇ - x are used to indicate the loading of the content of the register x into a register y whose content is also called y.
  • t A is a word of n bits corresponding to the content of the n most significant bits of the register initially containing the data a.
  • Register A is of course modified at each iteration, as is register
  • -n ⁇ is the complement to 1 (also called negation) 10 ( of the variable ⁇ .
  • TRUE is a constant, equal to 1 in an example.
  • lsb (a) is the least significant bit of the number -a, also called least significant bit of a.
  • ADD n (A, b) is an operation of adding the n bits of the number b to the n bits of the word A. Note that the operation SHL n (a, 1) is equivalent to the operation
  • SUB n (A, b) is an operation of subtraction of the number b from the word A.
  • the subtraction SUB n (A, b) is carried out by subtracting, in an appropriate circuit, the
  • method 1 performs the following steps:
  • Method 1 is sensitive to hidden channel attacks. Indeed, it is noted on method 1 that, at each iteration, according to the value of ⁇ , that is to say according to the value of the bit of quotient which will be obtained during the iteration in progress, one carries out ' is an addition ADD n (A, b), ie setting the least significant bit of the register containing the data a to 1.
  • ADD n A, b
  • the implementation and the duration of execution of these two operations are different and the trace that they leave during their implementation is also different.
  • the overall trace left during an iteration varies' therefore based on the result bit obtained during said iteration.
  • Other known methods having the same drawbacks carry out either a modular division alone or a modular reduction alone. In general, a division process is quite similar to a modular reduction process. .
  • An object of the invention is to secure a method 5 of implementing a division and / or a modular reduction.
  • the method is characterized in that the number a is masked by a random number -p before performing the whole division and / or the modular reduction.
  • the trace for example, the energy consumption
  • -20 ' left during the execution of the process is different with each execution, so that it is no longer possible to put implementing a differential hidden channel attack.
  • the invention can be applied for example to method 1 which ' performs both a division and a
  • the invention can be more generally applied to any process which performs one or other of these operations.
  • the random number p can be modified each time the process is executed, or simply after a number
  • said predefined number is preferably chosen to be relatively small, for example a number from 32 to 64 bits.
  • the result of the whole division carried out. with. the number masked in the form a + b * p is equal to a div b + p.
  • we remove from the result of the whole division the contribution made by the random number p to find the expected result of the whole division on the number a, i.e. a div b .
  • the result of the operation (a + b * p) mod b is equal to a mod b, expected result of the modular reduction- on the number a. -
  • the invention also relates to an electronic component comprising means for implementing a method according to the invention, as described above.
  • Means of Calculation programmed include multiple registers for storing the numbers a and b.
  • the invention relates to a smart card comprising a component having the characteristics described above.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Storage Device Security (AREA)
EP03813170A 2002-12-11 2003-12-11 Procede de division entiere ou de reduction modulaire securise contre les attaques a canaux caches Withdrawn EP1579312A1 (fr)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR0215623A FR2848753B1 (fr) 2002-12-11 2002-12-11 Procede de division entiere ou de reduction modulaire securise contre les attaques a canaux caches
FR0215623 2002-12-11
PCT/FR2003/003681 WO2004055665A1 (fr) 2002-12-11 2003-12-11 Procede de division entiere ou de reduction modulaire securise contre les attaques a canaux caches

Publications (1)

Publication Number Publication Date
EP1579312A1 true EP1579312A1 (fr) 2005-09-28

Family

ID=32338660

Family Applications (1)

Application Number Title Priority Date Filing Date
EP03813170A Withdrawn EP1579312A1 (fr) 2002-12-11 2003-12-11 Procede de division entiere ou de reduction modulaire securise contre les attaques a canaux caches

Country Status (7)

Country Link
US (1) US7639796B2 (ja)
EP (1) EP1579312A1 (ja)
JP (1) JP4378480B2 (ja)
CN (1) CN1723436A (ja)
AU (1) AU2003296823A1 (ja)
FR (1) FR2848753B1 (ja)
WO (1) WO2004055665A1 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2838210B1 (fr) * 2002-04-03 2005-11-04 Gemplus Card Int Procede cryptographique protege contre les attaques de type a canal cache
FR2847402B1 (fr) * 2002-11-15 2005-02-18 Gemplus Card Int Procede de division entiere securise contre les attaques a canaux caches
FR2895609A1 (fr) * 2005-12-26 2007-06-29 Gemplus Sa Procede cryptographique comprenant une exponentiation modulaire securisee contre les attaques a canaux caches, cryptoprocesseur pour la mise en oeuvre du procede et carte a puce associee
FR2897964B1 (fr) * 2006-02-28 2017-01-13 Atmel Corp Procede de calcul numerique incluant la division euclidienne
US8280041B2 (en) * 2007-03-12 2012-10-02 Inside Secure Chinese remainder theorem-based computation method for cryptosystems
JP4603022B2 (ja) * 2007-08-02 2010-12-22 株式会社スクウェア・エニックス 暗号化データ作成装置、および暗号化データ作成プログラム
CA2688592C (en) * 2007-10-01 2014-04-15 Research In Motion Limited Substitution table masking for cryptographic processes
TWI517655B (zh) * 2013-05-23 2016-01-11 晨星半導體股份有限公司 密碼裝置以及密鑰保護方法
FR3095709B1 (fr) * 2019-05-03 2021-09-17 Commissariat Energie Atomique Procédé et système de masquage pour la cryptographie

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5077793A (en) * 1989-09-29 1991-12-31 The Boeing Company Residue number encryption and decryption system
US5504817A (en) * 1994-05-09 1996-04-02 Yeda Research And Development Co. Ltd. At The Weizmann Institute Of Science Method and apparatus for memory efficient variants of public key encryption and identification schemes for smart card applications
DE19963407A1 (de) * 1999-12-28 2001-07-12 Giesecke & Devrient Gmbh Tragbarer Datenträger mit Zugriffsschutz durch Nachrichtenverfremdung

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO2004055665A1 *

Also Published As

Publication number Publication date
US20060023873A1 (en) 2006-02-02
AU2003296823A1 (en) 2004-07-09
FR2848753A1 (fr) 2004-06-18
US7639796B2 (en) 2009-12-29
WO2004055665A1 (fr) 2004-07-01
CN1723436A (zh) 2006-01-18
JP4378480B2 (ja) 2009-12-09
JP2006509261A (ja) 2006-03-16
FR2848753B1 (fr) 2005-02-18

Similar Documents

Publication Publication Date Title
US10423807B2 (en) Asymmetrically masked multiplication
US7065788B2 (en) Encryption operating apparatus and method having side-channel attack resistance
EP3230921B1 (en) Multiplicative masking for cryptographic operations
EP2380306A1 (fr) Circuit de cryptographie protege contre les attaques en observation, notamment d'ordre eleve
CN101213513A (zh) 保护数据处理装置免受密码攻击或分析的设备和方法
EP3300293B1 (fr) Procédé de chiffrement ou de déchiffrement symétrique par bloc
EP1381936B1 (fr) Procede de contre-mesure dans un composant electronique mettant en oeuvre un algorithme cryptographique du type a cle publique sur une courbe elliptique
WO2004046017A2 (fr) Procede de division entiere securise contre les attaques a canaux caches
EP1579312A1 (fr) Procede de division entiere ou de reduction modulaire securise contre les attaques a canaux caches
CN102193060B (zh) 用于测试集成电路设备的方法和系统
Campos et al. Patient Zero & Patient Six: Zero-Value and Correlation Attacks on CSIDH and SIKE
WO2011061263A1 (en) Countermeasures against power attacks for the randomization of the exponent
FR2838210A1 (fr) Procede cryptographique protege contre les attaques de type a canal cache
Sim et al. Key bit-dependent attack on protected PKC using a single trace
WO2006067057A1 (fr) Procede d'exponentiation securisee et compacte pour la cryptographie
EP1639451A2 (fr) Procédé de contre-mesure par masquage de l'accumulateur
Gierlichs DPA-Resistance Without Routing Constraints? –A Cautionary Note About MDPL Security–
Dugardin et al. Stochastic methods defeat regular RSA exponentiation algorithms with combined blinding methods
Lee et al. A practical collision-based power analysis on RSA prime generation and its countermeasure
CN104426653B (zh) 一种数据处理方法和装置
EP1348275B1 (fr) Procede de contre-mesure dans un composant electronique mettant en oeuvre un algorithme de cryptographie a cle secrete
Sim et al. New power analysis on the Ha-Moon algorithm and the MIST algorithm
Alioto et al. Power modeling of precharged address bus and application to multi-bit DPA attacks to DES algorithm
EP4407589A1 (en) Apparatus and method for cryptography secure against side-channel attacks
FR2824653A1 (fr) Dispositif destine a realiser des calculs d'exponentiation appliques a des points d'une courbe elliptique

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20050711

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LI LU MC NL PT RO SE SI SK TR

AX Request for extension of the european patent

Extension state: AL LT LV MK

DAX Request for extension of the european patent (deleted)
RIN1 Information on inventor provided before grant (corrected)

Inventor name: JOYE, MARC

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: GEMALTO SA

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20110701