Method for strengthening the implementation of ECDSA against power analysis
AssigneeCerticom Corp.
InventorRobert J. Lambert
Life of this patent
Estimating the term…
Loading patent…
AssigneeCerticom Corp.
InventorRobert J. Lambert
Estimating the term…
A method of inhibiting the disclosure of confidential information through power analysis attacks on processors in cryptographic systems. The method masks a cryptographic operation using a generator G. A secret value, which may be combined with the generator G to form a secret generator is generated. The secret value is divided into a plurality of parts. A random value is generated for association with the plurality of parts. Each of the plurality of parts is combined with the random value to derive a plurality of new values such that the new values when combined are equivalent to the secret value. Each of the new values is used in the cryptographic operation, thereby using the secret generator in place of the generator G in the cryptographic operation. The introduction of randomness facilitates the introduction of noise into algorithms used by cryptographic systems so as to mask the secret value and provide protection against power analysis attacks.
A method of masking a cryptographic operation using a generator G, said method comprising the steps of:
A method of computing a digital signature on a message m, said signature being computed by a signer having a private key d and a public key dG, where G is a generator of a cryptographic group, said method comprising:
A method of computing a public key corresponding to a private key d in a cryptosystem, wherein the cryptosystem uses a generator G, said method comprising the steps of:
A method of computing an ECDSA signature on a message m, said method being performed by a signer having a private key d and a public key dG, where G is a generator, said signature comprising an ephemeral public key r corresponding to an ephemeral private key k and a signature component s derived from said message, m, said ephemeral private key k, and said private d, said method characterised in that the computation of said signature comprises the steps of:
A method of inverting an element k of a finite field, comprising the steps of:
Dependencies are inferred from the claim text.
Drawings are temporarily unavailable. Open the PDF at USPTO
From the US filing history. Foreign family members aren’t listed.
Backward citations are indexed for grants only.
Finite field arithmetic: over elliptic curves
Countermeasures against attacks on cryptographic mechanisms: for power analysis, e.g. differential power analysis [DPA] or simple power analysis [SPA]
Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords: revocation or update of secret…
Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy: involving…
Term end not estimated
This invention relates to a method for minimizing the vulnerability of cryptographic systems to power analysis-type attacks.
Cryptographic systems generally owe their security to the fact that a particular piece of information is kept secret. When a cryptographic algorithm is designed, it is usually assumed that a potential attacker has access to only the public values. Without the secret information it is computationally infeasible to break the scheme or the algorithm. Once an attacker is in possession of a piece of secret information they may be able to forge the signature of the victim and also decrypt secret messages intended for the victim. Thus it is of paramount importance to maintain the secrecy and integrity of the secret information in the system. The secret information is generally stored within a secure boundary in the memory space of the cryptographic processor, making it difficult for an attacker to gain direct access to the secret information. Manufacturers incorporate various types of tamper-proof hardware to prevent illicit access to the secret information. In order to decide how much tamper proofing to implement in the cryptographic system, the designers must consider the resources available to a potential attacker and the value of the information being protected. The magnitude of these resources is used to determine how much physical security to place within the device to thwart attackers who attempt to gain direct access to the secure memory. Tamper-proof devices can help prevent an attacker who is unwilling or unable to spend large amounts of time and money from gaining direct access to the secret information in the cryptographic system. Typically, the amount of work that is required to defeat tamper proof hardware exceeds the value of the information being protected.
However, a new class of attacks has been developed on cryptographic systems that are relatively easy and inexpensive to mount in practice since they ignore the tamper-proof hardware. Recent attacks on cryptographic systems have shown that devices with secure memory may leak information that depends on the secret information, for example in the power usage of a processor computing with private information. Such attacks take advantage of information provided by an insecure channel in the device by using the channel in a method not anticipated by its designers, and so render redundant any tamper proofing in the device. Such insecure channels can be the power supply, electromagnetic radiation, or the time taken to perform operations. At particular risk are portable cryptographic tokens, including smart cards, pagers, personal digital assistants, and the like. Smart cards are especially vulnerable since they rely on an external power supply, whose output may be monitored non-intrusively. Access to the power supply is required for proper functioning of the device and so is not usually prevented with tamper-proof hardware.
An embodiment of the invention will now be described by way of example only with reference to the accompanying drawings in which:
FIG. 1 is a schematic diagram of a constrained device;
FIG. 2 is a schematic representation of steps of a method performed by the device of FIG. 1; and
A mechanism for protection against power analysis attacks on cryptographic systems involves the introduction of random values into existing algorithms employed by cryptographic systems. These random values are intended to introduce noise into the system.
This technique can be applied to a number of cryptographic systems, including encryption algorithms, decryption algorithms, signature schemes, and the like. In the preferred embodiment, the technique is applied to the ECDSA (elliptic curve digital signature algorithm) on a constrained device, typically a smart card, in order to inhibit the leakage of secret information.
In the ECDSA, as described in the ANSI X9.62 standard, the public values are: