IP Library Granted Patent US 8,477,933
Granted Patent B2
US 8,477,933 · App. 13/123,655 · Granted Jul 2, 2013

Cryptographic algorithm fault protections

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,477,933
App. No.
13/123,655
Granted
Jul 2, 2013
Kind
B2
Abstract

The invention relates to a method for securing the execution of a cryptographic algorithm A against fault attacks. Given a cryptographic key KO and a message M, the cryptographic algorithm A is set to compute a value A(KO,M). Given a relationship R between A(KO,M) and A(f(K 0 ),g(M)), where f and g are two bijections, and where f is different from the identity function, the method comprises: a. computing the expected result A(KO,M) of the cryptographic algorithm b. computing a modified result A(f(K 0 ),g(M)), by applying the cryptographic algorithm A on a modified key f(K 0 ) and on a message g(M), c. checking whether the relationship R between the values A(KO,M) and A(f(K 0 ),g(M)) computed in the two preceding steps is verified d. detecting an attack if the relationship R is not verified. The invention also relates to a cryptographic device embodying the above method.

Claims (32)

1. A method for operating a cryptographic device to secure a cryptographic algorithm A executing on the cryptographic device against fault attacks, wherein, given a cryptographic key KO and a message M, the cryptographic algorithm A is set to compute a value A(KO,M), and wherein, given a relationship R between A(KO,M) and A(f(K 0 ),g(M)), where f and g are two bijections, and where f is different from the identity function, the method comprises:

a. computing the expected result A(KO,M) of the cryptographic algorithm;

b. computing a modified result A(f(K 0 ),g(M)), by applying the cryptographic algorithm A on a modified key f(KO) and on a message g(M)

c. checking whether the relationship R between the values A(KO,M) and A(f(K 0 ),g(M)) computed in the two preceding steps is verified;

d. detecting an attack if the relationship R is not verified.

2. The method according to claim 1 , wherein the bijection f consists in inverting all bits of the key KO.

3. The method according to claim 1 or 2 , wherein the bijection g consists in inverting all bits of the message M.

4. The method according to claim 1 or 2 , wherein the relationship R consists in the fact that the each bit of the expected result A(KO,M) is the inverse of the corresponding bit of the modified result A(f(K 0 ),g(M)).

5. The method according to claim 1 or 2 , comprising generating n random keys K 1 . . . Kn, computing in random order A(Ki,M) and A(f(Ki),g(M)) for every i between 0 and n, checking the relationship R for each couple of values A(Ki,M) and A(f(Ki),g(M)), and detecting an attack if the relationship R is not verified for any i between 0 and n.

6. The cryptographic device implementing a cryptographic algorithm A, wherein, given a cryptographic key KO and a message M, the cryptographic algorithm A is set to compute a value A(KO,M), given a relationship R between A(KO,M) and A(f(K 0 ),g(M)), where f and g are two bijections, and where f is different from the identity function, the cryptographic device comprises means for:

a. computing the expected result A(KO,M) of the cryptographic algorithm;

b. computing a modified result A(f(K 0 ),g(M)), by applying the cryptographic algorithm A on a modified key f(KO) and on a message g(M);

c. checking whether the relationship R between the values A(KO,M) and A(f(K 0 ),g(M)) computed in the two preceding steps is verified;

d. detecting an attack if the relationship R is not verified.

7. The cryptographic device according to claim 6 , wherein the bijection f consists in inverting all bits of the key KO.

8. The cryptographic device according to claim 6 or 7 , wherein the bijection g consists in inverting all bits of the message M.

9. The cryptographic device according to claim 6 or 7 , wherein the relationship R consists in the fact that the each bit of the expected result A(KO,M) is the inverse of the corresponding bit of the modified result A(f(K 0 ),g(M)).

10. The cryptographic device according to claim 6 or 7 , comprising means for:

a. generating n random keys K 1 . . . Kn,

b. computing in random order A(Ki,M) and A(f(Ki),g(M)) for every i between 0 and n,

c. checking the relationship R for each couple of values A(Ki,M) and A(f(Ki),g(M)), and for

d. detecting an attack if the relationship R is not verified for any between 0 and n.

11. The cryptographic device according to claim 6 or 7 , wherein the cryptographic device is a smart card, a TPM, or an HSM.

12. The method according to claim 3 , wherein the relationship R consists in the fact that the each bit of the expected result A(KO,M) is the inverse of the corresponding bit of the modified result A(f(K 0 ),g(M)).

13. The method according to claim 3 , comprising generating n random keys K 1 . . . Kn, computing in random order A(Ki M) and A(f(Ki),g(M)) for every i between 0 and n, checking the relationship R for each couple of values A(Ki,M) and A(f(Ki),g(M)), and detecting an attack if the relationship R is not verified for any i between 0 and n.

14. The cryptographic device according to claim 8 , wherein the relationship R consists in the fact that the each bit of the expected result A(KO,M) is the inverse of the corresponding bit of the modified result A(f(K 0 ),g(M)).

15. The cryptographic device according claim 8 , comprising means for:

a. generating n random keys K 1 . . . Kn,

b. computing in random order A(Ki,M) and A(f(Ki),g(M)) for every i between 0 and n,

c. checking the relationship R for each couple of values A(Ki,M) and A(f(Ki),g(M)), and for

d. detecting an attack if the relationship R is not verified for any between 0 and n.

16. The cryptographic device according to claim 8 , wherein the cryptographic device is a smart card, a TPM, or an HSM.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 1, 2023
From: THALES DIS FRANCE SA
To: THALES DIS FRANCE SAS
Reel/Frame 064771/0016 →
CHANGE OF NAME Recorded Aug 25, 2023
From: GEMALTO SA
To: THALES DIS FRANCE SA
Reel/Frame 064716/0408 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 19, 2011
From: VIGILANT, DAVID; SALGADO, STEPHANIE
To: GEMALTO SA
Reel/Frame 026152/0592 →