IP Library Granted Patent US 7,899,190
Granted Patent B2
US 7,899,190 · App. 10/825,291 · Granted Mar 1, 2011

Security countermeasures for power analysis attacks

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 7,899,190
App. No.
10/825,291
Granted
Mar 1, 2011
Kind
B2
Abstract

A countermeasure for differential power analysis attacks on computing devices. The countermeasure includes the definition of a set of split mask values. The split mask values are applied to a key value used in conjunction with a masked table defined with reference to a table mask value. The set of n split mask values are defined by randomly generating n−1 split mask values and defining an nth split mask value by exclusive or'ing the table mask value with the n−1 randomly generated split mask values.

Claims (39)

1. A computing device implemented method for executing a split-mask, masking countermeasure for improving the resistance, to power analysis attacks, of a processing unit of the computing device performing a defined cryptographic function using a key, the method comprising the processing unit executing the following steps:

obtaining the key and a random key mask value r;

obtaining a set of n random input values m in 1, . . . m in n;

defining a masked function by masking the defined cryptographic function with the value m in 1^. . . ^m in n;

masking the key with the random key mask value r to define the value mkey;

obtaining a set of random split mask values m1, . . . mn−1;

defining a split mask value mn to be r^m in 1^. . . ^m in n^m1^. . . ^mn−1; and

using the values m1, . . . , mn and mkey to define input for the masked function.

2. The method of claim 1 in which the encryption function is a table look-up.

3. The method of claims 1 or 2 in which masking is a bitwise exclusive or operation carried out on binary values.

4. A computing device implemented method for executing a split-mask, masking countermeasure for improving the resistance, to power analysis attacks, of a processing unit of the computing device performing a cryptographic function using a key to encrypt a plaintext value using a look up on a defined look-up table, the method comprising the processing unit executing the following steps:

obtaining the key and a random key mask value r;

defining a value mkey by masking the key with the random key mask value r;

obtaining a set of n random input values m in 1, . . . m in n;

defining a masked table by masking the defined look-up table with the value m in 1^. . . ^m in n;

obtaining a set of split mask values comprising random values m1, . . . mn−1;

defining a split mask value mn to be r^m in 1^. . . ^m in n^m1^. . . ^mn−1; and

masking the plaintext with the split mask values m1, . . . , mn and mkey to define input for the

masked table, the masked table to be used in place of the defined look-up table in the cryptographic operation.

5. The method of claim 4 in which masking is a bitwise exclusive or operation carried out on binary values.

6. A computing device program product for improving the resistance, to power analysis attacks, of a processing unit using a key to perform a defined cryptographic function, the computing device program product comprising a computer usable storage medium having computer readable program code means stored in said storage medium, and comprising

program code means for obtaining the key and a random key mask value r,

program code means for obtaining a set of n random input values m in 1, m in n,

program code means for defining a masked function by masking the defined cryptographic function with the value m in 1^. . . ^m in n,

program code means for masking the key with the random key mask value r to define the value mkey,

program code means for obtaining a set of random split mask values m1, . . . mn−1,

program code means for defining a split mask value mn to be r^m in 1^m in n^m1^. . . ^mn−1, and

program code means for using the values m1, . . . , mn and mkey to define input for the masked function.

7. The computing device program product of claim 6 in which the encryption function is a table look-up.

8. The computing device program product of claims 6 or 7 in which masking is a bitwise exclusive or operation carried out on binary values.

9. A computing device program product for improving the resistance, to power analysis attacks, of a processing unit performing a cryptographic function using a key to encrypt a plaintext value using a look up on a table, the computing device program product comprising a computer usable storage medium having computer readable program code means stored in said storage medium, and comprising

program code means for obtaining the key and a random key mask value r,

program code means for obtaining a set of n random input values m in 1, . . . m in n,

program code means for defining a masked table by masking the defined look-up table with the value m in 1^. . . ^m in n,

program code means for masking the key with the random key mask value r to define the value mkey,

program code means for obtaining a set of random split mask values m1, . . . mn−1,

program code means for defining a split mask value mn to be r^m in 1^. . . ^m in n^m1^. . . ^mn−1, and

program code means for masking the plaintext with the values m1, . . . , mn and mkey to define input for the masked table.

10. The computing device program product of claim 9 in which masking is a bitwise exclusive or operation carried out on binary values.

Assignments (4)
NUNC PRO TUNC ASSIGNMENT Recorded Jun 19, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064269/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064104/0103 →
CHANGE OF NAME Recorded Nov 4, 2014
From: RESEARCH IN MOTION LIMITED
To: BLACKBERRY LIMITED
Reel/Frame 034161/0056 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 16, 2004
From: GOBOTYS, CATHERINE HELEN
To: RESEARCH IN MOTION LIMITED
Reel/Frame 015229/0096 →