IP Library Granted Patent US 11,232,213
Granted Patent B2
US 11,232,213 · App. 15/754,941 · Granted Jan 25, 2022

Mixed hardware and software instructions for cryptographic functionalities implementation

Inventors: Karine Villegas (Gemenos, FR); Fabrice Perion (Gemenos, FR); Jean Roch Coulon (Meyreuil, FR); Sylvere Teissier (Meyreuil, FR)
Assignee: THALES DIS FRANCE SA
G06F21/602G09C1/00H04L9/002G06F2221/2107H04L2209/04H04L2209/12
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 11,232,213
App. No.
15/754,941
Granted
Jan 25, 2022
Kind
B2
Abstract

The present invention relates to a device having a central processing unit, RAM memory and at least two hardware elementary operations, using registers of greater size than the one of the central processing unit, said device being such that construction of at least one part of RAM memory is managed only by the hardware elementary operations, hardware elementary operations themselves and masking of inputs/outputs/intermediary data are monitored by software instructions, said software instructions being able to address different cryptographic functionalities using said hardware elementary operations according to several ways depending on each concerned functionality, said software instructions being further able to address several levels of security in the execution of the different functionalities.

Claims (13)

1. A device having a central processing unit, RAM memory and at least two hardware specific elementary set of instructions, called hardware elementary operations, using registers, wherein each of the registers is of greater capacity size than the one of the central processing unit, said hardware elementary operations having inputs/outputs/intermediary data compatible with masking, said device being such that:

construction of at least one part of the RAM memory is managed only by the hardware elementary operations and independent of the central processing unit, wherein the RAM memory comprises sensible randomized tables used by software instructions to execute at least a cryptographic functionality in a secure way without any values leakage,

said hardware elementary operations themselves and masking of inputs/outputs/intermediary data are monitored by said software instructions,

said software instructions being able to address different cryptographic functionalities using said hardware elementary operations according to several ways depending on each concerned functionality, said software instructions being further able to address several levels of security in the execution of the different functionalities.

2. The device according to claim 1 , wherein at least one hardware elementary operation is present in several cryptographic functionalities.

3. The device according to claim 1 , wherein said hardware elementary operations implement, for their execution, rapid dedicated RAM access devoid of interaction with the central processing unit.

4. The device according to claim 3 , wherein the rapid dedicated RAM access is used for randomization of substitution tables.

5. The device according to claim 1 , wherein said hardware elementary operations are chosen among: EXCH, MOV, XNOR, TEST_ZERO, SLL, SRL, ROTL, ROTL, XOR, AND, OR, ADD, SET_PERMUT_SEED, INIT_PERMUT_COUNT, GEN_PERMUT, WR_RAM8, WR_RAM4H, WR_RAM4L, ARITH2BOOL, BOOL2ARITH, AES_SHIFTROWL, SHIFTROWH, AES_MIXCOL64, AES_SUBBYTE32L, AES_SUBBYTE32H, AES_INVSHIFTROWL, AES_INVSHIFTROWH, AES_INVMIXCOL64, AES_INVSUBBYTE32L, AES_INVSUBBYTE32H, AES_SBOX_RAM, DES_LOAD_KEY, DES_KEYSCHEDULE_ENC, DES_KEYSCHEDULE_DEC, DES_PC2, DES_INITPERM, DES_FINALPERM, DES_EXPAND, DES_PERMUTE, DES_SBOX, DES_SBOX_RAM, DES_KEY_PACK, DES_KEY_UNPACK, MULT_2_128.

6. A method to implement different cryptographic functionalities in a device having a central processing unit, RAM memory and at least two hardware specific elementary set of instructions, called hardware elementary operations, using registers, wherein each of the registers is of greater capacity size than the one of the central processing unit, said hardware elementary operations having inputs/outputs/intermediary data compatible with masking, said method comprising the steps of:

managing at least one part of the RAM memory only by the hardware elementary operations and independent of the central processing unit, wherein the RAM memory comprises sensible randomized tables used by software instructions to execute at least a cryptographic functionality in a secure way without any values leakage,

developing said software instructions to monitor hardware elementary operations and masking of inputs/outputs/intermediary data, said software instructions being able to address the different cryptographic functionalities using said hardware elementary operations according to several ways depending on each concerned functionality,

customizing software instructions to address several levels of security in the execution of the different functionalities, and

storing the obtained software instructions for further execution of the cryptographic functionalities.

Assignments (6)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 12, 2022
From: THALES DIS FRANCE SA
To: THALES DIS FRANCE SAS
Reel/Frame 058626/0323 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 15, 2021
From: THALES DIS DESIGN SERVICES SAS (FORMERLY KNOWN AS ISSM)
To: THALES DIS FRANCE SA (FORMERLY KNOWN AS GEMALTO SA)
Reel/Frame 057801/0520 →
CHANGE OF NAME Recorded Oct 15, 2021
From: GEMALTO SA
To: THALES DIS FRANCE SA
Reel/Frame 057817/0393 →
CHANGE OF NAME Recorded Oct 13, 2021
From: ISSM
To: THALES DIS DESIGN SERVICES SAS
Reel/Frame 057789/0028 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 11, 2021
From: COULON, JEAN-ROCH; TEISSIER, SYLVERE
To: ISSM
Reel/Frame 057749/0987 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 11, 2021
From: VILLEGAS, KARINE; PERION, FABRICE
To: GEMALTO SA
Reel/Frame 057750/0063 →
Priority Claims (1)
EP 15306322 · Aug 27, 2015 · regional
Continuity (1)
Related Publication 20190138735A1 · May 9, 2019