FR2800478A1 - Procede de securisation d'un ensemble electronique de cryptographie a base d'exponentiation modulaire contre les attaques par analyse physique - Google Patents

Procede de securisation d'un ensemble electronique de cryptographie a base d'exponentiation modulaire contre les attaques par analyse physique Download PDF

Info

Publication number
FR2800478A1
FR2800478A1 FR9913507A FR9913507A FR2800478A1 FR 2800478 A1 FR2800478 A1 FR 2800478A1 FR 9913507 A FR9913507 A FR 9913507A FR 9913507 A FR9913507 A FR 9913507A FR 2800478 A1 FR2800478 A1 FR 2800478A1
Authority
FR
France
Prior art keywords
values
securing
modular exponentiation
secret
algorithm
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.)
Granted
Application number
FR9913507A
Other languages
English (en)
Other versions
FR2800478B1 (fr
Inventor
Louis Goubin
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.)
Bull CP8 SA
Original Assignee
Bull CP8 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 Bull CP8 SA filed Critical Bull CP8 SA
Priority to FR9913507A priority Critical patent/FR2800478B1/fr
Priority to US09/869,435 priority patent/US6973190B1/en
Priority to PCT/FR2000/002978 priority patent/WO2001031436A1/fr
Priority to EP00971508A priority patent/EP1639447A1/fr
Priority to JP2001533507A priority patent/JP2003513491A/ja
Publication of FR2800478A1 publication Critical patent/FR2800478A1/fr
Application granted granted Critical
Publication of FR2800478B1 publication Critical patent/FR2800478B1/fr
Anticipated expiration legal-status Critical
Expired - Fee Related 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/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
    • G06F7/723Modular exponentiation
    • 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/7242Exponent masking, i.e. key masking, e.g. A**(e+r) mod n; (k+r).P

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

L'invention concerne un procédé de sécurisation d'un ensemble électronique mettant en oeuvre un processus de calcul cryptographique faisant intervenir une exponentiation modulaire d'une grandeur (x), ladite exponentiation modulaire utilisant un exposant secret (d), caractérisé en ce que l'on décompose ledit exposant secret en une pluralité de k valeurs imprévisibles (d1 , d2 , dk ) dont la somme est égale audit exposant secret.

Description

