EP1493242A1 - Method for making secure an electronic entity with encrypted access - Google Patents

Method for making secure an electronic entity with encrypted access

Info

Publication number
EP1493242A1
EP1493242A1 EP03740554A EP03740554A EP1493242A1 EP 1493242 A1 EP1493242 A1 EP 1493242A1 EP 03740554 A EP03740554 A EP 03740554A EP 03740554 A EP03740554 A EP 03740554A EP 1493242 A1 EP1493242 A1 EP 1493242A1
Authority
EP
European Patent Office
Prior art keywords
result
key
subkey
iterative process
sub
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.)
Ceased
Application number
EP03740554A
Other languages
German (de)
French (fr)
Inventor
Christophe Giraud
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 France SAS
Original Assignee
Oberthur Card Systems SA France
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 Oberthur Card Systems SA France filed Critical Oberthur Card Systems SA France
Publication of EP1493242A1 publication Critical patent/EP1493242A1/en
Ceased 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/002Countermeasures against attacks on cryptographic mechanisms
    • H04L9/004Countermeasures against attacks on cryptographic mechanisms for fault attacks
    • 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
    • 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

Definitions

  • the invention relates to a. method for securing an electronic entity with encrypted access, such as for example a microcircuit card, the improvement more particularly aimed at detecting attacks known by the abbreviation DFA (Differential Fault Analysis, in English).
  • DFA Different Fault Analysis, in English
  • the invention is particularly aimed at securing known algorithms such as AES or DES.
  • Certain electronic entities with encrypted access are vulnerable to so-called DFA attacks consisting in disturbing the progress of the cryptographic algorithm so as to change the value of an intermediate result, to process the difference obtained between the message encrypted normally and the message encrypted with error and to deduce therefrom information on the secret key of the electronic entity.
  • Errors are very easy to produce on a microcircuit card, by intervening on the external environment, for example by causing a voltage peak, by subjecting the card to a light flash (in particular using a laser beam) , by suddenly varying the frequency of the external clock, etc ...
  • the invention offers a simple and effective defense against this type of attack.
  • the invention relates to a method for securing an electronic entity with encrypted access, which comprises means for executing a cryptographic algorithm consisting in applying to a input message a succession of groups of so-called "round" operations making intervene a series of respective sub-keys, successively elaborated by an iterative process implemented from an initial key, characterized in that it consists in memorizing the result of a step of said iterative process, in redoing at least one part of the steps of said iterative process until the recalculation of a result corresponding to that which has been memorized, to compare the value of said memorized result with the value of the corresponding recalculated result and to prohibit the broadcasting of an encrypted message resulting from the setting implementation of said algorithm if these two values are different.
  • a stored result can be one of the steps in the process known as key diversification process consisting in applying a non-linear function F to the result of the previous analogous step.
  • FIG. 1 is a diagram of an electronic entity such as a microcircuit card, capable of implementing the method of the invention
  • FIG. 2 is a flowchart illustrating the so-called AES algorithm
  • FIG. 3 is a flowchart illustrating the implementation of the invention as a complement in the execution of the AES.
  • FIG. 4 is a flowchart illustrating the DES algorithm to which the invention can also be applied.
  • an electronic entity 11 is shown, here forming a microcircuit card with its essential components, namely a set of contact pads 12, metallic, making it possible to connect the microcircuit 13 contained in the card to a reader. card, server or the like with which said microcircuit card will be able to exchange information after an authentication phase implementing a known secret key algorithm, for example the AES algorithm or the DES algorithm.
  • the microcircuit 13 is broken down into a microprocessor 14, some of whose accesses are connected to the contact pads, and a memory M coupled to the microprocessor.
  • an authentication phase is implemented in the card. This process is programmed in microcircuit 13 and part of the memory
  • the authentication phase implements an AES algorithm, the operation of which will be recalled with reference to FIG. 2.
  • the AES algorithm operates on the basis of an input message ME transmitted in clear by the outdoor unit to which the electronic entity is coupled.
  • the entity 11 also has a secret key K, stored, and the algorithm consists in transforming the message ME until obtaining an encrypted message MC following a certain number of transformations performed with the intervention of a certain number of subkeys Ko, KL K 2 , ..., K n - ⁇ , K n .
  • each sub-key is created from one or two successive results elaborated during the process of key extension by the function F.
  • the key K is coded on 192 bits. Consequently, the subkey Ko is extracted from the first two thirds of the key K, the subkey Ki is extracted from the other third of the key K and from the first thirds of the intermediate result Ri of the first transformation of this key by the function F, the subkey K 2 is extracted from the last two thirds of the intermediate result Ri, and so on until the elaboration of the last subkey K n .
  • the key K has been coded on 192 bits and the attack which has been described in broad outline above does not make it possible to find the key since the result R m is not entirely known. We cannot therefore "go back" to the key K from this incompletely known result.
  • security has been considerably weakened since partial information on the key is available, which makes other attacks (for example of the DPA type) known per se more effective.
  • the counter to this type of attack consists in memorizing an intermediate result Rj, for example R m , or a subkey, for example here the last subkey K n , to redo at least one part of the stages of elaboration of the succession of said sub-keys, that is to say essentially the process of extension of the key by the function F, until the recalculation of a result corresponding to that which has been stored.
  • Rj intermediate result
  • K n for example here the last subkey K n
  • FIG. 3 where the AES algorithm is completed (according to one embodiment) by redoing all of the steps for developing the succession of said sub-keys and more particularly of the process of extending the key K.
  • the AES algorithm described with reference to FIG. 2 is executed for the first time, the result is an encrypted message MC.
  • the last subkey K n is stored.
  • the previously stored value and the new value are compared (equality test). If the two values are equal, the output of the message MC is authorized. If the two values do not coincide, the MC value is not retransmitted to the outside and an error message can be issued.
  • the whole process of extending the key is repeated until the new calculation of the last subkey K n is obtained.
  • the invention is not limited to securing the AES algorithm.
  • the DES algorithm also known, is described in FIG. 4. Briefly, in this algorithm, the process of extending the key K is as follows. The key K (64 bits) is subjected to a P1 permutation on the bits and reduced to 56 bits. The result is a word 20 split into two 28-bit parts. Each of them is subjected to a permutation R (circular rotation on the bits) of 1 or 2 bits depending on the case.
  • the two results are combined to form a new word 21 of 56 bits subjected to a new permutation P2 and concatenated to 48 bits to give a subkey Ki.
  • the 56-bit word 21 is processed so as to undergo two circular rotations R to result in a new word 22, again subjected to the permutation P2 to generate a subkey K2 and so on until K16.
  • the 64-bit ME input message undergoes the following transformations. It is first subjected to a P3 permutation on the bits and the result is subjected to functions constituting the ROUND 1 involving the subkey K1.
  • the invention also relates to any electronic entity, in particular any microcircuit card, comprising means for implementing the method described above.

