Using a secret generator in an elliptic curve cryptography (ECC) digital signature scheme
First Claim
Patent Images
1. An elliptic curve cryptography (ECC) digital signature method comprising:
- generating a shared secret generator, the shared secret generator being known to a signer and a verifier, the shared secret generator being an element of an elliptic curve subgroup specified by a public generator of an elliptic curve cryptography system, wherein generating the shared secret generator comprises;
using a point decompression function to generate a coordinate pair; and
designating the coordinate pair as the shared secret generator based on a determination that the coordinate pair belongs to the elliptic curve subgroup;
using the shared secret generator to generate, by operation of one or more processors, a key pair of the signer, the key pair of the signer comprising a public key and a private key;
using the private key to generate a digital signature of the signer based on a message; and
providing the digital signature of the signer for transmission to the verifier, the digital signature enabling the verifier to verify authenticity of the message.
1 Assignment
0 Petitions
Accused Products
Abstract
In a general aspect, a secret generator is used in an elliptic curve cryptography (ECC) scheme. In some aspects, an elliptic curve subgroup is specified by a public generator of an ECC system, and the secret generator is an element of the elliptic curve subgroup. In some instances, the secret generator is used to generate an ECC key pair that includes a public key and a private key, and the private key is used to generate a digital signature based on a message. In some instances, the public key and the secret generator are used to verify the digital signature.
-
Citations
16 Claims
-
1. An elliptic curve cryptography (ECC) digital signature method comprising:
-
generating a shared secret generator, the shared secret generator being known to a signer and a verifier, the shared secret generator being an element of an elliptic curve subgroup specified by a public generator of an elliptic curve cryptography system, wherein generating the shared secret generator comprises; using a point decompression function to generate a coordinate pair; and designating the coordinate pair as the shared secret generator based on a determination that the coordinate pair belongs to the elliptic curve subgroup; using the shared secret generator to generate, by operation of one or more processors, a key pair of the signer, the key pair of the signer comprising a public key and a private key; using the private key to generate a digital signature of the signer based on a message; and providing the digital signature of the signer for transmission to the verifier, the digital signature enabling the verifier to verify authenticity of the message. - View Dependent Claims (2, 3, 4)
-
-
5. A system comprising:
-
a data processing apparatus; a non-transitory computer-readable medium storing instructions that when executed by the data processing apparatus perform operations comprising; generating a shared secret generator, the shared secret generator being known to a signer and a verifier, the shared secret generator being an element of an elliptic curve subgroup specified by a public generator of an elliptic curve cryptography system, wherein generating the shared secret generator comprises; using a point decompression function to generate a coordinate pair; and designating the coordinate pair as the shared secret generator based on a determination that the coordinate pair belongs to the elliptic curve subgroup; using the shared secret generator to generate a key pair of the signer, the key pair of the signer comprising a public key and a private key; and using the private key to generate a digital signature of the signer based on a message; and a communication interface that sends the digital signature of the signer to the verifier, the digital signature enabling the verifier to verify authenticity of the message. - View Dependent Claims (6, 7, 8)
-
-
9. An elliptic curve cryptography (ECC) signature verification method comprising:
-
receiving a digital signature of a signer, the digital signature of the signer being associated with a message; generating a shared secret generator selected from an elliptic curve subgroup, the shared secret generator known to the signer and a verifier, the elliptic curve subgroup specified by a public generator of an elliptic curve cryptography system, wherein generating the shared secret generator comprises; using a point decompression function to generate a coordinate pair; and designating the coordinate pair as the shared secret generator based on a determination that the coordinate pair belongs to the elliptic curve subgroup; accessing a public key of the signer; and by operation of one or more processors, using the public key of the signer and the shared secret generator to verify the digital signature of the signer. - View Dependent Claims (10, 11, 12)
-
-
13. A system comprising:
-
a data processing apparatus; a communication interface that receives a digital signature of a signer, the digital signature of the signer associated with a message; a non-transitory computer-readable medium storing instructions that when executed by the data processing apparatus perform operations comprising; generating a shared secret generator selected from an elliptic curve subgroup, the shared secret generator known to the signer and a verifier, the elliptic curve subgroup specified by a public generator of an elliptic curve cryptography system, wherein generating the shared secret generator comprises; using a point decompression function to generate a coordinate pair; and designating the coordinate pair as the shared secret generator based on a determination that the coordinate pair belongs to the elliptic curve subgroup; accessing a public key of the signer; and using the public key of the signer and the shared secret generator to verify the digital signature of the signer. - View Dependent Claims (14, 15, 16)
-
Specification