<Desc/Clms Page number 1>
PROCEDE DE SECURISATION D'UN ENSEMBLE ELECTRONIQUE DE CRYPTOGRAPHIE A BASE D'EXPONENTIATION MODULAIRE CONTRE LES ATTAQUES PAR ANALYSE PHYSIQUE La présente invention concerne un procédé de sécurisation d'un ensemble électronique mettant en #uvre un algorithme faisant intervenir une exponentiation modulaire, dans laquelle l'exposant est secret. Plus précisément, le procédé vise à réaliser une version d'un tel algorithme qui ne soit pas vulnérable face à un certain type d'attaques physiques - dites analyse d'énergie électrique différentielle ou analyse d'énergie électrique différentielle de haut niveau (Differential Power Analysis ou High-Order Differential Power Analysis, en langage anglo-saxon, en abrégé DPA ou HO-DPA) qui cherchent à obtenir des informations sur la clé secrète à partir de l'étude de la consommation électrique de l'ensemble électronique au cours de l'exécution du calcul.
Les algorithmes cryptographiques considérés ici utilisent une clé secrète pour calculer une information de sortie en fonction d'une information d'entrée ; il peut s'agir d'une opération de chiffrement, de déchiffrement ou de signature ou de vérification de signature, ou d'authentification ou de non-répudiation ou d'échange de clé. Ils sont construits de manière à ce qu'un attaquant, connaissant les entrées et les sorties, ne puisse en pratique déduire aucune information sur la clé secrète elle-même.
On s'intéresse donc à une classe plus large que celle traditionnellement désignée par l'expression algorithmes à clé secrète ou algorithmes symétriques. En particulier, tout ce qui est décrit dans la présente demande de brevet s'applique également aux algorithmes dits à clé publique ou algorithmes asymétriques, qui comportent en fait deux clés : l'une publique, et l'autre, privée, non divulguée, cette dernière étant celle visée par les attaques décrites ci-dessous.
Les attaques de type Analyse de Puissance Electrique, développées par Paul Kocher et Cryptographie Research (Confer document Introduction to Differential Power Analysis and related Attacks by Paul Kocher, Joshua Jaffe, and Benjamin Jun,
<Desc/Clms Page number 2>
Cryptography Research, 870 Market St., Suite 1008, San Francisco, CA 94102, édition du document HTML à l'adresse URL : http://www.cryptography.com/dpa/technical/index.html) partent de la constatation qu'en réalité l'attaquant peut acquérir des informations, autres que la simple donnée des entrées et des sorties, lors de l'exécution du calcul, comme par exemple la consommation électrique du microcontrôleur ou le rayonnement électromagnétique émis par le circuit.
L'analyse d'énergie électrique différentielle est une attaque permettant d'obtenir des informations sur la clé secrète contenue dans l'ensemble électronique, en effectuant une analyse statistique des enregistrements de consommation électrique effectués sur un grand nombre de calculs avec cette même clé.
@ Cette attaque ne nécessite aucune connaissance sur la consommation électrique individuelle de chaque instruction, ni sur la position dans le temps de chacune de ces instructions. Elle s'applique de la même manière si on suppose que l'attaquant connaît des sorties de l'algorithme et les courbes de consommation correspondantes. Elle repose uniquement sur l'hypothèse fondamentale selon laquelle : Hypothèse fondamentale : Il existe une variable intermédiaire, apparaissant dans le cours du calcul de l'algorithme, telle que la connaissance de quelques bits de clé, en pratique moins de 32 bits, permet de décider si deux entrées, respectivement deux sorties, donnent ou non la même valeurpour cette variable.
Les attaques dites par analyse d'énergie électrique de haut niveau sont une généralisation de l'attaque DPA décrite précédemment. Elles peuvent utiliser plusieurs sources d'information différentes : outre la consommation, elles peuvent mettre en jeu les mesures de rayonnement électromagnétique, de température, etc. et mettre en #uvre des traitements statistiques plus sophistiqués que la simple notion de moyenne, des variables intermédiaires moins élémentaires qu'un simple bit ou un simple octet.
<Desc/Clms Page number 3>
Néanmoins, elles reposent exactement sur la même hypothèse fondamentale que la DPA.
Le procédé, objet de la présente invention, a pour objet la suppression des risques d'attaques DPA ou HO-DPA d'ensembles ou systèmes électroniques de cryptographie à clé secrète ou privée, faisant intervenir une exponentiation modulaire, dans laquelle l'exposant est secret.
Un autre objet de la présente invention est en conséquence une modification du processus de calcul cryptographique mis en #uvre par les systèmes électroniques de cryptographie protégés de manière que l'hypothèse fondamentale précitée ne soit plus vérifiée, à savoir qu'aucune variable intermédiaire ne dépend de la consommation d'un sous-ensemble aisément accessible de la clé secrète ou privée, les attaques de type DPA ou HO-DPA étant ainsi rendues inopérantes.
Premier exemple: l'algorithme RSA Le RSA est le plus célèbre des algorithmes cryptographiques asymétriques. Il a été développé par Rivest, Shamir et Adleman en 1978. Pour une description plus détaillée de cet algorithme, on pourra utilement se reporter au document ci-après : # R.L. Rivest, A. Shamir, L.M. Adleman, A Method for Obtaining Digital Signatures and Public-Key Cryptosystems, Communications of the ACM, 21, n 2, 1978, pp. 120- 126, ou aux documents suivants : # ISO/IEC 9594-8/ITU-T X.509, Information Technology - Open Systems Interconnection - The Directory: Authentication Framework; # ANSI X9.31-1, American National Standard, Public-Key Cryptography Using Reversible Algorithms for the Financial Services Industry, 1993; # PKCS #1, RSA Encryption Standard, version 2,1998, disponible à l'adresse suivante : ftp://ftp.rsa.com/pub/pkcs/doc/pkcs-lv2.doc.
<Desc/Clms Page number 4>
L'algorithme RSA utilise un nombre entier n qui est le produit de deux grands nombres
Figure img00040001

premiers p et q, et un nombre entier e, premier avec ppem(p-1, q-1), et tel que e ,e :1: 1 mod ppcm(p-1,q-1). Les entiers n et e constituent la clé publique. Le calcul en clé publique fait appel à la fonction g de Z/nZ dans Z/nZ définie par g(x)=xe mod n. Le
Figure img00040002

calcul en clé secrète fait appel à la fonction g7'(y) =. )jd mod n, où d est l'exposant secret (appelé aussi clé secrète, ou privée) défini par ed -= 1 mod ppcm(p-l,q-1). Les attaques de type DPA ou HO-DPA font peser une menace sur les mises en #uvre classiques de l'algorithme RSA. En effet , celles-ci utilisent très souvent le principe dit de square and multiply en langage anglo-saxon pour effectuer le calcul de xd mod n.
Ce principe consiste à écrire la décomposition
Figure img00040003

d = b"r, 2m~' + b,"~2.2"'-2 + ... + b, 2' + bo-2 de l'exposant secret d en base 2, puis d'effectuer le calcul de la manière suivante : 1. z # 1 ; pour i allant de m-1 jusqu'à 0 faire : 2. z # z2 mod n ;
Figure img00040004

3 . si b, = 1 alors z - z x x mod n. Dans ce calcul, on constate que parmi les valeurs successives prises par la variable z, les premières ne dépendent que de quelques bits de la clé secrète d L'hypothèse fondamentale permettant l'attaque DPA est donc réalisée. On peut ainsi deviner par exemple les 10 bits de poids fort de d en s'intéressant aux mesures de consommation sur la partie de l'algorithme correspondant à i allant de m-1 à m-10. On peut ensuite continuer l'attaque en utilisant les mesures de consommation sur la partie de l'algorithme correspondant à i allant de m-11 à m-20, ce qui permet de trouver les 10 bits suivants de d, et ainsi de suite. On trouve finalement tous les bits de l'exposant secret d.
<Desc/Clms Page number 5>
Une première méthode de sécurisation, et ses inconvénients Une méthode classique (proposée par Ronald Rivest en 1995) pour protéger l'algorithme RSA contre les attaques de type DPA consiste à utiliser un principe de " blinding " (camouflage). On utilise le fait que :
Figure img00050001

xd mod n = (x x rel x r-1 mod rt Ainsi le calcul de y = xd mod n se décompose en quatre étapes : # On utilise un générateur aléatoire pour obtenir une valeur r ; # On calcule u = x x re mod n ;
Figure img00050002

#On calcule v = ud mod n ; #On calcule : y v x r-1 mod n. L'inconvénient de cette méthode est qu'elle oblige, pour chaque calcul, à calculer l'inverse modulaire r-1 de la valeur aléatoire r, cette opération étant en général coûteuse en temps (la durée d'un tel calcul est du même ordre que celle d'une exponentiation modulaire telle que ud mod n). Par conséquent, cette nouvelle implémentation (protégée contre les attaques DPA) du calcul de xd mod n est environ deux fois plus lente que l'implémentation initiale (non protégée contre les attaques DPA). En d'autres termes, cette protection du RSA contre les attaques DPA accroît le temps de calcul de 100% environ (en supposant que l'exposant public e est très petit, par exemple e=3 ; si l'exposant e est plus grand, ce temps de calcul est encore plus grand).
Une deuxième méthode : le procédé de la présente invention Selon l'invention, un procédé de sécurisation d'un ensemble électronique mettant en #uvre un processus de calcul cryptographique faisant intervenir une exponentiation modulaire d'une grandeur (x), ladite exponentiation modulaire utilisant un exposant secret (d), est caractérisé en ce que l'on décompose ledit exposant secret en une
<Desc/Clms Page number 6>
pluralité de k valeurs imprévisibles (d1 ,d2 ,dk) dont la somme est égale audit exposant secret.
Figure img00060001

Avantageusement, lesdites valeurs (di ,d2 ,...... ,dk ) sont obtenues de la manière suivante : a) (k-1) valeurs sont obtenues au moyen d'un générateur aléatoire ; b) la dernière valeur est obtenue par différence entre l'exposant secret et les (k-1) valeurs.
Avantageusement, le calcul de l'exponentiation modulaire est effectué de la manière suivante : a) pour chacune desdites k valeurs, on élève la grandeur (x) à un exposant comprenant ladite valeur pour obtenir un résultat, un ensemble de résultats étant ainsi obtenus ; b) on calcule un produit des résultats obtenus à l'étape a).
Avantageusement, au moins l'une desdites (k-1) valeurs obtenues au moyen d'un générateur aléatoire a une longueur supérieure ou égale à 64 bits.
Des détails et avantages de la présente invention apparaîtront au cours de la description suivante de quelques modes d'exécution préférés mais non limitatifs, en regard de la figure unique annexée, représentant une carte à puce.
Selon l'invention, on utilise le fait que :
Figure img00060002

