IP Library › Granted Patent US 11,032,273
Granted Patent B2
US 11,032,273 · App. 16/519,865 · Granted Jun 8, 2021

Method for authenticating secret information which protects secret information

Inventors: Junghee Cheon (Seoul, KR); Yongsoo Song (Seoul, KR)
Assignee: Crypto Lab Inc.
H04L63/0853G06F17/16H04L9/0894
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,032,273
App. No.
16/519,865
Granted
Jun 8, 2021
Kind
B2
Abstract

The computer-implemented method for authenticating secret information according to an aspect of the present disclosure, comprises receiving, by an authentication server, Q{right arrow over (X)} from a terminal for registering secret information; storing, by the authentication server, the received Q{right arrow over (X)}; receiving, by the authentication server, a vector {right arrow over (Z)} from a terminal for requesting authentication of secret information; calculating, by the authentication server, the inner product of Q{right arrow over (X)} and {right arrow over (Z)}; calculating, by the authentication server, ½(n−the inner product); and determining, by the authentication server, that the authentication is successful if ½(n−the inner product) is within a predetermined value and that the authentication fails otherwise.

Claims (108)

1. A computer-implemented method for authenticating secret information, the method comprising:

receiving, by an authentication server, Q{right arrow over (X)} from a terminal for registering secret information;

storing, by the authentication server, the received Q{right arrow over (X)};

receiving, by the authentication server, a vector {right arrow over (Z)} from a terminal for requesting authentication of secret information;

calculating, by the authentication server, the inner product of Q{right arrow over (X)} and {right arrow over (Z)};

calculating, by the authentication server, ½(n−the inner product); and

determining, by the authentication server, that the authentication is successful if ½(n−the inner product) is within a predetermined value and that the authentication fails otherwise,

wherein {right arrow over (X)} is a vector, having a length of n, of secret information to be registered, the elements of which consists of {−1, 1 } n ; Q is a matrix having m rows and n columns where m>n, the elements of which is randomly selected from q m×n ; {right arrow over (Y)} is a vector of secret information to be requested for authentication, the elements of which consists of {−1, 1} n ; and {right arrow over (Z)} is a vector which satisfies Q T {right arrow over (Z)}={right arrow over (Y)} where Q T is a transpose matrix of the matrix Q, and

wherein q m×n is defined by {0, 1, 2, . . . q−1}; and q, m, and n are positive integers.

2. The computer-implemented method for authenticating secret information according to claim 1 , wherein the matrix Q can be deleted after Q{right arrow over (X)} is received by the authentication server.

3. The computer-implemented method for authenticating secret information according to claim 1 , wherein at least one of Q{right arrow over (X)} and {right arrow over (Z)} is encrypted before transmission to the authentication server.

4. A computer-implemented method for authenticating secret information, the method comprising:

receiving, by an authentication server, Q{right arrow over (X)} from a terminal for registering secret information;

storing, by the authentication server, the received Q{right arrow over (X)};

receiving, by the authentication server, a vector {right arrow over (Z)} from a terminal for requesting authentication of secret information;

calculating, by the authentication server, the inner product of Q{right arrow over (X)} and {right arrow over (Z)};

calculating, by the authentication server, ½(n−the inner product); and

determining, by the authentication server, that the authentication is successful if ½(n−the inner product) is within a predetermined value and that the authentication fails otherwise,

wherein {right arrow over (X)} is a vector, having a length of n, of secret information to be registered, the elements of which consist of {−1, 1} n ; Q is a matrix having m rows and n columns where m>n, the elements of which are randomly selected from q m×n ; {right arrow over (Y)} is a vector of secret information to be requested for authentication, the elements of which consist of {−1,1} n ; {right arrow over (Z)} is a vector which satisfies Q T {right arrow over (Z)}={right arrow over (Y)}+{right arrow over (e)} where Q T is a transpose matrix of the matrix Q; and {right arrow over (e)} is an error vector having a length of n, the elements of which are randomly selected from q n , and

wherein q m×n and q n are defined by {0, 1, 2, . . . q−1}; and q, m, and n are positive integers.

5. The computer-implemented method for authenticating secret information according to claim 4 , wherein the matrix Q can be deleted after Q{right arrow over (X)} is received by the authentication server.