Landscapes

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

Abstract

The invention concerns a method for protecting an electronic entity with encrypted access, against DFA (Differential Fault Analysis) attacks which consists in: storing the result of a selected step (Rm, Kn) of an iterative process forming part of the cryptographic algorithm and in performing once more at least part of the steps of said iterative process up to a new computation of a result corresponding to the one which has been stored, comparing the two results and denying distribution of an encrypted message (MC) if they are different.

Description

Procédé de sécurisation d'une entité électronique à accès crypté Method for securing an electronic entity with encrypted access
L'invention se rapporte à un. procédé de sécurisation d'une entité électronique à accès crypté, telle que par exemple une carte à microcircuit, le perfectionnement visant plus particulièrement à détecter les attaques connues sous l'abréviation DFA (Differential Fault Analysis, en anglais). L'invention vise particulièrement à sécuriser des algorithmes connus tels que l'AES ou le DES.The invention relates to a. method for securing an electronic entity with encrypted access, such as for example a microcircuit card, the improvement more particularly aimed at detecting attacks known by the abbreviation DFA (Differential Fault Analysis, in English). The invention is particularly aimed at securing known algorithms such as AES or DES.
Certaines entités électroniques à accès crypté, notamment les cartes à microcircuit, sont vulnérables à des attaques dites DFA consistant à perturber le déroulement de l'algorithme cryptographique de façon à changer la valeur d'un résultat intermédiaire, à traiter la différence obtenue entre le message chiffré normalement et le message chiffré avec erreur et à en déduire des informations sur la clé secrète de l'entité électronique. Les erreurs sont très faciles à produire sur une carte à microcircuit, en intervenant sur l'environnement extérieur, par exemple en provoquant un pic de tension, en soumettant la carte à un éclair lumineux (notamment à l'aide d'un faisceau laser), en faisant varier brutalement la fréquence de l'horloge extérieure, etc...Certain electronic entities with encrypted access, in particular microcircuit cards, are vulnerable to so-called DFA attacks consisting in disturbing the progress of the cryptographic algorithm so as to change the value of an intermediate result, to process the difference obtained between the message encrypted normally and the message encrypted with error and to deduce therefrom information on the secret key of the electronic entity. Errors are very easy to produce on a microcircuit card, by intervening on the external environment, for example by causing a voltage peak, by subjecting the card to a light flash (in particular using a laser beam) , by suddenly varying the frequency of the external clock, etc ...
Parmi les algorithmes les plus utilisés, on peut citer le DES (Data Encryption Standard, en anglais) et surtout l'AES (Advanced Encryption Standard, en anglais). On rappelle que les deux algorithmes AES et DES ont en commun d'appliquer à un message d'entrée une succession de groupes d'opérations dits "rounds" sous le contrôle d'une série de sous-clés respectives, successivement élaborées à partir d'une clé initiale secrète, spécifique de l'entité électronique considérée. C'est cette clé initiale (notée K ci-après) que le fraudeur tente de reconstituer. Une partie de l'algorithme est consacrée à l'élaboration des sous-clés en mettant en œuvre un processus d'extension de clé par une fonction F, non linéaire dans le cas de l'AES. La fonction est appliquée à ladite clé initiale, puis à nouveau au résultat de l'application de ladite fonction et ainsi de suite. Les sous-clés sont élaborées à partir de cette succession de résultats intermédiaires issus de la clé initiale K.Among the most used algorithms, we can cite the DES (Data Encryption Standard, in English) and especially the AES (Advanced Encryption Standard, in English). It is recalled that the two algorithms AES and DES have in common to apply to a message of entry a succession of groups of operations called "rounds" under the control of a series of respective sub-keys, successively developed from '' a secret initial key, specific to the electronic entity considered. It is this initial key (noted K below) that the fraudster attempts to reconstruct. Part of the algorithm is devoted to the development of sub-keys by implementing a key extension process by a function F, non-linear in the case of AES. The function is applied to said initial key, then again to the result of the application of said function and so on. The subkeys are developed from this succession of intermediate results from the initial key K.
Jusqu'à présent, les attaques de type DFA sont considérées comme inexploitables en pratique vis-à-vis de l'algorithme de type AES. Cependant, des études à l'origine de l'invention ont permis de mettre en évidence qu'une triple attaque du type DFA, en synchronisme avec certaines applications de la fonction F et le début du dernier "round", permet de retrouver tous les octets de la dernière sous-clé dans le cas où ladite clé d'entrée K est codée sur 128 bits, ce qui est actuellement le cas pour la plupart des systèmes où l'algorithme AES est utilisé. La connaissance de ces informations permet de retrouver la clé d'entrée.Until now, DFA attacks have been considered unusable in practice with respect to the AES algorithm. However, studies at the origin of the invention have made it possible to demonstrate that a triple DFA type attack, in synchronism with certain applications of the F function and the start of the last "round", makes it possible to find all the bytes of the last subkey in the case where said input key K is coded on 128 bits , which is currently the case for most systems where the AES algorithm is used. Knowing this information allows you to find the entry key.
L'invention offre une parade simple et efficace à ce type d'attaque. L'invention concerne un procédé de sécurisation d'une entité électronique à accès crypté, laquelle comprend des moyens d'exécution d'un algorithme cryptographique consistant à appliquer à un message d'entrée une succession de groupes d'opérations dits "rounds" faisant intervenir une série de sous-clés respectives, successivement élaborées par un processus itératif mis en œuvre à partir d'une clé initiale, caractérisé en ce qu'il consiste à mémoriser le résultat d'une étape dudit processus itératif, à refaire au moins une partie des étapes dudit processus itératif jusqu'au recalcul d'un résultat correspondant à celui qui a été mémorisé, à comparer la valeur dudit résultat mémorisé à la valeur du résultat recalculé correspondant et à interdire la diffusion d'un message crypté résultant de la mise en œuvre dudit algorithme si ces deux valeurs sont différentes.The invention offers a simple and effective defense against this type of attack. The invention relates to a method for securing an electronic entity with encrypted access, which comprises means for executing a cryptographic algorithm consisting in applying to a input message a succession of groups of so-called "round" operations making intervene a series of respective sub-keys, successively elaborated by an iterative process implemented from an initial key, characterized in that it consists in memorizing the result of a step of said iterative process, in redoing at least one part of the steps of said iterative process until the recalculation of a result corresponding to that which has been memorized, to compare the value of said memorized result with the value of the corresponding recalculated result and to prohibit the broadcasting of an encrypted message resulting from the setting implementation of said algorithm if these two values are different.
En effet, si une erreur, due à une attaque DFA, intervient pendant le processus itératif d'élaboration des sous-clés, alors le résultat mémorisé et le résultat recalculé correspondant sont forcément différents car il est impossible de reproduire deux fois de suite la même "erreur" dans la pratique.Indeed, if an error, due to a DFA attack, occurs during the iterative process of elaboration of the subkeys, then the memorized result and the corresponding recalculated result are necessarily different because it is impossible to reproduce the same twice "error" in practice.
Par exemple, un résultat mémorisé, dit résultat intermédiaire, peut être l'une des étapes du processus dit de diversification de clé consistant à appliquer une fonction F non linéaire au résultat de l'étape analogue précédente. On peut aussi mémoriser l'une des sous-clés et recalculer cette sous-clé à partir d'une étape antérieure dudit processus itératif. Par exemple, on mémorise la dernière sous-clé.For example, a stored result, called an intermediate result, can be one of the steps in the process known as key diversification process consisting in applying a non-linear function F to the result of the previous analogous step. One can also store one of the sub-keys and recalculate this sub-key from a previous step of said iterative process. For example, the last subkey is stored.
L'invention sera mieux comprise et d'autres avantages de celle-ci apparaîtront plus clairement à la lumière de la description qui va suivre, donnée uniquement à titre d'exemple et faite en référence aux dessins annexés dans lesquels : - la figure 1 est un schéma d'une entité électronique telle qu'une carte à microcircuit, susceptible de mettre en œuvre le procédé de l'invention ;The invention will be better understood and other advantages thereof will appear more clearly in the light of the description which follows, given solely by way of example and made with reference to the appended drawings in which: - Figure 1 is a diagram of an electronic entity such as a microcircuit card, capable of implementing the method of the invention;
- la figure 2 est un organigramme illustrant l'algorithme dit AES ;- Figure 2 is a flowchart illustrating the so-called AES algorithm;
- la figure 3 est un organigramme illustrant la mise en œuvre de l'invention à titre de complément dans l'exécution de l'AES ; et- Figure 3 is a flowchart illustrating the implementation of the invention as a complement in the execution of the AES; and
- la figure 4 est un organigramme illustrant l'algorithme DES auquel l'invention peut aussi s'appliquer.- Figure 4 is a flowchart illustrating the DES algorithm to which the invention can also be applied.
Sur la figure 1 , on a représenté une entité électronique 11 , formant ici une carte à microcircuit avec ses composants essentiels, à savoir un ensemble de plages de contact 12, métalliques, permettant de connecter le microcircuit 13 contenu dans la carte à un lecteur de carte, serveur ou analogue avec lequel ladite carte à microcircuit va pouvoir échanger des informations après une phase d'authentification mettant en œuvre un algorithme connu à clé secrète, par exemple l'algorithme AES ou l'algorithme DES. Classiquement, le microcircuit 13 se décompose en un microprocesseur 14, dont certains accès sont connectés aux plages de contact, et une mémoire M couplée au microprocesseur. Lorsque la carte est couplée à une unité extérieure pour remplir une fonction donnée (transaction financière, accès à un service téléphonique ou télématique, contrôle d'accès, etc .), une phase d'authentification est mise en œuvre dans la carte. Ce processus est programmé dans le microcircuit 13 et une partie de la mémoireIn FIG. 1, an electronic entity 11 is shown, here forming a microcircuit card with its essential components, namely a set of contact pads 12, metallic, making it possible to connect the microcircuit 13 contained in the card to a reader. card, server or the like with which said microcircuit card will be able to exchange information after an authentication phase implementing a known secret key algorithm, for example the AES algorithm or the DES algorithm. Conventionally, the microcircuit 13 is broken down into a microprocessor 14, some of whose accesses are connected to the contact pads, and a memory M coupled to the microprocessor. When the card is coupled to an outdoor unit to fulfill a given function (financial transaction, access to a telephone or telematics service, access control, etc.), an authentication phase is implemented in the card. This process is programmed in microcircuit 13 and part of the memory
M lui est dédiée.M is dedicated to him.
Par exemple, la phase d'authentification met en œuvre un algorithme AES dont le fonctionnement va être rappelé en référence à la figure 2. L'algorithme AES s'opère à partir d'un message d'entrée ME transmis en clair par l'unité extérieure à laquelle l'entité électronique se trouve couplée. L'entité 11 possède aussi une clé secrète K, mémorisée, et l'algorithme consiste à transformer le message ME jusqu'à obtenir un message chiffré MC à la suite d'un certain nombre de transformations opérées avec intervention d'un certain nombre de sous-clés Ko, KL K2, ..., Kn-ι, Kn. D'autre part, une fonction non linéaire F est programmée dans l'entité électronique pour s'appliquer successivement, d'abord à la clé K, puis au résultat R^i la transformation de la clé K par la fonction F, puis au résultat R2 de la transformation du résultat Ri par la même fonction F et ainsi de suite. Les différentes sous-clés K0 ... Kn sont extraites de ce processus d'extension de la clé K par la fonction F. Plus précisément, on sait que la clé K peut être un mot de 128 bits, 192 bits ou 256 bits. Le message d'entrée ME est un mot de 128 bits. Toutes les combinaisons sont possibles et l'homme du métier choisit la combinaison qui représente le meilleur compromis, compte tenu du contexte, entre la rapidité d'exécution et le niveau de sécurité requis. Actuellement cependant, la plupart des algorithmes AES effectivement mis en œuvre font appel à une clé K de 128 bits. Les sous-clés Ko ... Kn doivent être au format du message d'entrée. C'est pourquoi, chaque sous-clé est créée à partir d'un ou deux résultats successifs élaborés au cours du processus d'extension de clé par la fonction F. Dans l'exemple décrit, la clé K est codée sur 192 bits. Par conséquent, la sous-clé Ko est extraite des deux premiers tiers de la clé K, la sous-clé Ki est extraite de l'autre tiers de la clé K et du premiers tiers du résultat intermédiaire Ri de la première transformation de cette clé par la fonction F, la sous-clé K2 est extraite des deux derniers tiers du résultat intermédiaire R-i, et ainsi de suite jusqu'à l'élaboration de la dernière sous-clé Kn.For example, the authentication phase implements an AES algorithm, the operation of which will be recalled with reference to FIG. 2. The AES algorithm operates on the basis of an input message ME transmitted in clear by the outdoor unit to which the electronic entity is coupled. The entity 11 also has a secret key K, stored, and the algorithm consists in transforming the message ME until obtaining an encrypted message MC following a certain number of transformations performed with the intervention of a certain number of subkeys Ko, KL K 2 , ..., K n -ι, K n . On the other hand, a nonlinear function F is programmed in the electronic entity to apply successively, first to the key K, then to the result R ^ i the transformation of the key K by the function F, then to the result R 2 of the transformation of the result Ri by the same function F and so on. The different subkeys K 0 ... K n are extracted from this process of extension of the key K by the function F. More precisely, it is known that the key K can be a word of 128 bits, 192 bits or 256 bits. The ME input message is a 128 bit word. All combinations are possible and a person skilled in the art chooses the combination which represents the best compromise, taking into account the context, between the speed of execution and the level of security required. Currently, however, most of the AES algorithms actually implemented use a 128-bit K key. The Ko ... K n subkeys must be in the format of the input message. This is why, each sub-key is created from one or two successive results elaborated during the process of key extension by the function F. In the example described, the key K is coded on 192 bits. Consequently, the subkey Ko is extracted from the first two thirds of the key K, the subkey Ki is extracted from the other third of the key K and from the first thirds of the intermediate result Ri of the first transformation of this key by the function F, the subkey K 2 is extracted from the last two thirds of the intermediate result Ri, and so on until the elaboration of the last subkey K n .
Du côté du traitement du message d'entrée, les opérations sont les suivantes. Ledit message d'entrée ME est combiné à la sous-clé Ko par une fonction ou exclusif 16. Après quoi, le résultat est soumis à un groupe d'opérations (appelé ici ROUND 1 ) avec intervention de la sous-clé K-|. Puis, le résultat est soumis à nouveau à un groupe d'opérations dit ROUND 2 avec intervention de la sous-clé K2, jusqu'à ROUNDn_ι, dit dernier ROUND, avec intervention de la sous-clé Kn_ι. Tous les "ROUNDS", de 1 à n-1 , sont composés de quatre transformations. Un ROUNDn, dit ROUND final avec intervention de la sous-clé Kn comporte seulement trois transformations. Le résultat de ce round final est un message chiffré MC qui est renvoyé vers l'extérieur.On the processing side of the input message, the operations are as follows. Said input message ME is combined with the subkey Ko by a function or exclusive 16. After which, the result is subjected to a group of operations (here called ROUND 1) with intervention of the subkey K- | . Then, the result is again submitted to a group of operations called ROUND 2 with intervention of the subkey K 2 , up to ROUND n _ι, said last ROUND, with intervention of the subkey K n _ι. All "ROUNDS", from 1 to n-1, are composed of four transformations. A ROUND n , known as final ROUND with intervention of the subkey K n comprises only three transformations. The result of this final round is an encrypted message MC which is sent outwards.
A la base de l'invention, on a mis en évidence que, si on est capable de provoquer des perturbations comme indiqué à des moments précis du déroulement de l'algorithme AES décrit ci-dessus, on peut retrouver tous les octets d'une sous-clé et plus particulièrement selon l'exemple, de la dernière sous-clé Kn de la façon suivante :On the basis of the invention, it has been demonstrated that, if one is capable of causing disturbances as indicated at precise times in the course of the AES algorithm described above, one can find all the bytes of a subkey and more particularly according to the example, of the last subkey K n as follows:
- si on provoque la perturbation au moment de l'application de la dernière fonction F, on arrive à retrouver des informations sur l'avant-dernière extension de la clé par la fonction F, à savoir les quatre derniers octets de l'avant-dernier résultat Rm.ι.- if one causes the disturbance at the time of the application of the last function F, one arrives at finding information on the penultimate extension of the key by the function F, namely the last four bytes of the penultimate result R m .
- si on parvient aussi à produire une perturbation au moment de l'exécution de l'avant-dernière extension par la fonction F, on peut retrouver les quatre octets voisins de Rm_ι.- if we also manage to produce a disturbance at the time of the execution of the penultimate extension by the function F, we can find the four neighboring bytes of R m _ι.
- si on provoque une perturbation sur le début du dernier round (ROUNDn-ι), on arrive à retrouver 8 octets de la dernière extension de clé par la fonction F, c'est-à-dire Rm. Ces octets appartiennent à la sous-clé Kn.- if we cause a disturbance at the start of the last round (ROUND n -ι), we manage to find 8 bytes of the last key extension by the function F, that is to say R m . These bytes belong to the subkey K n .
- en traitant les résultats précédents, on arrive encore à retrouver six octets de plus répartis dans la dernière extension de clé Rm par la fonction F.- by processing the previous results, we still manage to find six more bytes distributed in the last key extension R m by the function F.
Ces octets appartiennent aussi à la sous-clé Kn.These bytes also belong to the subkey K n .
Pour retrouver les deux derniers octets de la sous-clé Kn, il est envisageable d'étudier toutes les possibilités jusqu'à retrouver ces deux derniers octets. Par conséquent, si la clé K avait été codée sur 128 bits, elle aurait pu être retrouvée à coup sûr par la seule mise en œuvre de l'attaque décrite ci-dessus. On rappelle que dans la majorité des algorithmes AES mis en œuvre actuellement, la clé K est effectivement codée sur 128 bits et il n'y a pas de différence entre les résultats intermédiaires Ri, R2 ... Rm et les sous-clés Ki, K2 ... Kn (dans ce cas, n = m) puisque chaque sous-clé est constituée de la totalité d'un résultat intermédiaire Rj correspondant. Dans l'exemple décrit cependant, la clé K a été codée sur 192 bits et l'attaque qui a été décrite dans ses grandes lignes ci-dessus ne permet pas de retrouver la clé puisque le résultat Rm n'est pas entièrement connu. On ne peut donc pas "remonter" jusqu'à la clé K à partir de ce résultat incomplètement connu. Cependant, on a affaibli considérablement la sécurité puisqu'on dispose d'informations partielles sur la clé, ce qui rend plus efficaces d'autres attaques (par exemple du type DPA) connues en soi.To find the last two bytes of the subkey K n , it is possible to study all the possibilities until finding these last two bytes. Consequently, if the key K had been coded on 128 bits, it could have been found for sure by the sole implementation of the attack described above. It is recalled that in the majority of the AES algorithms currently implemented, the key K is effectively coded on 128 bits and there is no difference between the intermediate results Ri, R 2 ... R m and the subkeys Ki, K 2 ... K n (in this case, n = m) since each subkey is made up of the whole of a corresponding intermediate result Rj. In the example described, however, the key K has been coded on 192 bits and the attack which has been described in broad outline above does not make it possible to find the key since the result R m is not entirely known. We cannot therefore "go back" to the key K from this incompletely known result. However, security has been considerably weakened since partial information on the key is available, which makes other attacks (for example of the DPA type) known per se more effective.
Quoi qu'il en soit, la parade à ce type d'attaque consiste à mémoriser un résultat intermédiaire Rj, par exemple Rm, ou une sous-clé, par exemple ici la dernière sous-clé Kn, à refaire au moins une partie des étapes d'élaboration de la succession desdites sous-clés, c'est-à-dire essentiellement le processus d'extension de clé par la fonction F, jusqu'au recalcul d'un résultat correspondant à celui qui a été mémorisé. A partir de ce moment, on dispose de deux valeurs (de résultat intermédiaire ou de sous-clé) qui doivent être identiques si l'entité électronique n'a été soumise à aucune attaque du type DFA. Il suffit de comparer la valeur du résultat ou sous-clé mémorisé à la valeur du résultat ou sous-clé recalculé correspondant et interdire la diffusion du message crypté MC issu du ROUND final si ces deux valeurs sont différentes. C'est ce qu'illustre la figure 3 où l'algorithme AES est complété (selon un mode de réalisation) en refaisant la totalité des étapes d'élaboration de la succession desdites sous-clés et plus particulièrement du processus d'extension de la clé K. Selon cet exemple, l'algorithme AES décrit en référence à la figure 2 est exécuté une première fois, le résultat est un message crypté MC. La dernière sous-clé Kn est mémorisée. Ensuite, on refait tout le processus d'extension de clé par la fonction F à partir de la clé K secrète de l'entité. Ceci aboutit à déterminer une nouvelle valeur de Kn. La valeur précédemment mémorisée et la nouvelle valeur sont comparées (test d'égalité). Si les deux valeurs sont égales, on autorise la sortie du message MC. Si les deux valeurs ne coïncident pas, la valeur MC n'est pas retransmise à l'extérieur et on peut émettre un message d'erreur.Anyway, the counter to this type of attack consists in memorizing an intermediate result Rj, for example R m , or a subkey, for example here the last subkey K n , to redo at least one part of the stages of elaboration of the succession of said sub-keys, that is to say essentially the process of extension of the key by the function F, until the recalculation of a result corresponding to that which has been stored. From this moment, we have two values (intermediate result or subkey) which must be identical if the entity electronics has not been subjected to any DFA attack. It suffices to compare the value of the result or stored subkey to the value of the corresponding recalculated result or subkey and prohibit the broadcast of the encrypted message MC from the final ROUND if these two values are different. This is illustrated in FIG. 3 where the AES algorithm is completed (according to one embodiment) by redoing all of the steps for developing the succession of said sub-keys and more particularly of the process of extending the key K. According to this example, the AES algorithm described with reference to FIG. 2 is executed for the first time, the result is an encrypted message MC. The last subkey K n is stored. Then, we repeat the whole process of key extension by the function F from the secret key K of the entity. This results in determining a new value of K n . The previously stored value and the new value are compared (equality test). If the two values are equal, the output of the message MC is authorized. If the two values do not coincide, the MC value is not retransmitted to the outside and an error message can be issued.
Dans l'exemple qui vient d'être décrit, on refait la totalité du processus d'extension de clé jusqu'à obtenir le nouveau calcul de la dernière sous-clé Kn. Comme on l'a vu plus haut, on peut mémoriser un résultat intermédiaire Ri ou sous-clé, quelconque et refaire au moins une partie des étapes d'élaboration de la succession des sous-clés jusqu'au recalcul d'un résultat intermédiaire ou sous-clé correspondant à celui qui a été mémorisé. D'une façon générale, on a avantage, si on ne refait pas la totalité du cycle d'extension de clé par la fonction F, à refaire au moins une partie finale des étapes d'élaboration de la succession desdites sous-clés, c'est-à-dire plus particulièrement une partie finale du processus d'extension de clé par la fonction F, jusqu'à obtenir un second calcul du dernier résultat intermédiaire Rm ou de la dernière sous-clé.In the example which has just been described, the whole process of extending the key is repeated until the new calculation of the last subkey K n is obtained. As we saw above, we can memorize any intermediate result Ri or subkey, and redo at least part of the stages of elaboration of the succession of subkeys until the recalculation of an intermediate result or subkey corresponding to that which has been memorized. In general, it is advantageous, if the entire key extension cycle is not repeated by the function F, to redo at least one final part of the steps for developing the succession of said sub-keys, c 'is to say more particularly a final part of the process of extension of key by the function F, until obtaining a second calculation of the last intermediate result R m or of the last subkey.
Si on ne refait pas l'intégralité du processus itératif d'extension de clé (à partir de la clé K), il faut évidemment mémoriser le résultat intermédiaire (ou la sous-clé) d'où on repart. L'invention n'est pas limitée à la sécurisation de l'algorithme AES. A titre d'exemple, l'algorithme DES, également connu, est décrit à la figure 4. Brièvement, dans cet algorithme, le processus d'extension de la clé K est le suivant. La clé K (64 bits) est soumise à une permutation P1 sur les bits et réduite à 56 bits. Le résultat est un mot 20 partagé en deux parties de 28 bits. Chacune d'elles est soumise à une permutation R (rotation circulaire sur les bits) de 1 ou 2 bits selon les cas. Les deux résultats sont rassemblés pour former un nouveau mot 21 de 56 bits soumis à une nouvelle permutation P2 et concaténé à 48 bits pour donner une sous-clé Ki. Par ailleurs, le mot 21 de 56 bits est traité de façon à subir deux rotations circulaires R pour aboutir à un nouveau mot 22, à nouveau soumis à la permutation P2 pour engendrer une sous-clé K2 et ainsi de suite jusqu'à K16. Par ailleurs, le message d'entrée ME de 64 bits subit les transformations suivantes. II est d'abord soumis à une permutation P3 sur les bits et le résultat est soumis à des fonctions constituant le ROUND 1 faisant intervenir la sous-clé K1. On met ensuite en œuvre d'autres rounds successifs faisant intervenir d'autres sous-clés correspondantes (jusqu'à la sous-clé K16) et le résultat du dernier round est soumis à une permutation inverse P3". Le résultat de cette permutation inverse est le message chiffré MC destiné à être renvoyé. On conçoit que la structure générale de l'algorithme DES qui vient d'être rappelée ci-dessus se prête bien à la mise en œuvre de l'invention. Il suffit par exemple de mémoriser la sous-clé K16 et de refaire tout ou partie du processus de diversification de la clé K composé de la permutation P1 et des rotations R. Le test peut même être réalisé sur la valeur du dernier résultat intermédiaire (mot 36) avant la dernière permutation P2. Dans ce cas, c'est ce dernier résultat qui est mémorisé et non pas la sous-clé K16.If you do not redo the entire iterative process of key extension (from key K), you obviously have to memorize the intermediate result (or the subkey) from which you start again. The invention is not limited to securing the AES algorithm. By way of example, the DES algorithm, also known, is described in FIG. 4. Briefly, in this algorithm, the process of extending the key K is as follows. The key K (64 bits) is subjected to a P1 permutation on the bits and reduced to 56 bits. The result is a word 20 split into two 28-bit parts. Each of them is subjected to a permutation R (circular rotation on the bits) of 1 or 2 bits depending on the case. The two results are combined to form a new word 21 of 56 bits subjected to a new permutation P2 and concatenated to 48 bits to give a subkey Ki. Furthermore, the 56-bit word 21 is processed so as to undergo two circular rotations R to result in a new word 22, again subjected to the permutation P2 to generate a subkey K2 and so on until K16. In addition, the 64-bit ME input message undergoes the following transformations. It is first subjected to a P3 permutation on the bits and the result is subjected to functions constituting the ROUND 1 involving the subkey K1. We then implement other successive rounds involving other corresponding sub-keys (up to sub-key K16) and the result of the last round is subjected to a reverse permutation P3 " . The result of this inverse permutation is the encrypted message MC intended to be sent back. We can see that the general structure of the DES algorithm which has just been recalled above lends itself well to the implementation of the invention. sub-key K16 and redo all or part of the process of diversification of the key K composed of the permutation P1 and the rotations R. The test can even be carried out on the value of the last intermediate result (word 36) before the last permutation P2 In this case, it is this last result which is memorized and not the sub-key K16.
Bien entendu, l'invention concerne aussi toute entité électronique, notamment toute carte à microcircuit, comportant des moyens de mise en œuvre du procédé décrit ci-dessus. Of course, the invention also relates to any electronic entity, in particular any microcircuit card, comprising means for implementing the method described above.