si d = dl + d2, alors xd mod n = xd' x xd2 mod n Ainsi le calcul de y = xd mod n se décompose en cinq étapes : # On utilise un générateur aléatoire pour obtenir une valeur d1 ; # On calcule : d2=d-d1; # On calcule :u xd1 mod n ;
<Desc/Clms Page number 7>
# On calcule : v = xd2 mod n ; # On calcule : y u x v mod n.
L'avantage est que, de cette manière, il n'y a pas d'inverse modulaire à calculer. En général, le temps de calcul d'une' exponentiation modulaire est proportionnel à la taille de l'exposant. Ainsi si on note a le rapport entre la taille de dl et la taille de d2, on se rend compte que le temps total du calcul dans cette nouvelle implémentation (protégée contre les attaques DPA) est environ (I+a) fois le temps de calcul dans l'implémentation initiale (non protégée contre les attaques DPA).
Notons que, pour obtenir une valeur di non prédictible, il est nécessaire que sa taille soit au moins de 64 bits.
Le procédé ainsi décrit rend inopérantes les attaques de type DPA ou HO-DPA décrites précédemment. En effet, pour décider si deux entrées (respectivement deux sorties) de l'algorithme donnent ou non la même valeur pour une variable intermédiaire apparaissant au cours du calcul, il ne suffit plus de connaître les bits de clé mis en jeu. Il faut également connaître la décomposition de la clé secrète d en k valeurs d1, d2, ..., dk telles que d=dl+d2+...+dk. Si on suppose que cette décomposition est secrète, et qu'au moins une des k valeurs a une taille d'au moins 64 bits, l'attaquant ne peut pas prévoir les valeurs de d1, ..., dk, et donc l'hypothèse fondamentale, qui permettait de mettre en oeuvre une attaque de type DPA ou HO-DPA, n'est plus vérifiée.
Exemples : 1. Si n a une longueur de 512 bits, en choisissant de prendre une valeur aléatoire d1 de 64 bits, on obtient [alpha]=1/8, ce qui fait que cette protection du RSA contre les attaques DPA accroît le temps de calcul de 12. 5 % environ.
2. Si n a une longueur de 1024 bits, en choisissant de prendre une valeur aléatoire d1 de 64 bits, on obtient a=1116, ce qui fait que cette protection du RSA contre les attaques DPA accroît le temps de calcul de 6.25% environ.
<Desc/Clms Page number 8>
Deuxième exemple : l'algorithme de Rabin Nous considérons ici l'algorithme cryptographique asymétrique développé par Rabin en 1979. Pour une description plus détaillée de cet algorithme, on pourra utilement se reporter au document suivant : # M. O. Rabin, Digitized Signatures and Public-Key Functions as Intractable as Factorization, Technical Report LCS/TR-212, M.I.T. Laboratory for Computer Science, 1979.
L'algorithme de Rabin utilise un nombre entier n qui est le produit de deux grands nombres premiers/? et q, vérifiant en outre les deux conditions suivantes : # p est congru à 3 modulo 8 ; # q est congru à 7 modulo 8.
Le calcul en clé publique fait appel à la fonction g de ZlnZ dans Z/nZ définie par g(x)=x2 mod n. Le calcul en clé secrète fait appel à la fonction g'(y)=yd mod n, où d est
Figure img00080001

