IP Library Granted Patent US 10,756,893
Granted Patent B2
US 10,756,893 · App. 16/277,017 · Granted Aug 25, 2020

Elliptic curve random number generation

Inventors: Daniel Richard L. Brown (Mississauga, CA); Scott Alexander Vanstone (Campbellville, CA)
Assignee: BlackBerry Limited
H04L9/0869G06F7/582G06F7/588H04L9/0662H04L9/0816H04L9/0894H04L9/3066G06F7/725H04L2209/20H04L2209/24H04L2209/26
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,756,893
App. No.
16/277,017
Granted
Aug 25, 2020
Kind
B2
Abstract

An elliptic curve random number generator avoids escrow keys by choosing a point on the elliptic curve as verifiably random. An arbitrary string is chosen and a hash of that string computed. The hash is then converted to a field element of the desired field, the field element regarded as the x-coordinate of a point on the elliptic curve and the x-coordinate is tested for validity on the desired elliptic curve. If valid, the x-coordinate is decompressed to the point , wherein the choice of which is the two points is also derived from the hash value. Intentional use of escrow keys can provide for back up functionality. The relationship between P and is used as an escrow key and stored by for a security domain. The administrator logs the output of the generator to reconstruct the random number with the escrow key.

Claims (35)

1. A computer-implemented method of establishing an escrow key for a security domain within a network, comprising:

establishing a pair of points (P, ) as respective inputs to an elliptic curve random number generator (ECRNG), wherein P=e , and e is a relationship between the pair of points (P, );

storing the relationship e as an escrow key with an administrator;

generating from the ECRNG a random number for use in cryptographic operations within the security domain;

using the random number in a cryptographic operation; and

logging an output of the ECRNG to reconstruct the random number with the escrow key by the administrator.

2. The computer-implemented method of claim 1 , wherein the pair of points (P, ) is a pair of elliptic curve points.

3. The computer-implemented method of claim 1 , wherein one point of the pair of points (P, ) is obtained from an output of a one way function.

4. The computer-implemented method of claim 3 , wherein the one way function is a hash function.

5. The computer-implemented method of claim 3 , wherein the other point of the pair of points (P, ) is utilized as an input to the one way function.

6. The computer-implemented method of claim 5 , wherein the one point of the pair of points (P, ) is , and the other point of the pair of points (P, ) is P.

7. A device, comprising:

a memory; and

at least one processor communicatively coupled with the memory and configured to:

establish a pair of points (P, ) as respective inputs to an elliptic curve random number generator (ECRNG), wherein P=e , and e is a relationship between the pair of points (P, );

store the relationship e as an escrow key with an administrator;

generate from the ECRNG a random number for use in cryptographic operations within a security domain;

using the random number in a cryptographic operation; and

logging an output of the ECRNG to reconstruct the random number with the escrow key by the administrator.

8. The device of claim 7 , wherein the pair of points (P, ) is a pair of elliptic curve points.

9. The device of claim 7 , wherein one point of the pair of points (P, ) is obtained from an output of a one way function.

10. The device of claim 9 , wherein the one way function is a hash function.

11. The device of claim 9 , wherein the other point of the pair of points (P, ) is utilized as an input to the one way function.

12. The device of claim 11 , wherein the one point of the pair of points (P, ) is , and the other point of the pair of points (P, ) is P.

13. A non-transitory computer readable medium storing instructions which, when executed, cause a computing device to perform operations comprising:

establishing a pair of points (P, ) as respective inputs to an elliptic curve random number generator (ECRNG), wherein P=e , and e is a relationship between the pair of points (P, );

storing the relationship e as an escrow key with an administrator;

generating from the ECRNG a random number for use in cryptographic operations within a security domain;

using the random number in a cryptographic operation; and

logging an output of the ECRNG to reconstruct the random number with the escrow key by the administrator.

14. The non-transitory computer readable medium of claim 13 , wherein the pair of points (P, ) is a pair of elliptic curve points.

15. The non-transitory computer readable medium of claim 13 , wherein one point of the pair of points (P, ) is obtained from an output of a one way function.

16. The non-transitory computer readable medium of claim 15 , wherein the one way function is a hash function.

17. The non-transitory computer readable medium of claim 15 , wherein the other point of the pair of points (P, ) is utilized as an input to the one way function.

18. The non-transitory computer readable medium of claim 17 , wherein the one point of the pair of points (P, ) is , and the other point of the pair of points (P, ) is P.

Assignments (9)
CORRECTIVE ASSIGNMENT TO CORRECT THE ADDED PATENT NUMBER TO REMOVE PATENT NO. 8,873,407 AT PREVIOUSLY RECORDED ON REEL 64066 FRAME 1. ASSIGNOR(S) HEREBY CONFIRMS THE NUNC PRO TUNC ASSIGNMENT EFFECTIVE DATE MARCH 20, 2023. Recorded Feb 2, 2026
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 074921/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT 12817157 APPLICATION NUMBER PREVIOUSLY RECORDED AT REEL: 064015 FRAME: 0001. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Sep 5, 2023
From: OT PATENT ESCROW, LLC
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064807/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE COVER SHEET AT PAGE 50 TO REMOVE 12817157 PREVIOUSLY RECORDED ON REEL 063471 FRAME 0474. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Sep 5, 2023
From: BLACKBERRY LIMITED
To: OT PATENT ESCROW, LLC
Reel/Frame 064806/0669 →
NUNC PRO TUNC ASSIGNMENT Recorded Jun 19, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064066/0001 →
NUNC PRO TUNC ASSIGNMENT Recorded Jun 16, 2023
From: OT PATENT ESCROW, LLC
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064015/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 27, 2023
From: BLACKBERRY LIMITED
To: OT PATENT ESCROW, LLC
Reel/Frame 063471/0474 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 13, 2020
From: BROWN, DANIEL R.L.; VANSTONE, SCOTT A.
To: CERTICOM CORP.
Reel/Frame 052384/0091 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 13, 2020
From: CERTICOM CORP.
To: BLACKBERRY LIMITED
Reel/Frame 052386/0141 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 2, 2019
From: CERTICOM CORP.
To: BLACKBERRY LIMITED
Reel/Frame 050610/0937 →
Continuity (5)
Continuation 14575844 · Dec 18, 2014
Continuation 13770533 · Feb 19, 2013
Continuation 11336814 · Jan 23, 2006
Provisional Application 60644982 · Jan 21, 2005
Related Publication 20190190711A1 · Jun 20, 2019
Cited By (1)
US 12,323,514