# US 10,320,565 B2 · Generating an elliptic curve point in an elliptic curve cryptographic system

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,320,565 B2
- Document ID: US10320565B2
- Status: Granted
- Kind: B2
- Application number: 15/445,888
- Filed: 2017-02-28
- Published: 2018-08-30
- Granted: 2019-06-11
- Earliest claimed: 2017-02-28
- Assignees: Certicom Corp.
- Applicants: Certicom Corp.
- Inventors: Daniel Richard L. Brown
- Web page: https://patentgrep.com/patent/US10320565B2

## CPC

- H04L 9/3066: {involving algebraic varieties, e.g. elliptic or hyper-elliptic curves}
- H04L 9/0841: {involving Diffie-Hellman or related key agreement protocols}
- H04L 9/3252: {using DSA or related signature schemes, e.g. elliptic based signatures, ElGamal or Schnorr schemes}
- H04L 9/3263: {involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements (network architectures or network communication protocols for supporting authentication of entities using certificates in a packet data network H04L63/0823)}
- H04L 2209/122: Hardware reduction or efficient architectures
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Systems, methods, and software can be used to generate elliptic curve points. In some aspect, the method includes: selecting a field size of 8^91+5; selecting a curve equation that is compatible to the field size; using, by a hardware processor, the selected field size to generate an elliptic curve point; and using, by the hardware processor, the elliptic curve point in an Elliptic Curve Cryptography (ECC) operation.

## Claims

### Claim 1

A method for performing an encryption or decryption operation in a cryptographic system, comprising:
selecting, by a hardware processor of a first electronic device, a field size that is one of 8^91+5 or 8^95−9;
selecting, by the hardware processor of the first electronic device, a curve function that is compatible to the field size;
transmitting, by the first electronic device, a first public key to a second electronic device;
in response to the first public key, receiving, by the first electronic device, a second public key from the second electronic device;
generating, by the hardware processor of the first electronic device, an elliptic curve point based on the second public key by using the selected field size;
determining, by the hardware processor of the first electronic device, a shared secret based on the elliptic curve point and
performing, by the hardware processor of the first electronic device, at least one of an encryption or a decryption operation based on the shared secret.

### Claim 2 (depends on 1)

The method of claim 1, wherein the curve function is represented by 2y2=x3+x.

### Claim 3 (depends on 2)

The method of claim 2, wherein the elliptic curve point is generated using a mapping function represented by
x
i
=
i
-
3
⁢
⁢
i
1
-
ir
2
,
where r represent a field element, i represents an integer, and xi represents an x-coordinate of the elliptic curve point.

### Claim 4 (depends on 1)

The method of claim 1, further comprising generating additional elliptic curve points using the selected field size.

### Claim 5

A communication device, comprising:
at least one hardware processor;
a non-transitory computer-readable storage medium coupled to the at least one hardware processor and storing programming instructions for execution by the at least one hardware processor, wherein the programming instructions instruct the at least one hardware processor to:
transmit a first public key to a second communication device;
in response to the first public key, receive a second public key from the second communication device;
generate an elliptic curve point based on the second public key by using a field size that is one of 8^91+5 or 8^95−9;
determine a shared secret based on the elliptic curve point; and
perform at least one of an encryption or a decryption operation based on the shared secret.

### Claim 6 (depends on 5)

The communication device of claim 5, wherein the elliptic curve point is generated using a curve function represented by 2y2=x3+x.

### Claim 7 (depends on 5)

The communication device of claim 5, wherein the elliptic curve point is generated using a mapping function represented by
x
i
=
i
-
3
⁢
⁢
i
1
-
ir
2
,
where r represent a field element, i represents an integer, and xi, represents an x-coordinate of the elliptic curve point.

### Claim 8 (depends on 5)

The communication device of claim 5, wherein the programming instructions instruct the at least one hardware processor to generate additional elliptic curve points using the field size.