l'exposant secret (appelé aussi clé secrète, ou privée) défini par d=((p-I)(q-1)l4+I)l2.
La fonction mise en jeu par le calcul en clé secrète étant exactement la même que celle utilisée par l'algorithme RSA, les mêmes attaques DPA ou HO-DPA sont applicables et font peser les mêmes menaces sur l'algorithme de Rabin.
Sécurisation de l'algorithme Comme la fonction est exactement la même que celle du RSA, le procédé de sécurisation décrit dans le cadre du RSA s'applique de la même manière au cas de l'algorithme de Rabin. L'accroissement du temps de calcul provoqué par l'application de ce procédé est également le même que dans le cas de l'algorithme RSA.
L'invention peut être mise en oeuvre dans tout ensemble électronique effectuant un calcul cryptographique faisant intervenir une exponentiation modulaire, notamment une carte à puce 8 selon la figure unique. La puce inclut des moyens de traitement de
<Desc/Clms Page number 9>
l'information 9, reliés d'un côté à une mémoire non volatile 10 et à une mémoire volatile de travail RAM 11, et reliés d'un autre côté à des moyens 12 pour coopérer avec un dispositif de traitement de l'information. La mémoire non volatile 10 peut comprendre une partie non modifiable ROM et une partie modifiable EPROM, EEPROM, ou constituée de mémoire RAM du type "flash" ou FRAM (cette dernière étant une mémoire RAM ferromagnétique), c'est-à-dire présentant les caractéristiques d'une mémoire EEPROM avec en outre des temps d'accès identiques à ceux d'une RAM classique.
En tant que puce, on pourra notamment utiliser un microprocesseur autoprogrammable à mémoire non volatile, tel que décrit dans le brevet américain n 4. 382.279 au nom de la Demanderesse. Dans une variante, le microprocesseur de la puce est remplacé - ou tout du moins complété - par des circuits logiques implantés dans une puce à semi-conducteurs. En effet, de tels circuits sont aptes à effectuer des calculs, notamment d'authentification et de signature, grâce à de l'électronique câblée, et non microprogrammée. Ils peuvent notamment être de type ASIC (de l'anglais Application Specific Integrated Circuit ). Avantageusement, la puce sera conçue sous forme monolithique.

Claims (7)

  1. REVENDICATIONS 1. Procédé de sécurisation d'un ensemble électronique mettant en #uvre un processus de calcul cryptographique faisant intervenir une exponentiation modulaire d'une grandeur (x), ladite exponentiation modulaire utilisant un exposant secret (d), caractérisé en ce que l'on décompose ledit exposant secret en une pluralité de k valeurs imprévisibles (d1 ,d2 ,...... ,dk) dont la somme est égale audit exposant secret.
  2. 2. Procédé selon la revendication 1, caractérisé en ce que lesdites valeurs (d1 ,d2 dk) sont obtenues de la manière suivante : a) (k-1) valeurs sont obtenues au moyen d'un générateur aléatoire ; b) la dernière valeur est obtenue par différence entre l'exposant secret et les (k-1) valeurs.
  3. 3. Procédé selon la revendication 1, caractérisé en ce que le calcul de l'exponentiation modulaire est effectué de la manière suivante : a) pour chacune desdites k valeurs, on élève la grandeur (x) à un exposant comprenant ladite valeur pour obtenir un résultat, un ensemble de résultats étant ainsi obtenus ; b) on calcule un produit des résultats obtenus à l'étape a).
  4. 4. Procédé selon la revendication 1, caractérisé en ce qu'au moins l'une desdites (k-1) valeurs obtenues au moyen d'un générateur aléatoire a une longueur supérieure ou égale à 64 bits.
  5. 5. Utilisation du procédé selon la revendication 1 dans une carte à puce comportant des moyens de traitement de l'information.
  6. 6. Utilisation du procédé selon la revendication 1 pour la sécurisation d'un processus de calcul cryptographique utilisant l'algorithme RSA.
    <Desc/Clms Page number 11>
  7. 7. Utilisation du procédé selon la revendication 1 pour la sécurisation d'un processus de calcul cryptographique utilisant l'algorithme de Rabin.
