IP Library Granted Patent US 10,841,092
Granted Patent B2
US 10,841,092 · App. 16/164,965 · Granted Nov 17, 2020

Method and system for Cheon resistant static Diffie-Hellman security

Inventor: Daniel Richard L. Brown (Mississauga, CA)
Assignee: BlackBerry Limited
H04L9/3066H04L9/002H04L9/006H04L9/0841H04L9/0861
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,841,092
App. No.
16/164,965
Granted
Nov 17, 2020
Kind
B2
Abstract

A method for providing Cheon-resistance security for a static elliptic curve Diffie-Hellman cryptosystem (ECDH), the method including providing a system for message communication between a pair of correspondents, a message being exchanged in accordance with ECDH instructions executable on computer processors of the respective correspondents, the ECDH instructions using a curve selected from a plurality of curves, the selecting including choosing a range of curves; selecting, from the range of curves, curves matching a threshold efficiency; excluding, within the selected curves, curves which may include intentional vulnerabilities; and electing, from non-excluded selected curves, a curve with Cheon resistance, the electing comprising a curve from an additive group of order q, wherein q is prime, such that q−1=cr and q+1=ds, where r and s are primes and c and d are integer Cheon cofactors of the group, such that cd≤48.

Claims (39)

1. A non-transitory computer readable medium for storing instruction code for providing Cheon-resistance security for a static elliptic curve Diffie-Hellman cryptosystem (ECDH), the instruction code, when executed by a processor of a first computing device causing the first computing device to:

select a curve for message communication between the first computing device and a second computing device, the selecting comprising:

choosing a range of curves;

selecting, from the range of curves, curves matching a threshold efficiency;

excluding, within the selected curves, curves which includes intentional vulnerabilities; and

electing, from non-excluded selected curves, a curve with Cheon resistance, the electing comprising electing a curve from an additive group of order q, wherein q is prime, such that q−1=cr and q+1=ds, where r and s are primes and c and d are integer Cheon cofactors of the group, such that cd≤48;

select a private key for the first computing device;

compute a public key for the first computing device from curve parameters of the curve with Cheon resistance and the private key for the first computing device;

transmit the curve parameters of the curve with Cheon resistance and the public key for the first computing device to the second computing device;

receive a public key for the second computing device;

compute a shared secret based on the public key for the second computing device and the private key for the first computing device; and

communicate with the second computing device using the shared secret.

2. The non-transitory computer readable medium of claim 1 , wherein the first computing device is caused to choose a range of curves having a length matching a threshold security level.

3. The non-transitory computer readable medium of claim 1 , wherein the first computing device is caused to select by selecting curves having a field size close to a power of two, and having efficient endomorphism.

4. The non-transitory computer readable medium of claim 1 , wherein the first computing device is caused to exclude by excluding curves which are non-compact or difficult to generate.

5. The non-transitory computer readable medium of claim 1 , wherein the curve has an affine equation in the form y 2 =x 3 +ix, where i=√{square root over (−1)}.

6. The non-transitory computer readable medium of claim 5 , wherein the curve has length of 454 bits.

7. The non-transitory computer readable medium of claim 6 , wherein a field size p=2 454 +(3×17×11287) 2 .

8. The non-transitory computer readable medium of claim 6 , wherein an order q=2 452 +(7×41117) 2 .

9. The non-transitory computer readable medium of claim 7 , wherein an order q=2 452 +(7×41117) 2 .

10. The non-transitory computer readable medium of claim 6 , wherein r=(q−1)/8; and s=(q+1)/6.

11. The non-transitory computer readable medium of claim 7 , wherein r=(q−1)/8; and s=(q+1)/6.

12. The non-transitory computer readable medium of claim 8 , wherein r=(q−1)/8; and s=(q+1)/6.

13. The non-transitory computer readable medium of claim 9 , wherein r=(q−1)/8; and s=(q+1)/6.

14. A non-transitory computer readable medium for storing instruction code for providing Cheon-resistance security for a static elliptic curve Diffie-Hellman cryptosystem (ECDH), the instruction code, when executed by a processor of a first computing device causing the first computing device to:

select a curve for message communication between the first computing device and a second computing device, the curve comprising:

an additive group of order q, wherein q is prime, such that q−1=cr and q+1=ds , where r and s are primes and c and d are integer Cheon cofactors of the group, such that cd≤48;

an affine equation in the form y 2 =x 3 +ix, where i=√{square root over (−1)};

a length of 454 bits;

a field size p=2 454 +(3×17×11287) 2 ;

an order q=2 452 +(7×41117) 2 ;

r=(q−1)/8; and

s=(q+1)/6; and

select a private key for the first computing device;

compute a public key for the first computing device from curve parameters of the curve and the private key for the first computing device;

transmit the curve parameters of the curve and the public key for the first computing device to the second computing device;

receive a public key for the second computing device;

compute a shared secret based on the public key for the second computing device and the private key for the first computing device; and

communicate with the second computing device using the shared secret.

Assignments (8)
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 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 →
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 →
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 Oct 2, 2019
From: CERTICOM CORP.
To: BLACKBERRY LIMITED
Reel/Frame 050610/0937 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 19, 2018
From: BROWN, DANIEL RICHARD L.
To: CERTICOM CORP.
Reel/Frame 047232/0748 →
Continuity (2)
Continuation 15145428 · May 3, 2016
Related Publication 20200186345A1 · Jun 11, 2020