Claims

REVENDICATIONS
1. Procédé de sécurisation d'une entité électronique à accès crypté, laquelle comprend des moyens d'exécution d'un algorithme cryptographique consistant à appliquer à un message d'entrée une succession de groupes d'opérations dits "rounds" faisant intervenir une série de sous-clés (Ko ... Kn) respectives, successivement élaborées par un processus itératif mis en œuvre à partir d'une dé initiale (K), caractérisé en ce qu'il consiste à mémoriser un résultat d'une étape intermédiaire (Rm, Kn) dudit processus itératif, à refaire au moins une partie des étapes dudit processus itératif jusqu'au recalcul d'un résultat correspondant à celui qui a été mémorisé, à comparer la valeur dudit résultat mémorisé à la valeur du résultat recalculé correspondant et à interdire la diffusion d'un message crypté (MC) résultant de la mise en œuvre dudit algorithme si ces deux valeurs sont différentes. 1. Method for securing an electronic entity with encrypted access, which comprises means for executing a cryptographic algorithm consisting in applying to a input message a succession of groups of operations called "rounds" involving a series respective sub-keys (Ko ... K n ), successively developed by an iterative process implemented from an initial die (K), characterized in that it consists in memorizing a result of an intermediate step (R m , K n ) of said iterative process, to repeat at least part of the steps of said iterative process until the recalculation of a result corresponding to that which has been stored, to compare the value of said stored result with the value of the result recalculated corresponding and to prohibit the broadcast of an encrypted message (MC) resulting from the implementation of said algorithm if these two values are different.
2. Procédé selon la revendication 1 , caractérisé en ce qu'il consiste à mémoriser la valeur d'une sous-clé (Kn) et à refaire au moins une partie des étapes dudit processus itératif jusqu'au recalcul d'une sous-clé correspondant à ladite sous-clé mémorisée.2. Method according to claim 1, characterized in that it consists in memorizing the value of a subkey (K n ) and in redoing at least part of the steps of said iterative process until the recalculation of a sub- key corresponding to said stored subkey.
3. Procédé selon la revendication 1 , caractérisé en ce qu'il consiste à mémoriser la valeur d'un résultat intermédiaire (Rm) dudit processus itératif et à refaire au moins une partie dudit processus itératif jusqu'au recalcul d'un résultat intermédiaire correspondant à celui qui a été mémorisé.3. Method according to claim 1, characterized in that it consists in memorizing the value of an intermediate result (R m ) of said iterative process and in redoing at least part of said iterative process until the recalculation of an intermediate result corresponding to the one that has been memorized.
4. Procédé selon la revendication 2, caractérisé en ce qu'il consiste à mémoriser la valeur de la dernière sous-clé (Kn) et à refaire au moins une partie finale des étapes d'élaboration de la succession desdites sous-clés jusqu'à obtenir un second calcul de ladite dernière sous-clé.4. Method according to claim 2, characterized in that it consists in memorizing the value of the last sub-key (K n ) and in redoing at least one final part of the stages of elaboration of the succession of said sub-keys until 'to obtain a second calculation of said last subkey.
5. Procédé selon la revendication 4, caractérisé en ce qu'il consiste à refaire la totalité des étapes d'élaboration de la succession desdites sous-clés.5. Method according to claim 4, characterized in that it consists in redoing all the steps for developing the succession of said sub-keys.
6. Procédé selon l'une des revendications précédentes, caractérisé en ce qu'il s'applique à un algorithme dit AES, connu en soi.6. Method according to one of the preceding claims, characterized in that it applies to an algorithm known as AES, known per se.
7. Procédé selon l'une des revendications 1 à 6, caractérisé en ce qu'il s'applique à un algorithme dit DES, connu en soi. 7. Method according to one of claims 1 to 6, characterized in that it applies to a so-called DES algorithm, known per se.
8. Entité électronique autonome caractérisée en ce qu'elle comporte des moyens de mise en œuvre (13) du procédé selon l'une des revendications précédentes.8. Autonomous electronic entity characterized in that it comprises means for implementing (13) the method according to one of the preceding claims.
9. Entité électronique selon la revendication 8, caractérisée en ce qu'elle est agencée sous forme de carte à microcircuit. 9. Electronic entity according to claim 8, characterized in that it is arranged in the form of a microcircuit card.
EP03740554A 2002-04-08 2003-04-02 Method for making secure an electronic entity with encrypted access Ceased EP1493242A1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR0204341 2002-04-08
FR0204341A FR2838262B1 (en) 2002-04-08 2002-04-08 METHOD FOR SECURING ELECTRONICS WITH ENCRYPTED ACCESS
PCT/FR2003/001032 WO2003085881A1 (en) 2002-04-08 2003-04-02 Method for making secure an electronic entity with encrypted access

