IP Library Granted Patent US 11,310,046
Granted Patent B2
US 11,310,046 · App. 16/757,835 · Granted Apr 19, 2022

Systems and methods for secure identification retrieval

Inventors: Gang Wang (Mountain View, CA); Marcel M. Moti Yung (Mountain View, CA)
Assignee: Google LLC
H04L9/3213G06F16/951H04L9/3236H04L9/3247
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,310,046
App. No.
16/757,835
Granted
Apr 19, 2022
Kind
B2
Abstract

The present disclosure provides systems and methods for secure identification retrieval. The method includes retrieving a value of a periodic variable and calculating a plurality of query tokens from a corresponding plurality of client device identifiers and the value of the periodic variable. Each query token is associated with a corresponding client device identifier in a first database. The method further includes receiving a first query token calculated from a client device identifier of the first client device and the value of the periodic variable and identifying a second query token of the calculated plurality of query tokens in the first database matching the first query token. The method further includes, responsive to the identification, retrieving the associated client device identifier and retrieving one or more characteristics of the first client device according to the associated client device identifier. The method further includes transmitting the retrieved one or more characteristics.

Claims (51)

1. A method for secure identification retrieval, comprising:

retrieving, by a server device, a value of a periodic variable;

calculating, by the server device, a plurality of query tokens from a corresponding plurality of client device identifiers and the value of the periodic variable, each query token associated with a corresponding client device identifier in a first database;

receiving, by the server device from a first client device, a first query token calculated from a client device identifier of the first client device and the value of the periodic variable;

identifying, by the server device, a second query token of the calculated plurality of query tokens in the first database matching the first query token;

responsive to the identification, retrieving, by the server device, the associated client device identifier;

retrieving, by the server device from a second database, one or more characteristics of the first client device according to the associated client device identifier; and

transmitting, by the server device to the client device, the retrieved one or more characteristics.

2. The method of claim 1 , further comprising:

generating, by the server device, a probabilistic data structure based on the calculated plurality of query tokens; and

comparing, by the server device, the first query token to the probabilistic data structure; and

wherein identifying the second query token is performed responsive to the first query token matching the probabilistic data structure.

3. The method of claim 2 , wherein the probabilistic data structure comprises a Bloom filter.

4. The method of claim 1 , wherein the periodic variable comprises a present date a stock exchange closing price, or a mutually verifiable value.

5. The method of claim 1 , wherein calculating the plurality of query tokens further comprises calculating a second plurality of query tokens from the corresponding plurality of client device identifiers and a previous value of the periodic variable, the second plurality of query tokens stored in the first database in association with the corresponding client device identifier.

6. The method of claim 5 , further comprising removing, by the server device, a third plurality of query tokens from the first database, the third plurality of query tokens calculated from the plurality of client device identifiers and a twice-previous value of the periodic variable.

7. The method of claim 1 , wherein calculating the plurality of query tokens further comprises calculating, for each of the plurality of query tokens, a one-way hash of a combination of the value of the periodic variable and the corresponding client device identifier.

8. The method of claim 1 , wherein retrieving the one or more characteristics of the first client device further comprises retrieving a public encryption key of the first client device from the second database; and

wherein transmitting the retrieved one or more characteristics further comprises encrypting the one or more characteristics with the retrieved public encryption key of the first client device.

9. The method of claim 1 , further comprising:

receiving, by the server device from a second client device, a third query token calculated from a client device identifier of the second client device and the value of the periodic variable; and

determining, by the server device, that an entry does not exist in the first database corresponding to the third query token.

10. The method of claim 9 , further comprising:

responsive to the determination that an entry does not exist in the first database corresponding to the third query token, transmitting, by the server device to the second client device, one of a random data string or a null data string.

11. The method of claim 1 , wherein the plurality of client device identifiers comprise cookie values.

12. The method of claim 11 , wherein the plurality of query tokens are calculated from the periodic value, the cookie values, and a plurality of domain identifiers, each cookie value corresponding to a domain identifier of the plurality of domain identifiers.

13. The method of claim 12 , wherein a first cookie value is associated with each of a first domain and is shared with a second domain.

14. The method of claim 13 , wherein the server device is associated with one of the first domain or the second domain, and a second server device is associated with the other of the first domain or the second domain.

15. The method of claim 12 , wherein retrieving the associated client device identifier further comprises retrieving a first cookie value and a first domain identifier; and

wherein transmitting the retrieved one or more characteristics further comprises encrypting, by the server device that is associated with the second domain, the retrieved one or more characteristics with the first cookie value and the first domain identifier.

16. A server device for secure identification retrieval, comprising:

a network interface in communication with a first client device of a plurality of client devices;

a memory device storing a first database comprising a plurality of query tokens and a corresponding plurality of associated client device identifiers, and a second database comprising the plurality of client device identifiers and associated device characteristics; and

a processor, configured to:

retrieve a value of a periodic variable,

calculate the plurality of query tokens from the corresponding plurality of client device identifiers and the value of the periodic variable,

receive, via the network interface from the first client device, a first query token calculated from a client device identifier of the first client device and the value of the periodic variable,

identify a second query token of the calculated plurality of query tokens in the first database matching the first query token,

responsive to the identification, retrieve, from the first database, the associated client device identifier,

retrieve, from the second database, one or more characteristics of the first client device according to the associated client device identifier, and

transmit, via the network interface to the client device, the retrieved one or more characteristics.

17. The system of claim 16 , wherein the processor is further configured to:

generate a probabilistic data structure based on the calculated plurality of query tokens; and

compare the first query token to the probabilistic data structure; and

wherein identifying the second query token is performed responsive to the first query token matching the probabilistic data structure.

18. The system of claim 16 , wherein the processor is further configured to:

calculate a second plurality of query tokens from the corresponding plurality of client device identifiers and a previous value of the periodic variable, the second plurality of query tokens stored in the first database in association with the corresponding client device identifier.

19. The system of claim 18 , wherein the processor is further configured to:

remove a third plurality of query tokens from the first database, the third plurality of query tokens calculated from the plurality of client device identifiers and a twice-previous value of the periodic variable.

20. The system of claim 16 , wherein the processor is further configured to:

calculate, for each of the plurality of query tokens, a one-way hash of a combination of the value of the periodic variable and the corresponding client device identifier.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 18, 2020
From: WANG, GANG; YUNG, MARCEL M. MOTI
To: GOOGLE LLC
Reel/Frame 053523/0633 →
Continuity (1)
Related Publication 20210075614A1 · Mar 11, 2021
Cited By (1)
US 12,244,716