6. The computer-implemented method for authenticating secret information according to claim 4 , wherein at least one of Q{right arrow over (X)} and {right arrow over (Z)} is encrypted before transmission to the authentication server.

7. A computer-implemented method for authenticating secret information, the method comprising:

receiving, by an authentication server, a first ciphertext “SK X ” of a vector “{right arrow over (X)}”, having a length of k, of secret information to be registered from a terminal for registering secret information;

storing, by the authentication server, the received first ciphertext;

receiving, by the authentication server, a second ciphertext “C Y ” of a vector “{right arrow over (Y)}” of secret information to be requested for authentication of secret information from a terminal for requesting authentication of secret information;

calculating, by the authentication server, the inner product of “{right arrow over (X)}” and “{right arrow over (Y)}”;

calculating, by the authentication server, a distance for determining similarity based on the inner product; and

determining, by the authentication server, that the authentication is successful if the distance is within a predetermined value and that the authentication fails otherwise,

wherein the elements of “{right arrow over (X)}” consist of the elements of p k ; the first ciphertext “SK X ” is defined by

[

I

k

S

]

⁢

X

->

+

u

->

,

where I k is an identity matrix of k×k, the elements of the matrix “S” are randomly selected from q n×k and the elements of the vector “{right arrow over (u)}” are randomly selected from q m ; the elements of “{right arrow over (Y)}” consist of the elements of p k ; the second ciphertext “C Y ” is defined by

C

Y

:=

c

1

->

=

(

-

S

T

⁢

a

->

+

(

q

p

)

⁢

Y

->

+

e

->

,

a

->

⁢

←

$

⁢

ℤ

q

n

)

,

c

0

=

-

〈

u

->

,

c

1

->

〉

+

e

*

,

where S T is a transpose matrix of the matrix S, the symbol $ denotes that the elements of the left of the symbol are randomly selected from the right of the symbol, {right arrow over (e)} and e* are vectors having elements of real numbers; the elements of {right arrow over (e)} are randomly selected from q k and the elements of e* are randomly selected from q ; and

wherein q n×k , q m , and q n are defined by {0, 1, 2, . . . q−1}, p k is defined by {0, 1, 2, . . . p−1}, and q and q k are defined by [0, q); p, q, k, n and m are positive integer; q>p; and m=k+n.

8. The computer-implemented method for authenticating secret information according to claim 7 , wherein the elements of the error vectors {right arrow over (e)} and e* are selected with less distribution such that | {right arrow over (X)}, {right arrow over (e)} +e*| is less than

q

2

⁢

p

.

9. The computer-implemented method for authenticating secret information according to claim 8 , wherein the elements of “{right arrow over (X)}” and “{right arrow over (Y)}” consist of −1 or +1; and the distance for determining similarity is the hamming distance between “{right arrow over (X)}” and “{right arrow over (Y)}, which is ½ (k− {right arrow over (X)},{right arrow over (Y)} ).

10. The computer-implemented method for authenticating secret information according to claim 8 , wherein the elements of the matrix “S” are randomly selected from the subset of q where q is defined by {0, 1, 2, . . . q−1}.

11. The computer-implemented method for authenticating secret information according to claim 7 , wherein the elements of “{right arrow over (X)}” and “{right arrow over (Y)}” consist of −1 or +1; and the distance for determining similarity is the hamming distance between “{right arrow over (X)}” and “{right arrow over (Y)}, which is ½ (k− {right arrow over (X)},{right arrow over (Y)} ).

12. The computer-implemented method for authenticating secret information according to claim 7 , wherein the elements of the matrix “S” are randomly selected from the subset of q where q is defined by {0, 1, 2, . . . q−1}.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 11, 2020
From: SEOUL NATIONAL UNIVERSITY R&DB FOUNDATION
To: CRYPTO LAB INC.
Reel/Frame 051894/0246 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 23, 2019
From: CHEON, JUNGHEE; SONG, YONGSOO
To: CRYPTO LAB INC.; SEOUL NATIONAL UNIVERSITY R&DB FOUNDATION
Reel/Frame 049836/0455 →
Priority Claims (2)
KR 10-2017-0055803 · Apr 29, 2017 · national
KR 10-2018-0087340 · Jul 26, 2018 · national
Continuity (2)
Continuation In Part PCTKR2018005012 · Apr 30, 2018
Related Publication 20190349362A1 · Nov 14, 2019