# US 11,310,046 B2 · Systems and methods for secure identification retrieval

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,310,046 B2
- Document ID: US11310046B2
- Status: Granted
- Kind: B2
- Application number: 16/757,835
- Filed: 2019-09-03
- Published: 2021-03-11
- Granted: 2022-04-19
- Earliest claimed: 2019-09-03
- Assignees: Google Inc.
- Applicants: Google LLC
- Inventors: Gang Wang; Marcel M. Moti Yung
- Web page: https://patentgrep.com/patent/US11310046B2

## CPC

- H04L 9/3213: {using tickets or tokens, e.g. Kerberos (network architectures or network communication protocols for entities authentication using tickets in a packet data network H04L63/0807)}
- H04L 63/308: {retaining data, e.g. retaining successful, unsuccessful communication attempts, internet access, or e-mail, internet telephony, intercept related information or call content}
- G06F 16/951: Indexing; Web crawling techniques
- H04L 9/3236: {using cryptographic hash functions}
- H04L 9/3247: {involving digital signatures}
- H04L 63/0421: {Anonymous communication, i.e. the party's identifiers are hidden from the other party or parties, e.g. using an anonymizer}
- H04L 67/303: Terminal profiles
- H04L 63/102: {Entity profiles}
- H04L 67/02: based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## 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

### Claim 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.

### Claim 2 (depends on 1)

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.

### Claim 3 (depends on 2)

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

### Claim 4 (depends on 1)

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

### Claim 5 (depends on 1)

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.

### Claim 6 (depends on 5)

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.

### Claim 7 (depends on 1)

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.

### Claim 8 (depends on 1)

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.

### Claim 9 (depends on 1)

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.

### Claim 10 (depends on 9)

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.

### Claim 11 (depends on 1)

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

### Claim 12 (depends on 11)

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.

### Claim 13 (depends on 12)

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.

### Claim 14 (depends on 13)

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.

### Claim 15 (depends on 12)

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.

### Claim 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.

### Claim 17 (depends on 16)

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.

### Claim 18 (depends on 16)

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.

### Claim 19 (depends on 18)

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.

### Claim 20 (depends on 16)

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.
