IP Library › Granted Patent US 12,277,220
Granted Patent B2
US 12,277,220 · App. 17/651,247 · Granted Apr 15, 2025

Method and device for detecting a profiling attack

Inventors: Nikita Veshchikov (Brussels, BE); Jack Connor (Biggar, GB)
Assignee: NXP B.V.
G06F21/556G06F2221/034
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 12,277,220
App. No.
17/651,247
Granted
Apr 15, 2025
Kind
B2
Abstract

A method is provided for detecting a profiling attack in an electronic device. The method includes causing provisioning of the device with a key and causing key operations using the key. A total key provisions counter value of a total key provisions counter is updated in response to the key provisioning. Also, a counter value of a total operations counter corresponding to a total number of operations is updated using the detected provisioned keys. A predetermined relationship between the total key provisions counter value and the total operations counter value is detected. An indication of the profiling attack is provided in response to the relationship meeting a predetermined criterion. In another embodiment, an electronic device having a total key provisions counter value and a total key operations counter value is provided. A predetermined relationship between the counter values indicates a profiling attack of the electronic device.

Claims (40)

1. A method for detecting a profiling attack for acquiring side-channel measurements to be used in a profiled side-channel attack on an electronic device, the method comprising:

causing provisioning of the device with a key and causing key operations using the key;

incrementing a total key provisions counter value of a total key provisions counter in response to provisioning of the device with the key, and updating a counter value of a total operations counter corresponding to a total number of operations using provisioned keys with which the device has been provisioned;

detecting a predetermined relationship between the total key provisions counter value and the total operations counter value; and

providing an indication of the profiling attack in response to the relationship meeting a predetermined criterion;

wherein the key is a valid key and the total operations counter value corresponds to a number of operations performed by the device using provisioned keys, each of which is a valid key.

2. The method of claim 1 , further comprising determining if the key has been previously provisioned;

in response to determining that the key has not been previously provisioned, enabling a key provisioning counter corresponding to the key and initializing a count value of the key provisioning counter to an initial value, and in response to determining that the key has been previously provisioned, incrementing the key provisioning counter corresponding to the key; and

detecting a pattern between counter values corresponding to previously previsioned keys and counter values of operations using each previously provisioned key; and

providing the indication of the profiling attack in response to detecting the pattern.

3. The method of claim 1 , wherein the operations using the key are encryption operations.

4. The method of claim 1 , wherein the provisioned keys are stored in a memory, wherein when a number of stored provisioned keys approaches a maximum storage capacity of the memory, keys are evicted from the memory using a predetermined key eviction strategy.

5. The method of claim 4 , wherein a least recently used key is evicted when the maximum storage capacity is reached.

6. The method of claim 1 , wherein the provisioned keys are stored in a memory, and wherein prior to storing, the provisioned keys are transformed using a predetermined algorithm.

7. The method of claim 6 , wherein the predetermined algorithm is one of a hashing algorithm or a compression algorithm.

8. The method of claim 1 , wherein detecting a predetermined relationship between the total key provisions and the total number of operations comprises determining a ratio of total key provisions to the total number of operations and comparing the ratio to a threshold.

9. The method of claim 1 , wherein the key is one of either a cryptographic key, a pin code, or a password.

10. A method for detecting a profiling attack for acquiring side-channel measurements to be used in a profiled side-channel attack on an electronic device, the method comprising:

causing provisioning of the device with a key and causing key operations using the key;

updating a total key provisions counter in response to the key provisioning, and updating a counter corresponding to a total number of operations using the provisioned keys;

determining if the key is a previously provisioned key;

in response to determining that the key has not been previously provisioned, enabling a key provisioning counter corresponding to the key and initializing a count value of the key provisioning counter to an initial value, and in response to determining that the key has been previously provisioned, updating the key provisioning counter that corresponds to the provisioned key;

detecting a predetermined relationship between the total key provisions and the total number of operations; and

providing an indication of the profiling attack in response to the relationship meeting a predetermined criterion.

11. The method of claim 10 , further comprising:

detecting a pattern between counter values corresponding to previously previsioned keys and counter values of operations using each previously provisioned key; and

providing the indication of the profiling attack in response to detecting the pattern.

12. The method of claim 10 , wherein the operations using the key are encryption operations.