Publications (1)

Publication Number Publication Date
EP1493242A1 true EP1493242A1 (en) 2005-01-05

Family

ID=28052188

Family Applications (1)

Application Number Title Priority Date Filing Date
EP03740554A Ceased EP1493242A1 (en) 2002-04-08 2003-04-02 Method for making secure an electronic entity with encrypted access

Country Status (7)

Country Link
US (2) US7796750B2 (en)
EP (1) EP1493242A1 (en)
JP (2) JP2005522912A (en)
AU (1) AU2003260714A1 (en)
CA (1) CA2480896C (en)
FR (1) FR2838262B1 (en)
WO (1) WO2003085881A1 (en)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2838262B1 (en) * 2002-04-08 2004-07-30 Oberthur Card Syst Sa METHOD FOR SECURING ELECTRONICS WITH ENCRYPTED ACCESS
DE10328860B4 (en) * 2003-06-26 2008-08-07 Infineon Technologies Ag Device and method for encrypting data
US7937595B1 (en) * 2003-06-27 2011-05-03 Zoran Corporation Integrated encryption/decryption functionality in a digital TV/PVR system-on-chip
KR100546375B1 (en) * 2003-08-29 2006-01-26 삼성전자주식회사 Interdependent parallel processing hardware cryptographic engine providing for enhanced self fault-detecting and hardware encryption processing method thereof
DE102004008901A1 (en) * 2004-02-24 2005-09-15 Giesecke & Devrient Gmbh Safe result calculation
FR2867635B1 (en) * 2004-03-11 2006-09-22 Oberthur Card Syst Sa SECURE DATA PROCESSING METHOD, BASED IN PARTICULAR ON A CRYPTOGRAPHIC ALGORITHM
FR2875657B1 (en) * 2004-09-22 2006-12-15 Trusted Logic Sa METHOD OF SECURING CRYPTOGRAPHIC TREATMENTS THROUGH LURES.
EP1646174A1 (en) * 2004-10-07 2006-04-12 Axalto SA Method and apparatus for generating cryptographic sets of instructions automatically and code generation
KR100817048B1 (en) 2005-03-05 2008-03-26 삼성전자주식회사 Method and apparatus of Different Faults AnalysisDFA countermeasure based on different point representation for Elliptic Curve CryptographyECC
US20070019805A1 (en) * 2005-06-28 2007-01-25 Trustees Of Boston University System employing systematic robust error detection coding to protect system element against errors with unknown probability distributions
KR100850202B1 (en) 2006-03-04 2008-08-04 삼성전자주식회사 Cryptographic method for countering DFA using ECC fast Montgomery power ladder algorithm
WO2008043647A2 (en) * 2006-10-12 2008-04-17 International Business Machines Corporation Defending smart cards against attacks by redundant processing
EP1998488A1 (en) * 2007-05-26 2008-12-03 DSI Informationstechnik GmbH Personalised AES encryption
ES2366753T3 (en) * 2007-12-13 2011-10-25 Oberthur Technologies METHOD OF CRYPTOGRAPHIC DATA PROCESSING, IN PARTICULAR WITH THE HELP OF AN S BOX, DEVICE AND ASSOCIATED PROGRAMS.
JP5483838B2 (en) * 2008-07-08 2014-05-07 ルネサスエレクトロニクス株式会社 Data processing device
JP5387144B2 (en) 2009-06-01 2014-01-15 ソニー株式会社 Malfunction occurrence attack detection circuit and integrated circuit
FR2949010A1 (en) 2009-08-05 2011-02-11 St Microelectronics Rousset COUNTERMEASURE PROCESS FOR PROTECTING STORED DATA
JP5296217B2 (en) 2009-09-24 2013-09-25 株式会社東芝 Key scheduling apparatus and method
EP2367316B1 (en) * 2010-03-12 2017-07-05 STMicroelectronics (Rousset) SAS Method and circuitry for detecting a fault attack
JP5776927B2 (en) * 2011-03-28 2015-09-09 ソニー株式会社 Information processing apparatus and method, and program
US8897440B2 (en) * 2012-06-28 2014-11-25 Steven W. Cooke Cryptographic system of symmetric-key encryption using large permutation vector keys
US9152801B2 (en) 2012-06-28 2015-10-06 Steven W. Cooke Cryptographic system of symmetric-key encryption using large permutation vector keys
BR112015014946A2 (en) * 2012-12-21 2017-07-11 Koninklijke Philips Nv computing device, compiler, electronic method for computing a data function and computer program
JP7063628B2 (en) * 2018-01-11 2022-05-09 Necプラットフォームズ株式会社 Cryptographic devices, encryption methods and programs

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10154976A (en) 1996-11-22 1998-06-09 Toshiba Corp Tamper-free system
JP2000509521A (en) * 1997-02-07 2000-07-25 テルコーディア テクノロジーズ インコーポレイテッド How to use transient failures to verify the security of a cryptographic system
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
US6182216B1 (en) * 1997-09-17 2001-01-30 Frank C. Luyster Block cipher method
US6108419A (en) * 1998-01-27 2000-08-22 Motorola, Inc. Differential fault analysis hardening apparatus and evaluation method
US6219420B1 (en) * 1998-09-02 2001-04-17 Motorola, Inc. High assurance encryption system and method
US6985581B1 (en) * 1999-05-06 2006-01-10 Intel Corporation Method and apparatus to verify circuit operating conditions
FR2829331B1 (en) 2001-09-04 2004-09-10 St Microelectronics Sa METHOD FOR SECURING A SECRET QUANTITY
FR2838262B1 (en) * 2002-04-08 2004-07-30 Oberthur Card Syst Sa METHOD FOR SECURING ELECTRONICS WITH ENCRYPTED ACCESS
TW574660B (en) * 2002-05-16 2004-02-01 Ind Tech Res Inst Method targeting at range search and for information search complying with specified rule
JP2005527853A (en) * 2002-05-23 2005-09-15 アトメル・コーポレイション Advanced Encryption Standard (AES) hardware cryptography engine
US7190791B2 (en) * 2002-11-20 2007-03-13 Stephen Laurence Boren Method of encryption using multi-key process to create a variable-length key
US7340053B2 (en) * 2003-07-18 2008-03-04 National Institute Of Information And Communications Technology Cipher strength estimating device
US8065532B2 (en) * 2004-06-08 2011-11-22 Hrl Laboratories, Llc Cryptographic architecture with random instruction masking to thwart differential power analysis
DE102004062825B4 (en) * 2004-12-27 2006-11-23 Infineon Technologies Ag Cryptographic unit and method for operating a cryptographic unit
US20080298642A1 (en) * 2006-11-03 2008-12-04 Snowflake Technologies Corporation Method and apparatus for extraction and matching of biometric detail
CN100495961C (en) * 2007-11-19 2009-06-03 西安西电捷通无线网络通信有限公司 Packet cipher algorithm based encryption processing method
JP4748227B2 (en) * 2009-02-10 2011-08-17 ソニー株式会社 Data modulation apparatus and method

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
BIHAM E ET AL: "DIFFERENTIAL FAULT ANALYSIS OF SECRET KEY CRYPTOSYSTEMS", ADVANCES IN CRYPTOLOGY - CRYPTO '97. SANTA BARBARA, AUG. 17 - 21, 1997; [PROCEEDINGS OF THE ANNUAL INTERNATIONAL CRYPTOLOGY CONFERENCE (CRYPTO)], BERLIN, SPRINGER, DE, vol. CONF. 17, 17 August 1997 (1997-08-17), pages 513 - 526, XP001060384, ISBN: 978-3-540-63384-6 *
DAEMEN J ET AL: "Specification of Rijndael", 1 January 2002, THE DESIGN OF RIJNDAEL. AES - THE ADVANCED ENCRYPTION STANDARD, SPRINGER, PAGE(S) 31 - 51, ISBN: 978-3-540-42580-9, XP007919936 *
See also references of WO03085881A1 *

