IP Library Granted Patent US 11,055,431
Granted Patent B2
US 11,055,431 · App. 15/844,181 · Granted Jul 6, 2021

Securing data storage of personally identifiable information in a database

Inventor: Nader Saad Henein (Dubai, AE)
Assignee: BlackBerry Limited
G06F21/6245G06F16/2255G06F16/2282G06F16/2457
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,055,431
App. No.
15/844,181
Granted
Jul 6, 2021
Kind
B2
Abstract

Systems, methods, and software can be used to secure storage of personally identifiable information. In some aspects, a method includes receiving, by at least one hardware processor, a request to store a data record, wherein the data record comprises personally identifiable information for a person; dividing, by the at least one hardware processor, the data record into at least two data entries, each of the at least two data entry comprising a respective portion of the personally identifiable information; selecting, by the at least one hardware processor, a database cell for each of the at least two data entries to store the respective portion of the personally identifiable information, wherein the database cells for different data entries are in different database tables, different database rows, or different database columns; and storing, by the at least one hardware processor, the at least two data entries in the selected database cells.

Claims (49)

1. A computer-implemented method for storing personally identifiable information, comprising:

receiving, by at least one hardware processor, a request to store a data record, wherein the data record comprises personally identifiable information for a person;

dividing, by the at least one hardware processor, the data record into at least two portions of the personally identifiable information;

selecting, by the at least one hardware processor, a database table cell for each portion of the at least two portions of the personally identifiable information, wherein the database table cells for different portions of the personally identifiable information for the same person are in different database rows, and wherein selecting the database table cell comprises:

determining a user ID associated with the personally identifiable information; and

determining, based on the user ID using a hashing function, at least one of a row ID, a table ID, or a column ID of each database table cell storing the respective portion of the personally identifiable information; and

storing, by the at least one hardware processor, the at least two portions of the personally identifiable information in the selected database table cells.

2. The method of claim 1 , further comprising:

receiving a query for the personally identifiable information;

determining the database table cells that store the at least two portions of the personally identifiable information for the personally identifiable information;

retrieving the at least two portions of the personally identifiable information from the database table cells;

combining the at least two portions of the personally identifiable information to reconstruct the data record; and

outputting the reconstructed data record in response to the query.

3. The method of claim 1 , wherein the at least two portions of the personally identifiable information comprise a first portion and a second portion, the first portion comprises a name of the person, and the second portion comprises at least one of an identification number, a phone number, a home address, or an email address of the person.

4. The method of claim 1 , wherein the user ID is determined based on the personally identifiable information.

5. The method of claim 1 , wherein the user ID is determined using a random number generator.

6. A non-transitory computer-readable medium storing instructions which, when executed, cause a computing device to perform operations comprising:

receiving, by at least one hardware processor, a request to store a data record, wherein the data record comprises personally identifiable information for a person;

dividing, by the at least one hardware processor, the data record into at least two portions of the personally identifiable information;

selecting, by the at least one hardware processor, a database table cell for each portion of the at least two portions of the personally identifiable information, wherein the database table cells for different portions of the personally identifiable information for the same person are in different database rows, and wherein selecting the database table cell comprises:

determining a user ID associated with the personally identifiable information; and

determining, based on the user ID using a hashing function, at least one of a row ID, a table ID, or a column ID of each database table cell storing the respective portion of the personally identifiable information; and

storing, by the at least one hardware processor, the at least two portions of the personally identifiable information in the selected database table cells.

7. The computer-readable medium of claim 6 , the operations further comprising:

receiving a query for the personally identifiable information;

determining the database table cells that store the at least two portions of the personally identifiable information for the personally identifiable information;

retrieving the at least two portions of the personally identifiable information from the database table cells;

combining the at least two portions of the personally identifiable information to reconstruct the data record; and

outputting the reconstructed data record in response to the query.

8. The computer-readable medium of claim 6 , wherein the at least two portions of the personally identifiable information comprise a first portion and a second portion, the first portion comprises a name of the person, and the second portion comprises at least one of an identification number, a phone number, a home address, or an email address of the person.

9. The computer-readable medium of claim 6 , wherein the user ID is determined based on the personally identifiable information.

10. The computer-readable medium of claim 6 , wherein the user ID is determined using a random number generator.

11. A device, comprising:

at least one hardware processor; and

a non-transitory computer-readable storage medium coupled to the at least one hardware processor and storing programming instructions for execution by the at least one hardware processor, wherein the programming instructions, when executed, cause the at least one hardware processor to perform operations comprising:

receiving a request to store a data record, wherein the data record comprises personally identifiable information for a person;

dividing the data record into at least two portions of the personally identifiable information;

selecting a database table cell for each portion of the at least two portions of the personally identifiable information, wherein the database table cells for different portions of the personally identifiable information for the same person are in different database rows, and wherein selecting the database table cell comprises:

determining a user ID associated with the personally identifiable information; and

determining, based on the user ID using a hashing function, at least one of a row ID, a table ID, or a column ID of each database table cell storing the respective portion of the personally identifiable information; and

storing the at least two portions of the personally identifiable information in the selected database table cells.

12. The device of claim 11 , the operations further comprising:

receiving a query for the personally identifiable information;

determining the database table cells that store the at least two portions of the personally identifiable information for the personally identifiable information;

retrieving the at least two portions of the personally identifiable information from the database table cells;

combining the at least two portions of the personally identifiable information to reconstruct the data record; and

outputting the reconstructed data record in response to the query.

13. The device of claim 11 , wherein the at least two portions of the personally identifiable information comprise a first portion and a second portion, the first portion comprises a name of the person, and the second portion comprises at least one of an identification number, a phone number, a home address, or an email address of the person.

14. The device of claim 11 , wherein the user ID is determined based on the personally identifiable information.

Assignments (4)
NUNC PRO TUNC ASSIGNMENT Recorded Jun 19, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064271/0199 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064104/0103 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 10, 2018
From: BLACKBERRY MIDDLE EAST & AFRICA FZ-LLC
To: BLACKBERRY LIMITED
Reel/Frame 045486/0897 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 27, 2018
From: HENEIN, NADER SAAD
To: BLACKBERRY MIDDLE EAST & AFRICA FZ-LLC.
Reel/Frame 045357/0535 →
Continuity (1)
Related Publication 20190188409A1 · Jun 20, 2019