FR9913507A 1999-10-28 1999-10-28 Procede de securisation d'un ensemble electronique de cryptographie a base d'exponentiation modulaire contre les attaques par analyse physique Expired - Fee Related FR2800478B1 (fr)

Priority Applications (5)

Application Number Priority Date Filing Date Title
FR9913507A FR2800478B1 (fr) 1999-10-28 1999-10-28 Procede de securisation d'un ensemble electronique de cryptographie a base d'exponentiation modulaire contre les attaques par analyse physique
US09/869,435 US6973190B1 (en) 1999-10-28 2000-10-26 Method for protecting an electronic system with modular exponentiation-based cryptography against attacks by physical analysis
PCT/FR2000/002978 WO2001031436A1 (fr) 1999-10-28 2000-10-26 Procede de securisation d'un ensemble electronique de cryptographie a base d'exponentiation modulaire contre les attaques par analyse physique
EP00971508A EP1639447A1 (fr) 1999-10-28 2000-10-26 Procede de securisation d'un ensemble electronique de cryptographie a base d'exponentiation modulaire contre les attaques par analyse physique
JP2001533507A JP2003513491A (ja) 1999-10-28 2000-10-26 物理的分析によるハッキングに対する母数指数化に基づく電子暗号ユニットの安全保護方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR9913507A FR2800478B1 (fr) 1999-10-28 1999-10-28 Procede de securisation d'un ensemble electronique de cryptographie a base d'exponentiation modulaire contre les attaques par analyse physique