Also Published As

Publication number Publication date
FR2838262A1 (en) 2003-10-10
US8180046B2 (en) 2012-05-15
CA2480896C (en) 2012-10-30
US20100322421A1 (en) 2010-12-23
JP2011103686A (en) 2011-05-26
JP2005522912A (en) 2005-07-28
AU2003260714A1 (en) 2003-10-20
CA2480896A1 (en) 2003-10-16
WO2003085881A1 (en) 2003-10-16
FR2838262B1 (en) 2004-07-30
US20060104438A1 (en) 2006-05-18
US7796750B2 (en) 2010-09-14

Similar Documents

Publication Publication Date Title
CA2480896C (en) Method for making secure an electronic entity with encrypted access
EP1064752B1 (en) Method for data securement using a cryptographic algorithm
EP1358733A1 (en) Secure method for secret key cryptographic calculation and component using said method
WO2003024017A2 (en) Method for making secure a secret quantity
FR3018934A1 (en) METHOD OF INPUTTING DATA IN A BASE FOR THE PROTECTION OF THESE DATA
EP2166696B1 (en) protection of encrypted data Integrity using an intermediate cipher state to generate a signature
EP1122909B1 (en) Method for performing a cryptographic protocol between two electronic units
EP1159797A1 (en) Countermeasure method in an electronic component using a secret key cryptographic algorithm
EP1198921B1 (en) Method for countermeasure in an electronic component using a secret key algorithm
EP1119940B1 (en) Countermeasure method in an electronic component using a secret key cryptographic algorithm
EP1387519A2 (en) Method for protecting an electronic circuit against fault-based attacks
EP1119939B1 (en) Countermeasure method in an electronic component using a secret key cryptographic algorithm
EP1180260B1 (en) Countermeasure method in an electronic component using a dynamic secret key cryptographic algorithm
EP1591866B1 (en) Control of execution of an algorithm by an integrated circuit
EP0566512A1 (en) Method of controlling access to a function within a module with the aid of a password
EP1125394A1 (en) Countermeasure method in an electronic component using a secret key cryptographic algorithm
FR2566155A1 (en) METHOD AND SYSTEM FOR ENCRYPTING AND DESCRIBING INFORMATION TRANSMITTED BETWEEN A TRANSCEIVER DEVICE AND A RECEIVER DEVICE
EP1199628B1 (en) Calculation unit for determining the inverse of an integer modulo of a big number
FR2807245A1 (en) METHOD FOR PROTECTING AN ELECTRONIC CHIP AGAINST FRAUD
WO2003069841A1 (en) Method for detection of attacks on cryptographic algorithms by trial and error
EP1147644A1 (en) Computer device for making secure messages at a network layer

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: 20041018

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

17Q First examination report despatched

Effective date: 20100901

REG Reference to a national code

Ref country code: DE

Ref legal event code: R003

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

Free format text: STATUS: THE APPLICATION HAS BEEN REFUSED

18R Application refused

Effective date: 20121127