Power Analysis Countermeasure for the ECMQV Key Agreement Algorithm
AssigneeResearch In Motion Limited
InventorNevine Maurice Nassif Ebeid
Life of this patent
Estimating the term…
Abstract
Execution of the ECMQV key agreement algorithm requires determination of an implicit signature, which determination involves arithmetic operations. Some of the arithmetic operations employ a long-term cryptographic key. It is the execution of these arithmetic operations that can make the execution of the ECMQV key agreement algorithm vulnerable to a power analysis attack. In particular, an attacker using a power analysis attack may determine the long-term cryptographic key. By modifying the sequence of operations involved in the determination of the implicit signature and the inputs to those operations, power analysis attacks may no longer be applied to determine the long-term cryptographic key.
Claims15
A method of encrypting a message in a manner that counters power analysis attacks, wherein a long-term private cryptographic key has been selected and a long-term public cryptographic key has been determined based on said long-term private cryptographic key and a base point on a given elliptic curve, said base point having a prime order, said method comprising:
- determining a modular inverse of said long-term private cryptographic key;
- generating a sessional private cryptographic key and a sessional public cryptographic key;
- determining an implicit signature based on said modular inverse of said long-term private cryptographic key, said sessional private cryptographic key, said sessional public cryptographic key and said long-term private cryptographic key;
- determining a shared secret cryptographic key based on said implicit signature;
- and
- encrypting a message using said shared secret cryptographic key.
A mobile communication device for encrypting a message in a manner that counters power analysis attacks, wherein a long-term private cryptographic key has been selected and a long-term public cryptographic key has been determined based on said long-term private cryptographic key and a base point on a given elliptic curve, said base point having a prime order, said mobile communication device comprising:
- a processor adapted to:
- determine a modular inverse of said long-term private cryptographic key;
- generate a sessional private cryptographic key and a sessional public cryptographic key;
- determine an implicit signature based on said modular inverse of said long-term private cryptographic key, said sessional private cryptographic key, said sessional public cryptographic key and said long-term private cryptographic key;
- determine a shared secret cryptographic key based on said implicit signature;
- and
- encrypt a message using said shared secret cryptographic key.
A computer readable medium containing computer-executable instructions that, when performed by a processor given a long-term private cryptographic key and a long-term public cryptographic key, which has been determined based on said long-term private cryptographic key and a base point on a given elliptic curve, said base point having a prime order, cause said processor to:
- generate a sessional private cryptographic key and a sessional public cryptographic key;
- determine an implicit signature based on said sessional private cryptographic key, said sessional public cryptographic key, said long-term private cryptographic key and one of:
- a random number;
- and
- a modular inverse of said long-term private cryptographic key;
- determine a shared secret cryptographic key based on said implicit signature;
- and
- encrypt a message using said shared secret cryptographic key.
A method of encrypting a message in a manner that counters power analysis attacks, wherein a long-term private cryptographic key has been selected and a long-term public cryptographic key has been determined based on said long-term private cryptographic key a base point on a given elliptic curve, said base point having a prime order, said method comprising:
- generating a sessional private cryptographic key and a sessional public cryptographic key;
- generating a random number;
- determining an implicit signature based on said random number, said sessional private cryptographic key, said sessional public cryptographic key and said long-term private cryptographic key;
- determining a shared secret cryptographic key based on said implicit signature;
- and
- encrypting a message using said shared secret cryptographic key.
A mobile communication device for encrypting a message in a manner that counters power analysis attacks, wherein a long-term private cryptographic key has been selected and a long-term public cryptographic key has been determined based on said long-term private cryptographic key and a base point on a given elliptic curve, said base point having a prime order, said mobile communication device comprising:
- a processor adapted to:
- generate a sessional private cryptographic key and a sessional public cryptographic key;
- generate a random number;
- determine an implicit signature based on said random number, said sessional private cryptographic key, said sessional public cryptographic key and said long-term private cryptographic key;
- determine a shared secret cryptographic key based on said implicit signature;
- and
- encrypt a message using said shared secret cryptographic key.
Dependencies are inferred from the claim text.