IP Library Granted Patent US 11,184,148
Granted Patent B2
US 11,184,148 · App. 16/540,151 · Granted Nov 23, 2021

Elliptic curve cryptography scheme for Edwards curves having a differential side-channel attack countermeasure

Inventors: Vladimir Soukharev (Toronto, CA); Basil Hess (Zurich, CH)
Assignee: INFOSEC GLOBAL INC.
H04L9/003H04L9/3066
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 11,184,148
App. No.
16/540,151
Granted
Nov 23, 2021
Kind
B2
Abstract

A system, method and elliptic curve cryptography scheme using an Edwards-form elliptic curve. The elliptic curve cryptography scheme having a blinding protocol resistant to differential side channel attacks. The elliptic curve defined over field F and having a point P with coordinates located on the elliptic curve. The blinding protocol including: randomly selecting a random element I; and determining coordinates of a blinded point P B by performing a multiplication of a random element I by at least one of the coordinates of point P.

Claims (27)

1. An elliptic curve cryptography scheme using an Edwards-form elliptic curve, the elliptic curve cryptography scheme comprising a blinding protocol resistant to differential side channel attacks, the elliptic curve cryptography scheme for permitting secure communications between two or more cryptographic correspondent devices, each of the cryptographic correspondent devices comprising a processor and a memory, the memory configured to store a plurality of instructions which when executed by the processor cause the processor to implement the cryptographic scheme, the elliptic curve defined over field F and having a point P with coordinates located on the elliptic curve, the blinding protocol comprising:

randomly selecting a random element I;

determining coordinates of a blinded point P B by by determining the x-coordinate of blinded point P B as the random element I multiplied by the x-coordinate or the y-coordinate of the point P, the y-coordinate of blinded point P B as the random element I multiplied by the x-coordinate or the y-coordinate of the point P, and the z-coordinate of blinded point P B as the random element I, the random element I multiplied by the z-coordinate of the point P, or the random element I multiplied by the x-coordinate of the point P and the y-coordinate of the point P; and

providing coordinates of blinded point P B .

2. The elliptic curve cryptography scheme of claim 1 , wherein the point P is a generator point of the elliptic curve.

3. The elliptic curve cryptography scheme of claim 1 , wherein a new random element I is selected every time the blinding protocol is performed.

4. The elliptic curve cryptography scheme of claim 1 , wherein the point P is in affine coordinates, and wherein the x-coordinate of blinded point P B is determined to be the random element I multiplied by the x-coordinate of the point P, the y-coordinate of blinded point P B is determined to be the random element I multiplied by the y-coordinate of the point P, and the z-coordinate of blinded point P B is determined to be the random element I.

5. The elliptic curve cryptography scheme of claim 1 , wherein the point P is in homogenous projective coordinates, and wherein the x-coordinate of blinded point P B is determined to be the random element I multiplied by the x-coordinate of the point P, the y-coordinate of blinded point P B is determined to be the random element I multiplied by the y-coordinate of the point P, and the z-coordinate of blinded point P B is determined to be the random element I multiplied by the z-coordinate of the point P.

6. The elliptic curve cryptography scheme of claim 1 , wherein the point P is in affine coordinates, and wherein the x-coordinate of blinded point P B is determined to be the random element I multiplied by the y-coordinate of the point P, the y-coordinate of blinded point P B is determined to be the random element I multiplied by the x-coordinate of the point P, and the z-coordinate of blinded point P B is determined to be the random element I multiplied by the x-coordinate of the point P and the y-coordinate of the point P.

7. The elliptic curve cryptography scheme of claim 1 , wherein the point P is in homogenous projective coordinates, and wherein the x-coordinate of blinded point P B is determined to be the random element I multiplied by the y-coordinate of the point P and the z-coordinate of the point P, the y-coordinate of blinded point P B is determined to be the random element I multiplied by the x-coordinate of the point P and the z-coordinate of the point P, and the z-coordinate of blinded point P B is determined to be the random element I multiplied by the x-coordinate of the point P and the y-coordinate of the point P.

