IP Library Granted Patent US 10,614,217
Granted Patent B2
US 10,614,217 · App. 15/659,445 · Granted Apr 7, 2020

Scrambling of the operation of an integrated circuit

Inventors: Jean-Louis Modave (Ottignies, BE); Fabrice Marinet (Chateauneuf le Rouge, FR); Michael Peeters (Tourinnes-la-Grosse, BE)
Assignees: STMICROELECTRONICS (ROUSSET) SAS; PROTON WORLD INTERNATIONAL N.V.
G06F21/556G06F21/72G06F21/75G06F21/755G06F21/76H04L9/002H04L2209/043H04L2209/08
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 10,614,217
App. No.
15/659,445
Granted
Apr 7, 2020
Kind
B2
Abstract

An integrated circuit includes functional circuitry such as a processing core, memory interfaces, cryptographic circuitry, etc. The integrated circuit also includes protection circuitry to protect the functional circuitry of the integrated circuit against attacks by hidden channels. The protection circuitry, for each of a series of successive periods of time, selects a configuration of the functional circuitry from a set of configurations of the functional circuitry, sets a duration of the period of time, and applies the selected configuration of the functional circuitry for the set duration of the period of time.

Claims (67)

1. A method, comprising:

protecting functional circuitry of an integrated circuit against attacks by hidden channels, the protecting including controlling operation of the functional circuitry over successive periods of time, by, for each successive period of time:

selecting a configuration of the functional circuitry from a set of configurations of the functional circuitry;

setting a duration of the period of time; and

applying the selected configuration of the functional circuitry for the set duration of the period of time.

2. The method as claimed in claim 1 , comprising sequentially selecting configurations of the functional circuitry from the set of configurations of the functional circuitry.

3. The method as claimed in claim 1 , comprising randomly selecting configurations of the functional circuitry from the set of configurations of the functional circuitry.

4. The method as claimed in claim 3 , comprising:

selecting a mask of a set of masks; and

combining the selected mask with a configuration selection index to select a current configuration of the set of configurations.

5. The method as claimed in claim 4 , comprising:

responding to an indication that all of the configurations of the set of configurations have been selected as a current configuration using the selected mask by selecting another mask from the set of masks.

6. The method as claimed in claim 4 , comprising:

setting a current duration based on the selected mask.

7. The method of claim 1 wherein the set of configurations has a number of configurations and a current duration is selected from a set of durations having a number of durations equal to the number of configurations.

8. The method of claim 1 wherein the protecting functional circuitry of the integrated circuit comprises varying power consumption of the functional circuitry.

9. The method of claim 1 wherein the applying the selected configuration comprises clocking the functional circuitry at a determined clock rate.

10. The method of claim 1 wherein the applying the selected configuration comprises controlling a sequence of operations of the functional circuitry.

11. The method of claim 1 wherein the setting the duration of the period of time comprises changing a duration with each selection of a configuration.

12. The method of claim 1 , wherein selecting the configuration comprises randomly selecting a mask, combining the selected mask with a selection signal and selecting the configuration based on the combination of the selected mask with the selection signal.

13. An integrated circuit, comprising:

one or more terminals; and

protection circuitry, coupled to the one or more terminals, wherein the protection circuitry, in operation, for each of a series of successive periods of time:

selects a configuration of functional circuitry from a set of configurations of the functional circuitry;

sets a duration of the period of time; and

outputs one or more control signals via at least one of the one or more terminals to apply the selected configuration of the functional circuitry for the set duration of the period of time.

14. The integrated circuit of claim 13 , wherein the integrated circuit includes the functional circuitry, the functional circuitry is coupled to the at least one of the one or more terminals, and the functional circuitry, in operation, performs one of more functions of the integrated circuit.

15. The integrated circuit of claim 13 wherein the protection circuitry comprises:

a multiplexer, which, in operation, outputs one or more control signals to the functional circuitry via the at least one of the one or more terminals based on one or more selection signals; and

a control circuit, which, in operation, generates the one or more selection signals based on the selected configuration.

16. The integrated circuit of claim 13 , comprising:

a memory, which, in operation, stores information related to a set of durations of time, wherein the protection circuitry, in operation, selects a duration to apply to a selected configuration based on the stored information.