Publications (2)

Publication Number Publication Date
FR2800478A1 true FR2800478A1 (fr) 2001-05-04
FR2800478B1 FR2800478B1 (fr) 2001-11-30

Family

ID=9551481

Family Applications (1)

Application Number Title Priority Date Filing Date
FR9913507A Expired - Fee Related FR2800478B1 (fr) 1999-10-28 1999-10-28 Procede de securisation d'un ensemble electronique de cryptographie a base d'exponentiation modulaire contre les attaques par analyse physique

Country Status (5)

Country Link
US (1) US6973190B1 (fr)
EP (1) EP1639447A1 (fr)
JP (1) JP2003513491A (fr)
FR (1) FR2800478B1 (fr)
WO (1) WO2001031436A1 (fr)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3926532B2 (ja) * 2000-03-16 2007-06-06 株式会社日立製作所 情報処理装置、情報処理方法、及びカード部材
FR2810139B1 (fr) * 2000-06-08 2002-08-23 Bull Cp8 Procede de securisation de la phase de pre-initialisation d'un systeme embarque a puce electronique, notamment d'une carte a puce, et systeme embarque mettant en oeuvre le procede
FR2818772A1 (fr) * 2000-12-21 2002-06-28 Bull Cp8 Procede de securisation d'un operateur logique ou mathematique implante dans un module electronique a microprocesseur, ainsi que le module electronique et le systeme embarque associes
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
FR2823327B1 (fr) * 2001-04-09 2003-08-08 Gemplus Card Int Dispositif destine a realiser des calculs d'exponentiation securisee et utilisation d'un tel dispositif
GB0126317D0 (en) * 2001-11-02 2002-01-02 Comodo Res Lab Ltd Improvements in and relating to cryptographic methods and apparatus in which an exponentiation is used
DE10222212A1 (de) * 2002-05-16 2003-12-04 Giesecke & Devrient Gmbh Ausspähungsgeschützte modulare Inversion
EP1398690A1 (fr) * 2002-09-13 2004-03-17 Schlumberger Systemes SA Procédé et système de génération de signature
DE10304451B3 (de) * 2003-02-04 2004-09-02 Infineon Technologies Ag Modulare Exponentiation mit randomisiertem Exponenten
FR2864390B1 (fr) * 2003-12-19 2006-03-31 Gemplus Card Int Procede cryptographique d'exponentiation modulaire protege contre les attaques de type dpa.
FR2887351A1 (fr) * 2005-06-16 2006-12-22 St Microelectronics Sa Protection d'un calcul d'exponentiation modulaire effectue par un circuit integre
JP5179358B2 (ja) 2005-06-29 2013-04-10 イルデト アイントホーフェン ベー フェー 攻撃又は解析に対してデータ処理装置を保護するための装置及び方法
JP4970279B2 (ja) * 2005-10-31 2012-07-04 パナソニック株式会社 セキュア処理装置、セキュア処理方法、難読化秘密情報埋め込み方法、プログラム、記憶媒体および集積回路
EP1949292A1 (fr) * 2005-11-04 2008-07-30 Gemplus SA. Procede securise de manipulations de donnees lors de l'execution d'algorithmes cryptographiques sur systemes embarques
EP2669789A3 (fr) 2008-05-07 2014-06-25 Irdeto Corporate B.V. Obscurcissement d'exposant
JP5407352B2 (ja) * 2009-01-19 2014-02-05 富士通株式会社 復号処理装置、復号処理プログラム、復号処理方法
US8635467B2 (en) 2011-10-27 2014-01-21 Certicom Corp. Integrated circuit with logic circuitry and multiple concealing circuits
US8334705B1 (en) 2011-10-27 2012-12-18 Certicom Corp. Analog circuitry to conceal activity of logic circuitry
CN102521544B (zh) * 2011-12-26 2014-09-10 飞天诚信科技股份有限公司 一种在cpu中抗能量攻击的模幂运算的实现方法
US10181944B2 (en) 2015-06-16 2019-01-15 The Athena Group, Inc. Minimizing information leakage during modular exponentiation and elliptic curve point multiplication
FR3094522B1 (fr) * 2019-03-29 2021-11-19 St Microelectronics Rousset Protection d’un calcul itératif
US11249726B2 (en) 2019-09-10 2022-02-15 Intel Corporation Integrated circuits with modular multiplication circuitry

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998052319A1 (fr) * 1997-05-12 1998-11-19 Yeda Research And Development Co. Ltd. Procede et dispositif ameliores permettant de proteger les logiques de cles publiques contre les attaques basees sur la sequence des operations et les fautes

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5978482A (en) * 1995-08-21 1999-11-02 International Business Machines Corporation Method and system for protection of digital information
US6748410B1 (en) * 1997-05-04 2004-06-08 M-Systems Flash Disk Pioneers, Ltd. Apparatus and method for modular multiplication and exponentiation based on montgomery multiplication
US6108425A (en) * 1997-06-30 2000-08-22 International Business Machines Corporation Method and apparatus for controlling the configuration of a cryptographic processor
US6304658B1 (en) * 1998-01-02 2001-10-16 Cryptography Research, Inc. Leak-resistant cryptographic method and apparatus
US6378072B1 (en) * 1998-02-03 2002-04-23 Compaq Computer Corporation Cryptographic system
US6285761B1 (en) * 1998-03-04 2001-09-04 Lucent Technologies, Inc. Method for generating pseudo-random numbers
US6307938B1 (en) * 1998-07-10 2001-10-23 International Business Machines Corporation Method, system and apparatus for generating self-validating prime numbers
US6490357B1 (en) * 1998-08-28 2002-12-03 Qualcomm Incorporated Method and apparatus for generating encryption stream ciphers

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998052319A1 (fr) * 1997-05-12 1998-11-19 Yeda Research And Development Co. Ltd. Procede et dispositif ameliores permettant de proteger les logiques de cles publiques contre les attaques basees sur la sequence des operations et les fautes

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
BRICKELL E F ET AL: "FAST EXPONENTIATION WITH PRECOMPUTATION (EXTENDED ABSTRACT)", ADVANCES IN CRYPTOLOGY- EUROCRYPT. INTERNATIONAL CONFERENCE ON THE THEORY AND APPLICATION OF CRYPTOGRAPHIC TECHNIQUES,DE,SPRINGER VERLAG, 24 May 1992 (1992-05-24), pages 200 - 207, XP000577415 *
DIMITROV V ET AL: "TWO ALGORITHMS FOR MODULAR EXPONENTIATION USING NONSTANDARD ARITHMETICS", IEICE TRANSACTIONS ON FUNDAMENTALS OF ELECTRONICS, COMMUNICATIONS AND COMPUTER SCIENCES,JP,INSTITUTE OF ELECTRONICS INFORMATION AND COMM. ENG. TOKYO, vol. E78-A, no. 1, 1 January 1995 (1995-01-01), pages 82 - 87, XP000495124, ISSN: 0916-8508 *
KOCHER P C: "TIMING ATTACKS ON IMPLEMENTATIONS OF DIFFIE-HELLMAN, RSA, DSS, AND OTHER SYSTEMS", PROCEEDINGS OF THE ANNUAL INTERNATIONAL CRYPTOLOGY CONFERENCE (CRYPTO),DE,BERLIN, SPRINGER, vol. CONF. 16, 1996, pages 104 - 113, XP000626590, ISBN: 3-540-61512-1 *