8. The elliptic curve cryptography scheme of claim 1 , wherein the point P is in affine coordinates, and wherein the x-coordinate of blinded point P B is determined to be the random element I multiplied by the x-coordinate of the point P, the y-coordinate of blinded point P B is determined to be the random element I multiplied by the y-coordinate of the point P, the z-coordinate of blinded point P B is determined to be the random element I, and the t-coordinate of blinded point P B is determined to be the random element I multiplied by the x-coordinate of the point P and the y-coordinate of the point P.

9. The elliptic curve cryptography scheme of claim 1 , wherein the point P is in homogenous projective coordinates, and wherein the x-coordinate of blinded point P B is determined to be the random element I multiplied by the x-coordinate of the point P, the y-coordinate of blinded point P B is determined to be the random element I multiplied by the y-coordinate of the point P, the z-coordinate of blinded point P B is determined to be the random element I multiplied by the x-coordinate of the point P and the y-coordinate of the point P, and the t-coordinate of blinded point P B is determined to be the random element I multiplied by the x-coordinate of the point P and the y-coordinate of the point P.

10. A method for applying a differential side-channel attack countermeasure in elliptic curve cryptography using an Edwards-form elliptic curve, to permit secure communications between two or more cryptographic correspondent devices, each of the cryptographic correspondent devices comprising a processor and a memory, the memory configured to store a plurality of instructions which when executed by the processor cause the processor to implement the method, the elliptic curve defined over field F and having a point P with coordinates located on the elliptic curve, the method comprising:

randomly selecting a random element I; and

determining coordinates of a blinded point P B by determining the x-coordinate of blinded point P B as the random element I multiplied by the x-coordinate or the y-coordinate of the point P, the y-coordinate of blinded point P B as the random element I multiplied by the x-coordinate or the y-coordinate of the point P, and the z-coordinate of blinded point P B as the random element I, the random element I multiplied by the z-coordinate of the point P, or the random element I multiplied by the x-coordinate of the point P and the y-coordinate of the point P.

11. The method of claim 10 , wherein the point P is in affine coordinates, and wherein the x-coordinate of blinded point P B is determined to be the random element I multiplied by the x-coordinate of the point P, the y-coordinate of blinded point P B is determined to be the random element I multiplied by the y-coordinate of the point P, and the z-coordinate of blinded point P B is determined to be the random element I.

12. The method of claim 10 , wherein the point P is in homogenous projective coordinates, and wherein the x-coordinate of blinded point P B is determined to be the random element I multiplied by the x-coordinate of the point P, the y-coordinate of blinded point P B is determined to be the random element I multiplied by the y-coordinate of the point P, and the z-coordinate of blinded point P B is determined to be the random element I multiplied by the z-coordinate of the point P.

13. The method of claim 10 , wherein the point P is in affine coordinates, and wherein the x-coordinate of blinded point P B is determined to be the random element I multiplied by the y-coordinate of the point P, the y-coordinate of blinded point P B is determined to be the random element I multiplied by the x-coordinate of the point P, and the z-coordinate of blinded point P B is determined to be the random element I multiplied by the x-coordinate of the point P and the y-coordinate of the point P.

14. The method of claim 10 , wherein the point P is in homogenous projective coordinates, and wherein the x-coordinate of blinded point P B is determined to be the random element I multiplied by the y-coordinate of the point P and the z-coordinate of the point P, the y-coordinate of blinded point P B is determined to be the random element I multiplied by the x-coordinate of the point P and the z-coordinate of the point P, and the z-coordinate of blinded point P B is determined to be the random element I multiplied by the x-coordinate of the point P and the y-coordinate of the point P.

