IP Library Granted Patent US 7,386,123
Granted Patent B2
US 7,386,123 · App. 10/490,413 · Granted Jun 10, 2008

Method of implementing in an electronic component a cryptographic algorithm for finding the public exponent

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,386,123
App. No.
10/490,413
Granted
Jun 10, 2008
Kind
B2
Abstract

The invention concerns a method for implementing in an electronic component a cryptographic algorithm using calculating means. The invention is characterized in that it consists in carrying out the following steps: a) selecting a value e among a specific number of values e I , e i being integers, b) checking if e i verifies a predetermined relationship: if so, then e=e i , and storing e for use in calculating said cryptographic algorithm.

Claims (33)

1. A method of implementing, in an electronic component, a cryptography algorithm comprising the following steps:

a) choosing a value e from amongst a given number of values e i , e i being integer numbers;

b) testing whether the chosen value e i satisfies a predetermined equation;

c) if such is the case, then establishing e=e i , and storing e;

d) if such is not the case, reiterating the previous steps choosing another value of e i ;

e) performing a cryptographic operation on data using the stored value for e as a public key; and

f) if no value of e i can be attributed to e, then noting that cryptographic operations using the value e cannot be made.

2. A method according to claim 1 , further including the steps, prior to step b), of choosing a value Y lying in the range ]0,N[ and allocating to a value X the result of the operation y d modulo N, where d and N are given integer numbers, and wherein the predetermined equation of step b) is

X e i mod N=Y.

3. A method according to claim 2 , wherein Y=2.

4. A method according to claim 1 wherein the cryptographic operation is based on an algorithm of the RSA type.

5. A method according to claim 4 , wherein the RSA-type algorithm is in standard mode or CRT mode.

6. A method according to claim 1 , wherein the predetermined equation of step b) is: e i d p =1 (modulo λ(p)), where p and d p are given integer numbers and λ(.) is the Carmichael function.

7. A method according to claim 6 , wherein d p =d (modulo λ(p)), where d is a predetermined integer.

8. A method according to claim 6 , wherein, d q and q are given integer numbers, with hcf(p,q)=1, and wherein step b) comprises the following steps:

testing whether e i d p =1 (modulo λ(p)),

if such is the case, and if e i <λ(p), then establishing e=e i and storing e,

if such is the case, and if e i ≧λ(p), then testing whether e i d q =1 (modulo λ(q)); if such is the case, then establishing e=e i and storing e,

if one of the above two tests is not satisfied, reiterating the previous steps using another value of e i and if no value of e i can be attributed to e then noting that cryptographic operations using the value e cannot be made.

9. A method according to claim 8 , wherein d q =d (modulo λ(q)), where d is a predetermined integer.

10. A method according to claim 6 , wherein the cryptographic operation is based on an algorithm of the RSA type in CRT mode.

11. A method according to claim 1 , wherein

e i =2 16 +1.

12. A method according to claim 1 , wherein e i =3.

13. A method according to claim 1 and according to which a value e i has been allocated to e, further including the steps of obtaining, at the end of a private operation of the RSA algorithm, a value x from a value y, wherein said operation using the value e comprises verifying whether y=x e modulo N, where N is a predetermined integer number.

14. An electronic security component, comprising calculation means, a program memory and a working memory, and data communication means, wherein said calculation means executes the following operations:

choosing a value e from amongst a given number of values e i , e i being integer numbers,

testing whether the chosen value e i satisfies a predetermined equation,

if such is the case, then establishing e=e i , and storing e,

if such is not the case, reiterating the previous steps choosing another value of e i ,

performing a cryptographic operation on data using the stored value for e as a public key, and

if no value of e i can be attributed to e, then noting that cryptographic operations using the value e cannot be made.

15. A chip card comprising an electronic component according to claim 14 .

Assignments (2)
MERGER Recorded Aug 31, 2010
From: GEMPLUS
To: GEMALTO SA
Reel/Frame 024906/0868 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 12, 2004
From: JOYE, MARC; PAILLIER, PASCAL; QUES-ROCHAT, FLORENCE; VILLEGAS, KARINE; FEYT, NATHALIE
To: GEMPLUS
Reel/Frame 015875/0205 →