Exponent splitting for cryptographic operations
AssigneeCryptography Research, Inc.
InventorMichael Tunstall
Life of this patent
Estimating the term…
Abstract
A first share value and a second share value may be received. A combination of the first share value and the second share value may correspond to an exponent value. The value of a first register is updated using a first equation that is based on the first and second share values and the value of a second register is updated using a second equation that is based on the second share value. One of the value of the first register or the value of the second register is selected based on a bit value of the second share value.
Claims20
A method comprising:
- receiving an indication of an exponent value for a cryptographic operation that uses an exponentiation method to encode plaintext based on the exponent value;
- splitting the exponent value into a first share value and a second share value, wherein a result of a logical or arithmetic operation of the first share value and the second share value is equal to the exponent value;
- updating a first value of a first register based on a first equation with the first and second share values as inputs to the first equation;
- updating a second value of a second register based on a second equation with the second share value as an input to the second equation, wherein one of the first equation and the second equation includes additional calculations such that power consumption to update the first register and power consumption to update the second register prevents retrieval of the exponent value from a Differential Power Analysis (DPA) attack;
- and
- performing at least a portion of the cryptographic operation with a selected one of the first value of the first register or the second value of the second register.
A system comprising:
- a memory;
- and
- a processing device, operatively coupled with the memory, to:
- receive an indication of an exponent value for a cryptographic operation that uses an exponentiation method to encode plaintext based on the exponent value;
- split the exponent value into a first share value and a second share value, wherein a result of a logical or arithmetic operation of the first share value and the second share value is equal to the exponent value;
- update a first value of a first register based on a first equation with the first and second share values as inputs to the first equation;
- update a second value of a second register based on a second equation with the second share value as an input to the second equation, wherein one of the first equation and the second equation includes additional calculations such that power consumption to update the first register and power consumption to update the second register prevents retrieval of the exponent value from a Differential Power Analysis (DPA) attack;
- and
- perform at least a portion of the cryptographic operation with a selected one of the first value of the first register or the second value of the second register.
A non-transitory computer readable medium comprising instructions, which when executed by a processing device, cause the processing device to perform operations comprising:
- receiving an indication of an exponent value for a cryptographic operation that uses an exponentiation method to encode plaintext based on the exponent value;
- splitting the exponent value into a first share value and a second share value, wherein a result of a logical or arithmetic operation of the first share value and the second share value is equal to the exponent value;
- updating a first value of a first register based on a first equation with the first and second share values as inputs to the first equation;
- updating a second value of a second register based on a second equation with the second share value as an input to the second equation, wherein one of the first equation and the second equation includes additional calculations such that power consumption to update the first register and power consumption to update the second register prevents retrieval of the exponent value from a Differential Power Analysis (DPA) attack;
- and
- performing at least a portion of the cryptographic operation with a selected one of the first value of the first register or the second value of the second register.
Dependencies are inferred from the claim text.