15. The method of claim 10 , wherein the point P is in affine coordinates, and wherein the x-coordinate of blinded point P B is determined to be the random element I multiplied by the x-coordinate of the point P, the y-coordinate of blinded point P B is determined to be the random element I multiplied by the y-coordinate of the point P, the z-coordinate of blinded point P B is determined to be the random element I, and the t-coordinate of blinded point P B is determined to be the random element I multiplied by the x-coordinate of the point P and the y-coordinate of the point P.

16. The method of claim 10 , wherein the point P is in homogenous projective coordinates, and wherein the x-coordinate of blinded point P B is determined to be the random element I multiplied by the x-coordinate of the point P, the y-coordinate of blinded point P B is determined to be the random element I multiplied by the y-coordinate of the point P, the z-coordinate of blinded point P B is determined to be the random element I multiplied by the x-coordinate of the point P and the y-coordinate of the point P, and the t-coordinate of blinded point P B is determined to be the random element I multiplied by the x-coordinate of the point P and the y-coordinate of the point P.

17. A system for implementing an elliptic curve cryptography scheme using an Edwards-form elliptic curve, on a correspondent device, the elliptic curve cryptography scheme having a blinding protocol resistant to differential side channel attacks, the correspondent device in secure communication with one or more other correspondent devices, the correspondent device comprising a processor and a memory, the memory configured to store a plurality of instructions which when executed by the processor cause the processor to implement the elliptic curve cryptography scheme, the elliptic curve defined over field F and having a point P with coordinates located on the elliptic curve, the system comprising:

a random selection module for randomly selecting a random element I; and

a coordinate determination module for determining coordinates of a blinded point P B by determining the x-coordinate of blinded point P B as the random element I multiplied by the x-coordinate or the y-coordinate of the point P, the y-coordinate of blinded point P B as the random element I multiplied by the x-coordinate or the y-coordinate of the point P, and the z-coordinate of blinded point P B as the random element I, the random element I multiplied by the z-coordinate of the point P, or the random element I multiplied by the x-coordinate of the point P and the y-coordinate of the point P.

18. The system of claim 17 , wherein the point P is in affine coordinates, and wherein the x-coordinate of blinded point P B is determined by the coordinate determination module to be the random element I multiplied by the x-coordinate of the point P, the y-coordinate of blinded point P B is determined by the coordinate determination module to be the random element I multiplied by the y-coordinate of the point P, and the z-coordinate of blinded point P B is determined by the coordinate determination module to be the random element I.

19. The system of claim 17 , wherein the point P is in homogenous projective coordinates, and wherein the x-coordinate of blinded point P B is determined by the coordinate determination module to be the random element I multiplied by the x-coordinate of the point P, the y-coordinate of blinded point P B is determined by the coordinate determination module to be the random element I multiplied by the y-coordinate of the point P, and the z-coordinate of blinded point P B is determined by the coordinate determination module to be the random element I multiplied by the z-coordinate of the point P.

20. The system of claim 17 , wherein the point P is in affine coordinates, and wherein the x-coordinate of blinded point P B is determined by the coordinate determination module to be the random element I multiplied by the y-coordinate of the point P, the y-coordinate of blinded point P B is determined by the coordinate determination module to be the random element I multiplied by the x-coordinate of the point P, and the z-coordinate of blinded point P B is determined by the coordinate determination module to be the random element I multiplied by the x-coordinate of the point P and the y-coordinate of the point P.

Assignments (2)
SECURITY INTEREST Recorded Jul 28, 2025
From: INFOSEC GLOBAL INC.
To: PNC BANK, NATIONAL ASSOCIATION
Reel/Frame 071847/0309 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 21, 2021
From: SOUKHAREV, VLADIMIR; HESS, BASIL
To: INFOSEC GLOBAL INC.
Reel/Frame 056934/0372 →
Continuity (2)
Continuation PCTCA2017050233 · Feb 23, 2017
Related Publication 20200044818A1 · Feb 6, 2020