Also Published As

Publication number Publication date
FR2800478B1 (fr) 2001-11-30
EP1639447A1 (fr) 2006-03-29
WO2001031436A1 (fr) 2001-05-03
JP2003513491A (ja) 2003-04-08
US6973190B1 (en) 2005-12-06

Similar Documents

Publication Publication Date Title
FR2800478A1 (fr) Procede de securisation d&#39;un ensemble electronique de cryptographie a base d&#39;exponentiation modulaire contre les attaques par analyse physique
EP1068695B1 (fr) Procede de securisation d&#39;un ensemble electronique de cryptographie a cle secrete contre les attaques par analyse physique
EP1166494B1 (fr) Procedes de contre-mesure dans un composant electronique mettant en oeuvre un algorithme de cryptographie a cle publique de type courbe elliptique
EP1441313B1 (fr) Procédé cryptographique à clé publique pour la protection d&#39; une puce électronique contre la fraude
EP1745366B1 (fr) Procede de protection d&#34;un ensemble cryptographique par masquage homographique
CN1415147A (zh) 具有通过密钥再分进行存取保护的便携式数据存储介质
EP2296086B1 (fr) Protection d&#39;une génération de nombres premiers contre des attaques par canaux cachés
FR3015080A1 (fr) Verification d&#39;integrite de paire de cles cryptographiques
EP0795241B1 (fr) Procede de cryptographie a cle publique base sur le logarithme discret
EP1904921A1 (fr) Procede cryptographique pour la mise en oeuvre securisee d&#39;une exponentiation et composant associe
EP1224765B1 (fr) Procede de contre-mesure dans un composant electronique mettant en oeuvre un algorithme de cryptographie a cle publique de type rsa
KR100737667B1 (ko) 암호 체계의 개인 키 저장 및 복원 방법과 장치
EP1086547B1 (fr) Procede de securisation d&#39;un ou plusieurs ensembles electroniques mettant en oeuvre un algorithme crytographique avec cle secrete, et l&#39;ensemble electronique
WO2003014916A1 (fr) Procede securise de realisation d&#39;une operation d&#39;exponentiation modulaire
EP1520370B1 (fr) Procédé et dispositifs cryptographiques permettant d&#39;alleger les calculs au cours de transactions
FR2818846A1 (fr) Procede de contre-mesure dans un composant electronique mettant en oeuvre un algorithme de cryptographie
WO1998051038A1 (fr) Generateur pseudo-aleatoire base sur une fonction de hachage pour systemes cryptographiques necessitant le tirage d&#39;aleas
FR3010562A1 (fr) Procede de traitement de donnees et dispositif associe
FR3076013A1 (fr) Procede de traitement cryptographique, programme d’ordinateur et dispositif associes
FR2818473A1 (fr) Procedes de contre-mesure dans un composant electronique mettant en oeuvre un algorithme de cryptographie a cle publique de type rsa
FR2952774A1 (fr) Procede et dispositif permettant d&#39;optimiser le dechiffrement et la signature rsa pour mieux securiser les cartes bancaires et les telephones portables
WO2003013053A1 (fr) Procede de determination de la taille d&#39;un alea pour un schema de signature electronique
EP1398690A1 (fr) Procédé et système de génération de signature

Legal Events

Date Code Title Description
CA Change of address
TP Transmission of property
ST Notification of lapse

Effective date: 20090630