IP Library Granted Patent US 8,934,628
Granted Patent B2
US 8,934,628 · App. 13/339,859 · Granted Jan 13, 2015

Method to de-correlate electric signals emitted by an IC card

Inventors: Rosario Bosco (Portici, IT); Vincenzo Pascariello (San Nicola la Strada, IT)
Assignee: STMicroelectronics International NV
G06F21/558G06F21/725
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 8,934,628
App. No.
13/339,859
Granted
Jan 13, 2015
Kind
B2
Abstract

A method is to de-correlate electric signals emitted by an IC Card during computations as well as sensitive data involved in such computations. The method includes executing functions introducing respective electric signals which do not involve the sensitive data. Each of the functions is triggered by a timer having a value which is different at each step of executing the functions.

Claims (34)

1. A method to de-correlate electric signals emitted by an IC Card during computations and sensitive data involved with the computations, the method comprising:

executing functions introducing respective electric signals, which do not involve the sensitive data;

each execution of the functions being triggered based upon a timer having a value which is different at each execution of the functions, such that time intervals between executions of the functions are different;

operating the IC card to determine an upper timer value and a lower timer value to complete the computations involving sensitive data within a desired time limit, with the upper and lower timer values being determined based on a clock frequency that is adjusted based on time stamps received by the IC Card from a handset; and

randomly selecting the value between the upper and lower timer values at each execution of the functions.

2. A method according to claim 1 , wherein the upper timer value and the lower timer value are associated with an average execution time of portions of the computations involving sensitive data included between consecutive executions of the functions.

3. A method according to claim 2 , wherein the average execution time of the portions associated with the upper timer value are processed by dividing an execution time of the computations for a number of executions of the functions to complete the computations in a desired time stored in the IC Card.

4. A method according to claim 3 , wherein the number of executions of the functions to complete the computations in the desired time is processed by subtracting, from the desired time, the execution time of the computations and dividing a resulting difference with an average execution time of the functions.

5. A method according to claim 2 , wherein the average execution time of the portions associated with the lower timer value is processed by dividing an execution time of the computations by a number of executions of the functions to complete the computations in a desired time stored in the IC Card.

6. A method according to claim 2 , wherein the upper timer value and the lower timer value are processed, respectively, as t upper =t pmu *f clock , and t lower =t pml *f clock , wherein t pmu is the average execution time of the portions associated with the upper timer value, t pml is the average execution time of the portions associated with the lower timer value, and f clock is a frequency of a clock of the IC Card.

7. A method according to claim 6 , wherein the clock frequency is a fixed value and the upper timer value and the lower timer value are fixed values for the timer.

8. A method according to claim 6 , wherein the clock frequency is adjusted as f clk =(V 2 −V 1 +n clk1 −n clk2 )/(t s2 −t s1 ), where t s2 , t s1 are the time stamps received by the IC Card from a handset, clk1 and n clk2 are numbers of clock cycles occurring from receipt of the time stamps until, respectively, a start of an internal timer of the IC Card and a reading of a value thereof, and V 2 , V 1 are values of the internal timer at time T 1 =t s1 +n clk1 /f clk , and T 2 =t s2 +n clk2 /f clk .

9. A method to de-correlate electric signals emitted by an IC Card during computations and sensitive data involved with the computations, the method comprising:

executing functions introducing respective electric signals, which do not involve the sensitive data;

each execution of the functions being triggered based upon a timer having a value which is different at each execution of the functions, such that time intervals between executions of the functions are different;

at each execution of the functions, the value of the timer being randomly selected between an upper timer value and a lower timer value which are determined by the IC Card to complete the computations involving sensitive data within a desired time limit, at least one of the upper timer value and the lower timer value being

associated with an average execution time of portions of the computations involving sensitive data included between consecutive executions of the functions functions, and

based on a clock frequency that is adjusted based on time stamps received by the IC Card from a handset.

10. A method according to claim 9 , wherein the average execution time of the portions associated with the upper timer value are processed by dividing an execution time of the computations for a number of executions of the functions to complete the computations in a desired time stored in the IC Card.

11. A method according to claim 10 , wherein the number of executions of the functions to complete the computations in the desired time is processed by subtracting, from the desired time, the execution time of the computations and dividing a resulting difference with an average execution time of the functions.

12. An IC card comprising:

a processor configured to perform computations involving sensitive data and to emit electric signals based thereupon; and

a timer;

said processor also coupled to said timer and configured to de-correlate the electric signals by

executing functions introducing respective electric signals, which do not involve the sensitive data,

each execution of the functions being triggered based upon the timer having a value which is different at each execution of the functions, such that time intervals between executions of the functions are different; and

said processor is configured to

determine an upper timer value and a lower timer value to complete the computations involving sensitive data within a desired time limit, with the upper and lower timer values being determined based on a clock frequency that is adjusted based on time stamps received by the IC Card from a handset; and

randomly selecting the value between the upper and lower timer values at each execution of the functions.

13. An IC Card according to claim 12 , wherein said processor is configured such that the upper timer value and the lower timer value are associated with an average execution time of portions of the computations involving sensitive data included between consecutive executions of the functions.

14. An IC Card according to claim 13 , wherein said processor is configured such that the average execution time of the portions associated with the upper timer value are processed by dividing an execution time of the computations for a number of executions of the functions to complete the computations in a desired time stored in the IC Card.

15. An IC Card according to claim 14 , wherein said processor is configured such that the number of executions of the functions to complete the computations in the desired time is processed by subtracting, from the desired time, the execution time of the computations and dividing a resulting difference with an average execution time of said functions.

16. An IC Card according to claim 14 , wherein said processor is configured such that the number of executions of the functions to complete the computations in the desired time is processed by subtracting, from the desired time, the execution time of the computations, and dividing a resulting difference with an average execution time of the functions.

17. An IC Card according to claim 13 , wherein said processor is configured such that the average execution time of the portions associated with the lower timer value is processed by dividing an execution time of the computations by a number of executions of the functions to complete the computations in a desired time stored in the IC Card.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 24, 2013
From: STMICROELECTRONICS N.V.
To: STMICROELECTRONICS INTERNATIONAL N.V.
Reel/Frame 030669/0257 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 14, 2012
From: BOSCO, ROSARIO; PASCARIELLO, VINCENZO
To: STMICROELECTRONICS NV
Reel/Frame 028202/0846 →
Priority Claims (1)
IT MI2010A2476 · Dec 30, 2010 · national
Continuity (1)
Related Publication 20120170742A1 · Jul 5, 2012