Abstract:
The invention concerns a computing method performed by an electronic circuit and an electronic circuit for computing a modular operation with at least one operand (R) having a binary representation, at least comprising iteratively for each bit of this operand: doubling (33) the value of an intermediate result (Z) stored in a first memory element by shifting the bits of the intermediate result towards the most significant bit; and while (34) the most significant bit of the intermediate result is one, updating this intermediate result by subtracting the modulus (n) stored in a second memory element.
Abstract:
Cryptographic methods are known that involve the computation of a non-degenerate bilinear mapping of first and second elements (P 1 , Q 1 ) one of which comprises a secret of a first entity (A). For a mapping implemented as, for example, a Tate pairing, the mapping is computable by applying a predetermined function (f) to the first and second elements (P 1 , Q 1 ) and then exponentiating the result with a known exponent (e pub ). Improvements in respect of computational loading, size of output, and security are enabled for the first party (A) by arranging for the first entity to carry out (12) only part of the mapping, a second entity (B) being used to complete computation (13) of the mapping. Cryptographic applications using these improvements are also disclosed.
Abstract:
L'invention concerne un procédé et élément de chiffrement par un processeur intégré de données à stocker dans une mémoire (4), consistant à appliquer à chaque bloc de données à chiffrer (P) un algorithme de chiffrement (B) fonction d'au moins une clé (K) propre au circuit intégré, et avant d'y appliquer l'algorithme de chiffrement, à combiner le bloc de données à chiffrer avec le résultat d'une fonction (IVGEN) de l'adresse de stockage (A, I) du bloc chiffré (C) dans la mémoire et d'une quantité numérique (R) différente de la clé de chiffrement.
Abstract:
A method of processing information (INFO) to be confidentially transmitted from a first module (C) to a second module (D) provides that a first scalar multiplication (SCAL-MLTr) may be carried out in order to obtain a first result [r]P) . This first scalar - multiplication comprises a plurality of generation steps of ordered factors (Q 0 , Q 1 ) from which a plurality of first partial sums (SUM1r, SUM2r) are required to be built. The method also comprises the carrying out of a second scalar multiplication (SCAL-MLTm) in order to obtain a second result ([m]P). This second multiplication provides that a plurality of second partial sums (SUM1m, SUM2m) may be built. A piece of encrypted information is obtained by processing the information (INFO) based on the results of said scalar multiplications. The method is characterized in that in order to build the second partial sums of the second scalar multiplication the same ordered factors being obtained by the generation step of the first scalar multiplication are employed.
Abstract:
A method for establishing a communication between a first electronic device (SIM) associated with a first Trusted Authority (TA-SIM) and a second electronic device (ME). The method comprises the steps of:
making a first key (Ksyk SIM ) available to the first device for the communication between the first Authority and the first device; providing a second Trusted Authority (TA-ME), associated with the second device and distinct and autonomous with respect to said first Authority; such second Authority may generate a second key (Ksyk ME ) in order to communicate with the second device.
Furthermore, the method comprises the steps of:
making the second key available to the second device; providing the first and second device with a communication key (Ks) to be used in said communication, through at least one of said first and second Authorities.
Abstract:
Method of establishing an encrypted communication by means of keys between a first electronic device (SIM) associated to a first trusted authority (TA-SIM) and a second electronic device (ME). The method comprises the steps of:
generating a first secret key (Ks) associated to the first device for the management of said communication; generating, at least in part by means of said first authority, a second secret key (Ks) associated to the second device for the management of said communication.
The method is characterised in that the step of generation of the first key is performed at least in part by means of a second trusted authority (TA-ME) associated to the second device that is distinct and autonomous from said first authority. Or, the generation of the first key is performed, at least in part, by the second device passing through the second trusted authority.
Abstract:
An encoding/decoding apparatus comprises a central processing unit and an encryption/decryption accelerator coupled to the central processing unit The accelerator comprises an input for input data to be encrypted/decrypted, an arithmetic logic unit coupled to said input for performing selectable operations on data obtained from said input data and an output for encrypted/decrypted data coupled to said arithmetic logic unit.
Abstract:
A method for implementing one-to-one binary functions defined on the Galois field GF(2 8 ) is presented. This method is very useful for realizing fast and low-power hardware devices whichever the binary function is, and comprises the steps of
decoding an input byte generating at least one bit string that contains only one active bit; logically combining the bits of the bit string according to the binary function for generating a 256-bit string representing a corresponding output byte; encoding the 256-bit string in a byte, obtaining the output byte.
This method may be implemented by a fast and small area consuming hardware device for generating output bytes corresponding to respective input bytes according to an one-to-one binary function, comprising
a decoder of the input byte, generating at least one bit string that contains only one active bit; an array of logic gates for input of the bit string, generating a 256-bit string by logically combining the bits of the input string according to the one-to-one binary function; an encoder for input of the second 256-bit string, generating the output byte.
Abstract:
An authentication method of a first module (A) by a second module (B). This method comprises the steps of:
generating, by the second module (B), a first random datum (U) to be sent to the first module (A); generating by the first module (A) a first number (v; v') starting from said first datum (U) and by means of a private key ([s]Q_A; [1/(a+s)]Q 1 ) of the first module (A); generating by the second module (B) a second number (n; n') to be compared with the first number, such as to authenticate the first module (A). Furthermore, the step of generating the second number (n; n') is performed starting from public parameters and is independent of the step of generating the first number.