WO2011057991A1 - Circuit electronique de faible complexite protege par masquage personnalise - Google Patents
Circuit electronique de faible complexite protege par masquage personnalise Download PDFInfo
- Publication number
- WO2011057991A1 WO2011057991A1 PCT/EP2010/067064 EP2010067064W WO2011057991A1 WO 2011057991 A1 WO2011057991 A1 WO 2011057991A1 EP 2010067064 W EP2010067064 W EP 2010067064W WO 2011057991 A1 WO2011057991 A1 WO 2011057991A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- masks
- circuit
- mask
- circuit according
- linear
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic 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/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/002—Countermeasures against attacks on cryptographic mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/002—Countermeasures against attacks on cryptographic mechanisms
- H04L9/003—Countermeasures against attacks on cryptographic mechanisms for power analysis, e.g. differential power analysis [DPA] or simple power analysis [SPA]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/04—Masking or blinding
- H04L2209/046—Masking or blinding of operations, operands or results of the operations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/12—Details relating to cryptographic hardware or logic circuitry
Definitions
- a masking-protected electronic circuit that takes advantage of circuit-specific customization so as to reduce the scope of the observation attacks and reduce the cost of implementing the protection.
- the invention applies in particular to the field of protection circuits that handle confidential data whose cryptography circuits are an example.
- the activity of the electronic circuits is observable during their operation through physical quantities such as power consumption, calculation time or electromagnetic radiation.
- the dissipation of these physical quantities may jeopardize the security of systems processing secret data protected in particular by cryptographic methods.
- secret data is protected using a symmetric cryptographic algorithm
- the robustness of the protection lies in the ability to keep the encryption key secret.
- the dissipation of physical quantities may allow a third party to obtain said key by implementing appropriate attacks and, consequently, to access the secret data.
- An attack by observing physical quantities dissipated by said circuit is usually referred to simply as an observation attack.
- an attacker a third party using observation attack methods to access data that is not intended for him is called an attacker, while the physical quantities dissipated are called leaks or hidden channels.
- Attacks by observing the consumption of the circuits can also be used by an attacker, for example by using DPA type methods, this type of attack being described in the article by PC Kocher, J. Jaffe and B. Jun entitled Differential Power Analysis, Proceedings of CRYPTO'99, Volume 1666 LNCS, pp. 388-397, Springer-Verlag, 1999.
- Some countermeasures only increase the number of steps needed for an attack to succeed. This is the case, for example, countermeasure methods using a non-functional noise generator implemented next to the calculation logic.
- PRNG pseudo random number generator
- PRNG an acronym derived from the English expression "Pseudo-Random Number Generator”
- PRNG pseudo random number generator
- any measurement collected by an attacker is disturbed by a noise that is superimposed on the hidden channel.
- the attacks become more complex because, in practice, more measures are needed to amplify the expected signal-to-noise ratio for the countermeasure technique to be effective.
- Other countermeasures techniques protect against hidden masking observation attacks and usually involve during processing to protect a random or pseudo-random variable called mask. Said variable is used so that the result of the calculation does not depend on said mask, but the leakage of information through the hidden channels depend on it.
- masking countermeasures techniques are implemented by interleaving the sensitive data x transiting within the cryptography circuit with the mask variable m, this interleaving being used to hinder the exploitation of the hidden channel by an attacker.
- the sensitive data or variables x correspond to variables that are both fully predictable and sharing non-zero mutual information with the secret.
- This technique amounts to modifying the representation of the sensitive data x, to the quantity x ⁇ m corresponding to the Vernam encryption of x by applying the key m using the operation ⁇ designating an operation of the exclusive OR type also designated by the acronym XOR in the following description.
- the mask may be conditioned by a signature specific to each circuit in which case it is shown that the leak of the key is encrypted by said mask. This specificity avoids so-called “cataloging" attacks where circuit clones can be exploited to model leaks.
- This duplication involves a significant increase in the complexity of the circuit compared to an unmasked implementation.
- Second-order attacks exploit the fact that the variance of the leak depends on the sensitive variable x.
- the estimation of the variance is carried out either by combining the information leaks at the two dates when x ⁇ m and m are used, or by estimating the joint torque distribution (x ⁇ m, m) when the mask and the masked data are used simultaneously.
- Second-order attacks based on variance estimation are called zero-offset attacks and are described in the article by E. Peeters, F. Standaert, N. Donckers and JJ. Quisquater titled Improved Higher Order Side-Channel Attacks with FPGA experiments, Josyula R. Rao and Berk Sunar editors, Cryptography Hardware and Embedded Systems - Proceedings of CHES, Volume 3659 LNCS, pages 309-323. Springer-Verlag, 2005.
- An object of the invention is in particular to overcome the aforementioned drawbacks.
- the subject of the invention is a masking-protected cryptographic circuit, said circuit comprising means for encrypting binary words using at least one key k r c , means for applying linear processes and nonlinear treatments to said words, means for masking said words.
- the binary words are unmasked upstream of the non-linear processes by using a mask k r 'and masked downstream of said processes by using a mask k r + ', the masks k r 'and k r + i' being part of a set of masks specific to each instance of the circuit.
- the nonlinear processing, unmasking upstream nonlinear processing and hiding downstream of linear processing are implemented in a ROM type memory.
- the function P (x) is a circular permutation, a secondary mask of index r + 1 being deduced from a secondary mask of index r by circularly permuting the mask k r 'with a number of bits d chosen.
- the main masks k ' are of length W and composed of an integer number of sub masks of length S, the secondary masks k r 'being generated by permutation of said sub-masks.
- r is the round number
- i is a 4-bit random number
- Q is an integer for controlling the permutation rate between two consecutive secondary masks k r 'and k r + ';
- S is the length of a sub-mask expressed in bits
- W is the length of the main mask expressed in bits
- the main encryption mask k ' is modified regularly by randomly choosing a mask k' from a set of main masks stored in the circuit.
- the set of main masks stored in the circuit is different from one circuit to another.
- the set of main masks are obtained using a mask generation circuit intrinsic to the component.
- the Hamming distance between two masks k r 'and k r + ' is substantially equal to S / 2.
- the Hamming weight of a mask k ' is, for example, substantially equal to W / 2.
- non-linear processing is implemented using S-boxes.
- Non-linear processing is applied, for example, after linear processing in the same combinatorial block just before sampling the result in a register.
- the circuit is, for example, implemented in an FPGA.
- the set of main masks is obtained, for example, using the modification of the configuration file of the FPGA circuit.
- the circuit comprises, for example, dynamic reconfiguration means for updating all the main masks and the tables implementing the parts of the circuit corresponding to non-linear processing.
- the circuit is implemented in an ASIC.
- the invention has the particular advantage of not significantly increasing the complexity of the circuit by the implementation of the protection by masking, particularly concerning the parts of the circuit performing non-linear processing.
- the invention also has the advantage of allowing the use of a predetermined mask set of reduced size, said game being able to be different from one circuit to another so as to make the protection unique between circuits coming from the same chain of production.
- FIG. 1 shows the example of a Feistel function protected by masking
- FIG. 2 gives an example of a masking protected cryptographic circuit, the nonlinear parts being unmasked
- FIG. 3 illustrates an implementation of the masked AES algorithm according to the invention.
- Figure 1 shows the example of a masked Feistel function.
- the principle of masking consists of modifying the representation of the sensitive variables x into a redundant representation.
- This representation comprises at least two parts, one part corresponding to the hidden sensitive data denoted x ⁇ m and a part corresponding to the mask m.
- a round is also called “round” in English and designates a calculation cycle in which at least two types of transformations have been executed, one linear and the other non-linear, also called substitution transformation.
- the linear transformation aims to mix the symbols or groups of symbols presented at its entry following predefined rules and thus create diffusion.
- substitution transformation is usually carried out using substitution tables called S-boxes and contributes to breaking the linearity of the encryption structure.
- S-boxes substitution tables
- the pair of parts (x ⁇ m, m) is transformed into a pair (round (x ⁇ m '), m'), the function round () designating the functional operation of a round, whereas m ' is the new round mask.
- the function S '() thus has twice as many entries as the function S ().
- the implementation of the masking for nonlinear S () functions amounts to adding the square of the complexity of S.
- FIG. 1 shows the example of a masking-protected Feistel function. This type of function is used in particular for DES type block ciphering, an acronym derived from the English expression "Data Encryption Block”.
- the implementation of the masking of the sensitive data x requires, as previously explained, a two-part processing 100, 101.
- the first part 100 corresponds to the treatments performed on the part x ⁇ m and the second part 101 corresponds to the treatments performed on the part m.
- Encryption of sensitive data is performed by applying a key k to the block to be encrypted followed by an S-Box function S () and the application of a linear function L ().
- the digital signals to be processed by the two channels 100, 101 of the circuit are synchronized by using a register 102, 103 for each channel.
- the first channel 100 processes the part comprising the x masked sensitive data, that is to say x ⁇ m.
- the encryption key k is applied using an XOR gate 106.
- the resulting signal corresponds to x ⁇ m ⁇ k.
- An S-box 107 then makes it possible to obtain the signal S (x ⁇ m ⁇ k) 1 17 to which a linear function L 108 is applied.
- the second channel 101 processes the part corresponding to the mask m.
- the application of a nonlinear function S () 107 on a masked signal usually involves its consideration in the processing of the second part.
- the function S '() defined by the expression (4) is implemented 1 13 by using two S-Boxes and 2 XOR gates 109, 1 12.
- the function takes as input on the one hand the mask M 105 and on the other hand the signal x ⁇ m ⁇ k 1 resulting from the application of the encryption key k at the level of the first channel 100.
- a linear function L () 1 14 On the signal 1 16 resulting from the application of S '() is applied a linear function L () 1 14 so as to take into account the linear function 108 of the first channel 100.
- the function S '() can be implemented in a ROM type memory so that it is protected against observation attacks. It is indeed particularly difficult to observe, for example, the variations in power consumption within such a memory.
- FIG. 2 gives an example of a masking protected cryptographic circuit on which the invention is based. It should be noted that there is no longer a mask path which, advantageously, makes second-order attacks like the one described above impossible.
- a memory is considered a black box protected against information leakage. Only entries or exits are vulnerable.
- One of the objectives of the circuit described is to take advantage of an implementation in memory with a custom masking method of moderate complexity.
- the calculation elements can be scheduled so as to position the non-linear parts as far as possible from the output of the registers.
- a correlated attack is all the less effective if it is conducted deeply in the combinatorial logic of the circuit.
- FIG. 2 shows an example of implementation of the invention in a circuit based on the use of an SPN network, acronym from the English expression "Substitution Permutation Network”. This type of circuit is also called Shannon's SP network. In this example a two-round encryption is considered. Binary words of index r denoted k r 'and k r c are respectively used as masking key and encryption key.
- the circuit shown as an example can be broken down into several stages, namely an input stage, a stage corresponding to the first round, a stage corresponding to the second round and an output stage.
- the data to be encrypted is presented at the input of the input stage, for example in the form of 32-bit words divided into four subwords of 8 bits.
- Input masking is applied by using the 32-bit key k 0 ', said key being divided into four sub-masks of 8 bits k 0 ' [0], k 0 '[1], k 0 '[2], k 0 ' [3], said sub-masks being applied to the four subwords of 8 bits using four XOR gates 200, 201, 202, 203.
- a register 204 takes as input the four 8-bit subwords resulting from the masking by the key k 0 '. This register makes it possible to synchronize the different bit streams, a stream corresponding to a subword of 8 input bits.
- a first encryption key k 0 c divided into four 8-bit subkeys rated k 0 c [0], k 0 c [1], k 0 c [2], k 0 c [3], is applied to level of four XOR gates 206, 206, 207, 208 on the hidden subwords presented at the output of said register 204.
- the key k 0 c is associated with the first round of encryption.
- the four data subwords masked by k 0 'and encrypted by k 0 c are then respectively processed by four processing blocks 209, 210, 21 1, 212 implemented in a memory, for example of the ROM type. It should be noted that the complexity of implementing functions, in particular non-linear, in a ROM memory increases exponentially with the number of entries. Cryptographic algorithms incorporate this constraint and treat words to Encrypt smaller subwords at the non-linear function to minimize implementation complexity.
- the 8-bit subwords are unmasked by applying the four sub-masks of 8 bits k 0 '[0], k 0 ' [1], k 0 '[2], k 0 '[3] using XOR gates 214.
- a non-linear function is then applied, an S-box 21 3 can be used to implement it.
- an XOR gate 21 is used to mask the output data, so that the sensitive data is masked at the output of the first-round stage by a mask k- cut into four sub-masks kV [0], kV [1], k-i '[2], ki' [3].
- a linear transformation L 0 () is applied at the output of the round, which must be taken into account for the masking within the processing blocks. For this, the masking is performed using a modified mask L 0 "1 (k'-i) of the mask k It is divided into four sub-masks modified by 8 bits the transformation L 0 "1 () corresponding to the inverse of the linear transformation L 0 () 21 6.
- the transformation L 0 () is applied to the binary words presented at the output of said blocks.
- the result of the first round of encryption corresponds to the binary subwords at the output of the linear transformation 21 6, said subwords corresponding to sensitive data masked by the mask k and thus protected against attacks by observations.
- the entry of the second round is the exit of the first round and corresponds to the four subwords of 8 bits resulting from the linear transformation 21 6 of the first round. These four subwords are presented at the input of a register 21 7 for synchronizing the different bitstreams.
- the four data subwords hidden by k- and encrypted by ki c are then respectively processed by four processing blocks 222, 223, 224, 225 implemented in a memory, for example, ROM type.
- the data are unmasked by applying the key k- ⁇ 'using XOR gates.
- a non-linear function is then applied, an S-box that can be used in each block to implement it.
- an XOR gate is used to mask the output data, so that the sensitive data is masked at the output of the second round stage by the mask k ' 2 .
- the masking is performed using a modified mask Li "1 (k ' 2 ), the transformation l_i " 1 () corresponding to the inverse of a linear transformation
- the transformation l_i () is applied to the binary subwords presented at the output of the processing blocks 209, 21 0, 21 1, 212.
- the result of the second round of encryption corresponds to the binary subwords at the output of the linear transformation. 226, said subwords corresponding to sensitive data masked and thus protected against attacks by observation.
- An advantage of this type of implementation is that it is possible to invert the encryption by k 0 c and the masking by k 0 'for the round 1 as well as the encryption by ki c and the masking by k- for the round 2.
- k 2 j P (kV) the function P (bin) representing a permutation function, for example a circular permutation of the binary word bin.
- the main mask k 1 can be drawn at random from a predefined set of main masks. A example of permutation of masks on the basis of a main mask is given in the description with the aid of FIG.
- the small size of the set of main masks advantageously allows the use of custom masks specific to the component, that is to say, specific to each instance of the circuit.
- the application of this signature makes it possible to reduce the scope of "cataloging" type attacks because the leaks thus become specific to a circuit and no longer to a type of circuit.
- the high-order attacks HO-DPA acronym coming from the English expression “higher-order differential power analysis”, as for example those of type "zero-offset" are in turn challenged by the fact that there is no more specific mask path. It is therefore no longer possible to consider the couple (masked variable, mask).
- Figure 3 illustrates an implementation of the masking protected AES algorithm.
- the AES block cipher algorithm an acronym derived from the English expression "Advanced Encryption Standard", is particularly powerful for keeping binary messages secret.
- the message to be protected is processed by binary words of fixed size, said words possibly being 128, 192 or 256 bits.
- the encryption keys are of length W, W being equal to the length of the words to be processed.
- the algorithm comprises three processing phases, each phase being composed of one or more rounds.
- the first phase R1 corresponds to an initialization round
- the second phase R2 corresponds to N rounds using the same structure iteratively
- the third phase R3 corresponds to a final round.
- the principle of these three phases specific to the AES algorithm is known to those skilled in the art.
- the circuit is for example an FPGA or ASIC circuit.
- a masking protection according to the invention can be introduced so as to protect against attacks by observation of the hidden channels the AES cryptography circuit implementing the three phases R1, R2, R3.
- a random number generator 300 is used to generate binary words i, for example of n bits, where n is the entropy of the masking. In the example described in the following description, n is represented on 4 bits.
- a counter CTR 301 increments a variable r corresponding to the current round number.
- the protected circuit comprises a memory area 303 which makes it possible in particular to store a set of constant masks of equal length to that of the words to be encrypted, ie 128 bits in this example.
- main masks stored in the component may be different from one component product to another, so as to obtain a differentiated protection and avoid "cataloging attacks”.
- a principal mask k 'of length W is composed of an integer number of sub-masks of length S, W being a multiple of S.
- secondary masks may be generated, for example by permuting the sub-masks composing the main mask.
- a different secondary mask can be used for each round.
- variable i is random and can be generated before each encryption.
- d S bits for example, that is to say a length corresponding to a sub mask. It is also possible to switch the index mask r by an integer number of sub-masks.
- r is the round number
- i is a 4-bit number randomly drawn by the generator 300;
- Q is an integer for controlling the permutation rate between two consecutive secondary masks k r 'and k r + ';
- S is the length of a sub-mask expressed in bits
- W is the length of the mask k 'expressed in bits
- the main mask may, for example, be modified during an encryption procedure by randomly drawing a new value of i.
- the resistance to observation attacks can be optimized by choosing the main masks k 'such that the secondary masks are independent of each other, for example by ensuring that the Hamming distance between k r ' and k r + 'is substantially equal to S / 2.
- An average balancing of the masks also makes it possible to reinforce the protection, said balancing being obtained by ensuring that the Hamming weight of a secondary mask and therefore of the main mask is substantially equal to W / 2.
- the words to be encrypted are 128-bit words and are presented at the input of the coder in a register 302.
- the result of the masking is then encrypted by applying an encryption key of length W denoted k 0 c using a second gate XOR 305.
- the word masked by k 0 'and encrypted by k 0 c is stored into a register 306, said register corresponding to the inlet of the part of the circuit embodying the second processing phase R2, said phase corresponding to an iterative encryption loop, an iteration corresponding to a round of processing.
- the word stored in the register 306 is processed by a control module 307 cutting the 128-bit word into 16 subwords of 8 bits.
- the control module also has the role of selecting the mask k r 'to be used to unmask the data at the beginning of the round, one round being applied to each iteration of index r.
- the 16 subwords of 8 bits are processed using nonlinear function modules 308, said modules being implemented in a ROM-type memory, for example.
- modules unmask the subwords presented at their input, apply a non-linear processing 310 to them for example by using S-boxes, and hide the result of said processing.
- These modules use for the index round r the sub-masks k r '[0], k r ' [1], k r '[15] for the unmasking of input 309 and the sub-masks k r + i' [0], k r + i '[1], k r + i' [15] for output masking 31 1.
- the 16 S-boxes can be pre-computed in order to be masked by the sub-masks k r '[] and then unmasked by the sub-masks k r + ' [].
- the 16 subwords at the output of the nonlinear processing modules are then directed to a second control module 312 whose function is in particular to concatenate said words into a 128-bit word.
- the 128-bit word is then processed by two linear processing modules, a first realizing a mixture of the lines 313 usually designated by the English expression "Shift Rows” and a second treatment making a mixture of the columns 314, a treatment usually designated by the Anglo-Saxon expression "Shift Columns”.
- These two linear treatments can be modeled by a function L r ().
- An encryption using a key k r c is applied to the 128-bit word resulting from said linear processing, using an XOR function 315.
- a mask k in t 'of 128 bits is applied 316.
- the masks k in t' are stored 303 after being pre-calculated using the expression: (6)
- a final unmasking is performed by applying a mask k end of 128 bits using an XOR function 318.
- the word obtained at the end of the final round, that is to say at the end of the processing phase R3 corresponds to the final result of the AES encryption.
- the resulting encrypted message is written to an output register 319.
- FIG. 4 gives an example of a masking protected cryptographic circuit whose non-linear processing is positioned at the end of the round.
- FIG. 4 gives an example of a masking protected cryptographic circuit implementing this principle.
- This circuit example is similar to the one presented with the help of figure 2.
- the encryption is realized using a Feistel architecture and is realized thanks to the implementation of a stage of entry, of two round floors called round 1 and round 2, then an exit floor.
- the non-linear processes are placed at the end of the cone of logic. Linear treatments are therefore placed at the beginning of the round.
- a linear processing corresponding to an initial diffusion function Li () is applied 401.
- a linear processing corresponding to a diffusion function L 0 () is applied 402.
- the inverse Li "1 () of the initial diffusion function is applied 400 at the output of the input stage and a final diffusion function Li () is applied 403 to the input of the output stage.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Abstract
Description
Claims
Priority Applications (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP10773354.5A EP2499773B1 (fr) | 2009-11-13 | 2010-11-08 | Circuit electronique de faible complexite protege par masquage personnalise |
ES10773354T ES2571225T3 (es) | 2009-11-13 | 2010-11-08 | Circuito electrónico de escasa complejidad protegido por enmascaramiento personalizado |
JP2012538299A JP5987250B2 (ja) | 2009-11-13 | 2010-11-08 | カスタマイズされたマスキングによって保護される低複雑度の電子回路 |
CN201080056401.9A CN102648600B (zh) | 2009-11-13 | 2010-11-08 | 由定制的掩蔽保护的低复杂度电子电路 |
US13/509,494 US9197412B2 (en) | 2009-11-13 | 2010-11-08 | Low-complexity electronic circuit protected by customized masking |
CA2780719A CA2780719C (fr) | 2009-11-13 | 2010-11-08 | Circuit electronique de faible complexite protege par masquage personnalise |
KR1020127015118A KR101783495B1 (ko) | 2009-11-13 | 2010-11-08 | 커스트마이징된 마스킹에 의해 보호된 저-복잡성 전자 회로 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0958030 | 2009-11-13 | ||
FR0958030A FR2952773B1 (fr) | 2009-11-13 | 2009-11-13 | Circuit electronique de faible complexite protege par masquage personnalise |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2011057991A1 true WO2011057991A1 (fr) | 2011-05-19 |
Family
ID=42244180
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/EP2010/067064 WO2011057991A1 (fr) | 2009-11-13 | 2010-11-08 | Circuit electronique de faible complexite protege par masquage personnalise |
Country Status (9)
Country | Link |
---|---|
US (1) | US9197412B2 (fr) |
EP (1) | EP2499773B1 (fr) |
JP (1) | JP5987250B2 (fr) |
KR (1) | KR101783495B1 (fr) |
CN (1) | CN102648600B (fr) |
CA (1) | CA2780719C (fr) |
ES (1) | ES2571225T3 (fr) |
FR (1) | FR2952773B1 (fr) |
WO (1) | WO2011057991A1 (fr) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014119512A (ja) * | 2012-12-13 | 2014-06-30 | Nec Corp | 暗号化処理回路及び復号処理回路とその方法並びにそのプログラム |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8958550B2 (en) * | 2011-09-13 | 2015-02-17 | Combined Conditional Access Development & Support. LLC (CCAD) | Encryption operation with real data rounds, dummy data rounds, and delay periods |
JP5612007B2 (ja) * | 2012-03-15 | 2014-10-22 | 株式会社東芝 | 暗号化鍵生成装置 |
WO2015059845A1 (fr) * | 2013-10-24 | 2015-04-30 | 日本電気株式会社 | Circuit de traitement de cryptage, circuit de traitement de décryptage et procédés associés |
EP3475825B1 (fr) | 2016-06-23 | 2023-01-25 | Cryptography Research, Inc. | Opérations cryptographiques utilisant un codage de partage non linéaire pour la protection contre les attaques de surveillance externe |
US10530567B2 (en) * | 2016-10-05 | 2020-01-07 | Megachips Corporation | Encryption device and memory device |
DE102017002153A1 (de) * | 2017-03-06 | 2018-09-06 | Giesecke+Devrient Mobile Security Gmbh | Übergang von einer booleschen Maskierung zu einer arithmetischen Maskierung |
EP3422176A1 (fr) * | 2017-06-28 | 2019-01-02 | Gemalto Sa | Method for securing a cryptographic process with sbox against high-order side-channel attacks |
US11562101B2 (en) * | 2017-11-13 | 2023-01-24 | Intel Corporation | On-device bitstream validation |
US11372983B2 (en) | 2019-03-26 | 2022-06-28 | International Business Machines Corporation | Employing a protected key in performing operations |
US11201730B2 (en) * | 2019-03-26 | 2021-12-14 | International Business Machines Corporation | Generating a protected key for selective use |
FR3096206A1 (fr) * | 2019-05-17 | 2020-11-20 | Stmicroelectronics (Grenoble 2) Sas | Dispositif de protection de donnees masquees et procede associe |
US11700111B2 (en) * | 2019-06-26 | 2023-07-11 | Cryptography Research, Inc. | Platform neutral data encryption standard (DES) cryptographic operation |
CN113343175B (zh) * | 2021-05-31 | 2022-05-27 | 中国电子科技集团公司第三十研究所 | 一种自动化搜索spn型轻量级分组密码活跃s盒的快速方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0981223A2 (fr) * | 1998-08-20 | 2000-02-23 | Kabushiki Kaisha Toshiba | Dispositif de chiffrage/déchiffrage |
US20050232430A1 (en) * | 2004-04-16 | 2005-10-20 | Gebotys Catherine H | Security countermeasures for power analysis attacks |
EP1722502A1 (fr) * | 2005-05-10 | 2006-11-15 | Research In Motion Limited | Masquage de clé pour procédés cryptographiques |
WO2009074728A1 (fr) * | 2007-12-13 | 2009-06-18 | Oberthur Technologies | Procede de traitement cryptographique de donnees, notamment a l'aide d'une boite s, dispositif et programme associes |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5652796A (en) * | 1994-06-21 | 1997-07-29 | Pitney Bowes Inc. | Data encryption control system |
US6205249B1 (en) * | 1998-04-02 | 2001-03-20 | Scott A. Moskowitz | Multiple transform utilization and applications for secure digital watermarking |
CA2333095C (fr) * | 1998-06-03 | 2005-05-10 | Cryptography Research, Inc. | Perfectionnement de normes cryptographiques et autres procedes cryptographiques a reduction des fuites pour cartes a puces et autres systemes cryptographiques |
US6578061B1 (en) * | 1999-01-19 | 2003-06-10 | Nippon Telegraph And Telephone Corporation | Method and apparatus for data permutation/division and recording medium with data permutation/division program recorded thereon |
US7142670B2 (en) * | 2001-08-14 | 2006-11-28 | International Business Machines Corporation | Space-efficient, side-channel attack resistant table lookups |
KR100605813B1 (ko) * | 2003-02-28 | 2006-08-01 | 삼성전자주식회사 | 초 광대역 통신시스템에서 헤더정보 전송장치 및 방법 |
US7848514B2 (en) * | 2004-05-24 | 2010-12-07 | Research In Motion Limited | Table masking for resistance to power analysis attacks |
FR2873523B1 (fr) | 2004-07-22 | 2007-08-10 | Sagem | Procede et dispositif d'execution d'un calcul cryptographique |
JP4986206B2 (ja) * | 2006-02-22 | 2012-07-25 | 株式会社日立製作所 | 暗号処理方法及び暗号処理装置 |
US7720225B2 (en) * | 2006-03-07 | 2010-05-18 | Research In Motion Limited | Table splitting for cryptographic processes |
JP4936996B2 (ja) * | 2007-05-24 | 2012-05-23 | 株式会社東芝 | 非線形データ変換器、暗号化装置、および復号装置 |
CN101542558A (zh) * | 2007-05-30 | 2009-09-23 | 松下电器产业株式会社 | 加密装置、解密装置、加密方法及集成电路 |
WO2009043139A1 (fr) * | 2007-10-01 | 2009-04-09 | Research In Motion Limited | Masquage de table de substitution pour processus de chiffrement |
US7995749B2 (en) * | 2007-10-30 | 2011-08-09 | Harris Corporation | Cryptographic system configured for extending a repetition period of a random sequence |
DE102008033962B4 (de) * | 2008-07-21 | 2011-11-24 | Siemens Aktiengesellschaft | Verfahren und Prozessor-Einrichtung zum Implementieren einer Charakteristik-2-Multiplikation |
FR2952256B1 (fr) * | 2009-11-04 | 2011-12-16 | St Microelectronics Rousset | Protection d'une cle de chiffrement contre des attaques unidirectionnelles |
-
2009
- 2009-11-13 FR FR0958030A patent/FR2952773B1/fr not_active Expired - Fee Related
-
2010
- 2010-11-08 CN CN201080056401.9A patent/CN102648600B/zh active Active
- 2010-11-08 US US13/509,494 patent/US9197412B2/en active Active
- 2010-11-08 JP JP2012538299A patent/JP5987250B2/ja active Active
- 2010-11-08 CA CA2780719A patent/CA2780719C/fr active Active
- 2010-11-08 WO PCT/EP2010/067064 patent/WO2011057991A1/fr active Application Filing
- 2010-11-08 KR KR1020127015118A patent/KR101783495B1/ko active IP Right Grant
- 2010-11-08 ES ES10773354T patent/ES2571225T3/es active Active
- 2010-11-08 EP EP10773354.5A patent/EP2499773B1/fr active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0981223A2 (fr) * | 1998-08-20 | 2000-02-23 | Kabushiki Kaisha Toshiba | Dispositif de chiffrage/déchiffrage |
US20050232430A1 (en) * | 2004-04-16 | 2005-10-20 | Gebotys Catherine H | Security countermeasures for power analysis attacks |
EP1722502A1 (fr) * | 2005-05-10 | 2006-11-15 | Research In Motion Limited | Masquage de clé pour procédés cryptographiques |
WO2009074728A1 (fr) * | 2007-12-13 | 2009-06-18 | Oberthur Technologies | Procede de traitement cryptographique de donnees, notamment a l'aide d'une boite s, dispositif et programme associes |
Non-Patent Citations (4)
Title |
---|
E. PEETERS; F. STANDAERT; N. DONCKERS: "Cryptographic Hardware and Embedded Systems - Proceedings of CHES", vol. 3659, 2005, SPRINGER-VERLAG, article "J-J. Quisquater intitulé Improved Higher Order Side-Channel Attacks with FPGA experiments", pages: 309 - 323 |
HUNG-YU CHIEN: "Tree-Based Matched RFID Yoking Making It More Practical and Efficient", I.J.COMPUTER NETWORK AND INFORMATION SECURITY, vol. 1, October 2009 (2009-10-01), pages 1 - 8, XP002588445, Retrieved from the Internet <URL:http://www.mecs-press.org/ijcnis/ijcnis-200901001.pdf> [retrieved on 20100623] * |
P. C. KOCHER; J. JAFFE; B. JUN: "Proceedings of CRYPTO'96", vol. 1109, 1996, SPRINGER-VERLAG, article "Timing Attack on Implémentations of Diffie-Hellman, RSA, DSS and Other Systems", pages: 104 - 113 |
P. C. KOCHER; J. JAFFE; B. JUN: "Proceedings of CRYPTO'99", vol. 1666, 1999, SPRINGER-VERLAG, article "Differential Power Analysis", pages: 388 - 397 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014119512A (ja) * | 2012-12-13 | 2014-06-30 | Nec Corp | 暗号化処理回路及び復号処理回路とその方法並びにそのプログラム |
Also Published As
Publication number | Publication date |
---|---|
US9197412B2 (en) | 2015-11-24 |
CN102648600A (zh) | 2012-08-22 |
EP2499773A1 (fr) | 2012-09-19 |
CA2780719C (fr) | 2019-08-20 |
JP5987250B2 (ja) | 2016-09-07 |
KR20120109501A (ko) | 2012-10-08 |
CN102648600B (zh) | 2014-12-24 |
FR2952773A1 (fr) | 2011-05-20 |
FR2952773B1 (fr) | 2012-07-20 |
EP2499773B1 (fr) | 2016-02-17 |
US20130129081A1 (en) | 2013-05-23 |
CA2780719A1 (fr) | 2011-05-19 |
ES2571225T3 (es) | 2016-05-24 |
KR101783495B1 (ko) | 2017-09-29 |
JP2013511057A (ja) | 2013-03-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2499773B1 (fr) | Circuit electronique de faible complexite protege par masquage personnalise | |
EP2380306B1 (fr) | Circuit de cryptographie protege contre les attaques en observation, notamment d'ordre eleve | |
Nassar et al. | RSM: A small and fast countermeasure for AES, secure against 1st and 2nd-order zero-offset SCAs | |
EP1358732B1 (fr) | Procede de cryptage securise et composant utilisant un tel procede de cryptage | |
CA2570617C (fr) | Procede et dispositif d'execution d'un calcul cryptographique | |
EP3228043B1 (fr) | Méthode de chiffrement à couches de confusion et de diffusion dynamiques | |
FR2968104A1 (fr) | Procede et systeme de protection d'un dispositif de cryptographie | |
FR2985624A1 (fr) | Procede de chiffrement protege contre des attaques par canaux auxiliaires | |
EP2380305A1 (fr) | Circuit de cryptographie, protégé notamment contre les attaques par observation de fuites d'information par leur chiffrement | |
CA2392739A1 (fr) | Isolateur cryptographique a multiplication | |
Reyad et al. | Key-based enhancement of data encryption standard for text security | |
Korkikian et al. | Blind fault attack against SPN ciphers | |
El Assad | Chaos based information hiding and security | |
Abbasi et al. | Cryptography: Security and integrity of data management | |
McEvoy et al. | All-or-nothing transforms as a countermeasure to differential side-channel analysis | |
Moradi | Advances in side-channel security | |
Ha et al. | Differential power analysis on block cipher ARIA | |
EP2738974A1 (fr) | Procédé de dérivation de clés cryptographiques multiples à partir d'une clé maitresse dans un microprocesseur de sécurité | |
WO2009068658A1 (fr) | Procedes et dispositifs de cryptage et de decryptage d'un message de donnees a cle secrete aleatoire | |
Dravie | Synchronization and dynamical systems: application to cryptography | |
FR2949887A1 (fr) | Procede de traitement cryptographique de donnees | |
EP3745638A1 (fr) | Procedes de mise en uvre et d'obfuscation d'un algorithme cryptographique a cle secrete donnee | |
FR3061822A1 (fr) | Procede de chiffrement ou de dechiffrement d'un n-uplet de donnees avec un n-uplet de cles secretes predeterminees | |
Singh et al. | Comparative Study of Saellite Image Encryption Algorithm | |
Bhasin | Logic-Level Countermeasures to Secure FPGA based Designs |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 201080056401.9 Country of ref document: CN |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 10773354 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2012538299 Country of ref document: JP |
|
ENP | Entry into the national phase |
Ref document number: 2780719 Country of ref document: CA |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2010773354 Country of ref document: EP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 20127015118 Country of ref document: KR Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 13509494 Country of ref document: US |