13. The method of claim 10 , wherein the provisioned keys are stored in a memory, wherein when a number of stored provisioned keys approaches a maximum storage capacity of the memory, keys are evicted from the memory using a predetermined key eviction strategy.

14. The method of claim 13 , wherein a least recently used key is evicted when the maximum storage capacity is reached.

15. The method of claim 10 , wherein the provisioned keys are stored in a memory, and wherein prior to storing, the provisioned keys are transformed using a predetermined algorithm.

16. The method of claim 15 , wherein the predetermined algorithm is one of a hashing algorithm or a compression algorithm.

17. The method of claim 10 , wherein detecting a predetermined relationship between the total key provisions and the total number of operations comprises determining a ratio of total key provisions to the total number of operations and comparing the ratio to a threshold.

18. The method of claim 10 , wherein the key is one of either a cryptographic key, a pin code, or a password.

19. An electronic device comprising:

a plurality of counters, each counter of the plurality of counters coupled to count usage of one assigned key of a plurality of keys;

a total key operations counter coupled to count a total number of operations using the plurality of keys;

a total key provisions counter coupled to count a total number of times a key is provisioned into the electronic device; and

a key management circuit coupled to the plurality of counters, the total key operations counter, and the total key provisions counter, the key management circuit coupled to control the operations using the plurality of keys, wherein the key management circuit detects a profiling attack by comparing a predetermined relationship between selected counters of the plurality of counters, the total key operations counter, and the total key provisions counter.

20. The method of claim 19 , wherein the key management circuit detects a predetermined relationship between a total key provisions counter value and a total key operations counter value and in response to the predetermined relationship meeting a predetermined criterion, providing an indication of a profiling attack.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 16, 2022
From: VESHCHIKOV, NIKITA; CONNOR, JACK
To: NXP B.V.
Reel/Frame 059167/0320 →
Continuity (1)
Related Publication 20230259618A1 · Aug 17, 2023
References Cited (24)
US 5974507A · Arimilli et al. · 1999 [cited by applicant]
US 7089362B2 · Creta et al. · 2006 [cited by applicant]
US 9436603B1 · Pohlack · 2016 [cited by applicant]
US 9443091B2 · Emmett · 2016 [cited by examiner]
US 9774614B2 · Patne et al. · 2017 [cited by applicant]
US 10521585B2 · Cheng et al. · 2019 [cited by applicant]
US 10860714B2 · Browne et al. · 2020 [cited by applicant]
US 20090279687A1 · Yoshimoto et al. · 2009 [cited by applicant]
US 20150010146A1 · Matsuda · 2015 [cited by examiner]
US 20170163416A1 · Hars · 2017 [cited by examiner]
US 20190042739A1 · Browne · 2019 [cited by examiner]
US 20190130096A1 · Chen et al. · 2019 [cited by applicant]
US 20190138719A1 · Sultana et al. · 2019 [cited by applicant]
US 20190253439A1 · Payton · 2019 [cited by applicant]
US 20220014366A1 · Almeida · 2022 [cited by applicant]
CN 109120618A · 2019 [cited by applicant]
CN 110659499A · 2020 [cited by applicant]
DE 102019131231A1 · 2020 [cited by applicant]
TW 201541283A · 2015 [cited by applicant]
WO 2018088958A1 · 2018 [cited by applicant]
Hettwer, Benjamin; “Deep Learning-Enhanced Side-Channel Analysis of Cryptographic Implementations;” Dissertation; Thesis submitted: Oct. 29, 2020; Last revision: May 25, 2021. [cited by applicant]
International Business Machines Corporation; “Method for improving cryptographic ciphers against power-analysis attacks”, Research Disclosure, Kenneth Mason Publications, Hampshire, UK, GB, vol. 444, No. 169, Apr. 1, 20… [cited by applicant]
Choudary, Omar et al.; “Template Attacks on Different Devices”; International Workshop on Constructive Side-Channel Analysis and Secure Design; Cosade 2014; Lecture Notes in Computer Science, vol. 8622; First online Aug… [cited by applicant]
Zotkin, Yevhenii et al.; “Deep Learning vs Templates Attacks in Front of Fundamental Targets: Experimental Study”; Computer Science; IACR Cryptology; Dec. 20, 2018. [cited by applicant]