Differential power analysis—resistant cryptographic processing
First Claim
1. A device for securely performing a cryptographic operation involving a secret, comprising:
- an input to receive a quantity to be processed;
a source of unpredictable information; and
a processor to perform the cryptographic operation using the secret and the received quantity, wherein the cryptographic operation is decorrelated from externally-monitorable signals produced through power consumption of the device by using the unpredictable information to select between different parallel processes for performing the cryptographic operation.
0 Assignments
0 Petitions
Accused Products
Abstract
Information leaked from smart cards and other tamper resistant cryptographic devices can be statistically analyzed to determine keys or other secret data. A data collection and analysis system is configured with an analog-to-digital converter connected to measure the device'"'"'s consumption of electrical power, or some other property of the target device, that varies during the device'"'"'s processing. As the target device performs cryptographic operations, data from the A/D converter are recorded for each cryptographic operation. The stored data are then processed using statistical analysis, yielding the entire key, or partial information about the key that can be used to accelerate a brute force search or other attack.
241 Citations
6 Claims
-
1. A device for securely performing a cryptographic operation involving a secret, comprising:
-
an input to receive a quantity to be processed; a source of unpredictable information; and a processor to perform the cryptographic operation using the secret and the received quantity, wherein the cryptographic operation is decorrelated from externally-monitorable signals produced through power consumption of the device by using the unpredictable information to select between different parallel processes for performing the cryptographic operation. - View Dependent Claims (2)
-
-
3. A non-transitory computer readable medium including data that, when accessed by a processing device, cause the processing device to perform operations comprising:
-
receiving a quantity to be processed in a cryptographic operation involving secret data; generating unpredictable information; performing the cryptographic operation using the secret data and the received quantity; and decorrelating the cryptographic operation from externally-monitorable signals produced through power consumption of the processing device, by using the unpredictable information to select between different parallel processes for performing the cryptographic operation. - View Dependent Claims (4)
-
-
5. A method of securely performing a cryptographic processing operation in a device involving a secret, comprising:
-
receiving a quantity to be processed; generating unpredictable information; performing the cryptographic operation using the received quantity, the cryptographic operation including a permutation; and decorrelating the cryptographic operation from externally-monitorable signals produced through power consumption of the device, wherein decorrelating the cryptographic operation includes; generating a blinding factor based on the unpredictable information; blinding a value with the blinding factor, the blinded value to be used in the permutation; performing the permutation; and unblinding the blinded value in the permutation.
-
-
6. A method for securely performing a cryptographic operation in a device involving a secret, comprising:
-
receiving a quantity to be processed; generating unpredictable information; generating an internal clock signal from an external clock signal, wherein generating the internal clock signal comprises using the unpredictable information to select a closest corresponding cycle of the external clock signal to be used as the internal clock signal, and further wherein the unpredictable information randomly varies the internal clock signal by adjusting at least one characteristic of the internal clock signal selected from the group consisting of frequency, drift, and jitter; performing the cryptographic operation on the received quantity using the internal clock signal; and decorrelating the cryptographic operation from externally-monitorable signals produced through power consumption of the device.
-
Specification