17. The integrated circuit of claim 16 wherein the stored information is a table storing the set of durations of time and a number of durations of time in the set of durations of time is equal to a number of configurations of the set of configurations.

18. The integrated circuit of claim 13 wherein the protection circuitry comprises one or more registers storing configuration information related to configurations of the functional circuitry.

19. The integrated circuit of claim 13 wherein the protection circuitry is in a control signal path of the functional circuitry.

20. The integrated circuit of claim 13 wherein, in operation, power consumption of the functional circuitry varies in accordance with the selected configuration.

21. The integrated circuit of claim 13 wherein, in operation, the applying the selected configuration comprises clocking the functional circuitry at a determined clock rate.

22. The integrated circuit of claim 13 wherein the applying the selected configuration comprises controlling a sequence of operations of the functional circuitry.

23. The integrated circuit of claim 14 wherein the functional circuitry comprises one or more of:

a processing core of the integrated circuit;

a memory of the integrated circuit;

cryptographic circuitry; and

an interface of the integrated circuit.

24. The integrated circuit of claim 13 wherein the setting the duration of the period of time comprises changing a duration with each selection of a configuration.

25. The device of claim 13 wherein the protection circuitry, in operation, randomly selects a mask, combines the selected mask with a selection signal and selects the configuration based on the combination of the selected mask with the selection signal.

26. A system, comprising:

functional circuitry, which, in operation, performs one or more system functions; and

protection circuitry, coupled to the functional circuitry, wherein the protection circuitry, in operation, for each of a series of successive periods of time:

selects a configuration of the functional circuitry from a set of configurations of the functional circuitry;

sets a duration of the period of time; and

applies the selected configuration of the functional circuitry for the set duration of the period of time.

27. The system of claim 26 , comprising:

a memory, which, in operation, stores information related to a set of durations of time, wherein the protection circuitry, in operation, selects a duration to apply to a selected configuration based on the stored information.

28. The system of claim 26 wherein the setting the duration of the period of time comprises changing a duration with each selection of a configuration.

29. The system of claim 26 wherein the functional circuitry comprises one or more of:

a system processing core;

a system memory;

cryptographic circuitry; and

an interface.

30. The system of claim 26 wherein the protection circuitry, in operation, randomly selects a mask, combines the selected mask with a selection signal and selects the configuration based on the combination of the selected mask with the selection signal.

31. A non-transitory computer-readable medium having contents which cause protection circuitry of an integrated circuit to perform a method of protecting functional circuitry of the integrated circuit against attacks by hidden channels, the method comprising, for each of a series of successive periods of time:

selecting a configuration of the functional circuitry from a set of configurations of the functional circuitry;

setting a duration of the period of time; and

applying the selected configuration of the functional circuitry for the set duration of the period of time.

32. The non-transitory computer-readable medium of claim 31 wherein the method comprises sequentially selecting configurations of the functional circuitry from the set of configurations of the functional circuitry.

33. The non-transitory computer-readable medium of claim 31 wherein the setting the duration of the period of time comprises changing a duration with each selection of a configuration.

34. The non-transitory computer-readable medium of claim 31 wherein the method comprises randomly selecting a mask, combining the selected mask with a selection signal and selecting the configuration based on the combination of the selected mask with the selection signal.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 10, 2023
From: STMICROELECTRONICS (ROUSSET) SAS
To: STMICROELECTRONICS INTERNATIONAL N.V.
Reel/Frame 063282/0118 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 16, 2022
From: PROTON WORLD INTERNATIONAL N.V.
To: STMICROELECTRONICS INTERNATIONAL N.V.
Reel/Frame 061796/0130 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 27, 2017
From: MARINET, FABRICE
To: STMICROELECTRONICS (ROUSSET) SAS
Reel/Frame 043121/0372 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 27, 2017
From: MODAVE, JEAN-LOUIS; PEETERS, MICHAEL
To: PROTON WORLD INTERNATIONAL N.V.
Reel/Frame 043121/0375 →
Priority Claims (1)
FR 16 61562 · Nov 28, 2016 · national
Continuity (1)
Related Publication 20180150634A1 · May 31, 2018