# US 11,115,399 B2 · Method and apparatus for generating an intelligent primary key facilitating faster object retrieval

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

- Number: US 11,115,399 B2
- Document ID: US11115399B2
- Status: Granted
- Kind: B2
- Application number: 15/804,126
- Filed: 2017-11-06
- Published: 2018-03-01
- Granted: 2021-09-07
- Earliest claimed: 2015-07-22
- Assignees: HERE Global B.V.
- Applicants: Here Global B.V.
- Inventors: Tomas Junnonen; Srividya Rajagopalan; Richin Jain
- Web page: https://patentgrep.com/patent/US11115399B2

## CPC

- H04L 63/08: {for authentication of entities (cryptographic mechanisms or cryptographic arrangements for entity authentication H04L9/32)}
- G06F 16/137: {Hash-based (content-based indexing of textual data G06F16/31)}
- G06F 16/152: {using file content signatures, e.g. hash values}
- G06F 21/00: Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F 21/6227: {where protection concerns the structure of data, e.g. records, types, queries}
- H04L 9/00: {Cryptographic mechanisms or cryptographic} arrangements for secret or secure communications; Network security protocols
- H04L 9/0866: {involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics}
- 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

Various methods are provided for facilitating a reduction in the number of required search operations during account creation. One example method may comprise causing creation of a user account object configured for storage in a database, the user account object comprising user personal information, causing creation of a user linked account object configured for storage in the database, the user linked account object comprising user credential information, the user linked account object linked the user account object, generating, via processor, an identification field of the user linked account object, generation of the identification field comprising: receiving at least identification information and an account type; accessing a realm; and utilizing a hash function to generate a composite key as a function of the identification information, the account type, and the realm.

## Claims

### Claim 1

A method comprising:
receiving, at a processor, at least:
(1) identification information;
(2) an account type; and
(3) realm information;
applying a deterministic hash function to the received identification information, the account type, and the realm information to establish a first composite key, wherein the first composite key is a hash of the identification information, the account type, and the realm information;
performing a single database search in response to establishing the first composite key for a matching composite key for correlation with the first composite key;
in direct response to correlating the first composite key with a matching composite key in the single database, providing an indication of a conflict with an existing account to a user; and
in response to failing to correlate the first composite key with a matching key, providing for creation of a user linked account, wherein the user linked account provides a realm-dependent user experience, and wherein the user linked account is partitioned according to the realm information.

### Claim 2 (depends on 1)

The method according to claim 1, wherein the identification information is one of a username or an email address, and wherein the account type is one of a password or account reference.

### Claim 3 (depends on 1)

The method according to claim 1, wherein an identification field for user identification information of the user account object is dependent on the realm, the method further comprising:
providing the realm specific user experience subsequent to access of the user account object.

### Claim 4 (depends on 1)

The method according to claim 1, wherein the identification information or the account type is used for a plurality of user account objects.

### Claim 5 (depends on 1)

The method of claim 1, wherein the realm-dependent user experience comprises differentiated user treatment based on the realm.

### Claim 6 (depends on 1)

The method of claim 1, wherein providing an indication of a conflict comprises providing the indication of the conflict to a user associated with the identification information.

### Claim 7

An apparatus comprising at least one processor and at least one memory including computer program code, the at least one memory and the computer program code configured to, with the processor, cause the apparatus to at least:
receive at least:
(1) identification information;
(2) an account type; and
(3) realm information;
apply a deterministic hash function to the received identification information, the account type, and the realm information to establish a first composite key, wherein the first composite key is a hash of the identification information, the account type, and the realm information;
perform a single database search in response to establishing the first composite key for a matching composite key for correlation with the first composite key;
in direct response to correlating the first composite key with a matching composite key in the single database, provide an indication of a conflict with an existing account to a user; and
in response to failing to correlate the first composite key with a matching key, provide for creation of a user linked account, wherein the user linked account provides a realm-dependent user experience, and wherein the user linked account is partitioned according to the realm information.

### Claim 8 (depends on 7)

The apparatus according to claim 7, wherein the identification information is one of a username or an email address, and wherein the account type is one of a password or account reference.

### Claim 9 (depends on 7)

The apparatus according to claim 7, wherein an identification field for user identification information of the user account object is dependent on the realm, the apparatus further caused to:
provide the realm specific user experience subsequent to access of the user account object.

### Claim 10 (depends on 7)

The apparatus according to claim 7, wherein the identification information or the account type is used for a plurality of user account objects.

### Claim 11 (depends on 7)

The apparatus of claim 7, wherein the realm-dependent user experience comprises differentiated user treatment based on the realm.

### Claim 12 (depends on 7)

The apparatus of claim 7, wherein causing the apparatus to provide an indication of a conflict comprises causing the apparatus to provide the indication of the conflict to a user associated with the identification information.

### Claim 13

A computer program product comprising at least one non-transitory computer-readable storage medium having computer-executable program code instructions stored therein, the computer-executable program code instructions comprising program code instructions to: receive at least:
(1) identification information;
(2) an account type; and
(3) realm information;
apply a deterministic hash function to the received identification information, the account type, and the realm information to establish a first composite key, wherein the first composite key is a hash of the identification information, the account type, and the realm information;
perform a single database search in response to establishing the first composite key for a matching composite key for correlation with the first composite key;
in direct response to correlating the first composite key with a matching composite key in the single database, provide an indication of a conflict with an existing account to a user; and
in response to failing to correlate the first composite key with a matching key, provide for creation of a user linked account, wherein the user linked account provides a realm-dependent user experience, and wherein the user linked account is partitioned according to the realm information.

### Claim 14 (depends on 13)

The computer program product according to claim 13, wherein the identification information is one of a username or an email address, and wherein the account type is one of a password or account reference.

### Claim 15 (depends on 13)

The computer program product according to claim 13, wherein an identification field for user identification information of the user account object is dependent on the realm, the computer program product further comprising program code instructions to:
provide the realm specific user experience subsequent to access of the user account object.

### Claim 16 (depends on 13)

The computer program product according to claim 13, wherein the identification information or the account type is used for a plurality of user account objects.

### Claim 17 (depends on 13)

The computer program product of claim 13, wherein the realm-dependent user experience comprises differentiated user treatment based on the realm.

### Claim 18 (depends on 13)

The method of claim 13, wherein the program code instructions to provide an indication of a conflict comprise program code instructions to provide the indication of the conflict to a user associated with the identification information.
