IP Library Granted Patent US 9,998,435
Granted Patent B1
US 9,998,435 · App. 15/252,157 · Granted Jun 12, 2018

System and method to anonymize data transmitted to a destination computing device

Inventors: Pravin Kothari (San Jose, CA); Malakondayya Gorantla (Santa Clara, CA)
Assignee: CIPHERCLOUD, INC.
H04L63/0478G06F21/6254H04L9/08H04L63/0421H04L63/0435H04L63/061
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 9,998,435
App. No.
15/252,157
Granted
Jun 12, 2018
Kind
B1
Abstract

A method and system for anonymizing data is disclosed. Data to be anonymized is received by an anonymization system. A request for a data encryption key is generated. A masked data encryption key is received in response to the request. The data encryption key is retrieved from the masked data encryption key. The data is anonymized using an anonymization module to derive an anonymized data using the data encryption key.

Claims (61)

1. A method for anonymizing data, comprising:

receiving data to be anonymized by an anonymization system executed on a computing device, the data including a plurality of characters;

generating a request for a data encryption key with a corresponding request identifier;

generating a masked data encryption key corresponding to the request identifier for the data encryption key by

providing a first encryption key, a second encryption key and a master key;

masking the master key with the first encryption key using a computer implemented first crypto function to generate a masked master key; and

generating the masked data encryption key using a computer implemented second crypto function and the masked master key;

storing the corresponding request identifier in a data store and associating the generated masked data encryption key with the stored corresponding request identifier;

receiving the masked data encryption key in response to the request;

retrieving the data encryption key from the received masked data encryption key;

anonymizing the data using an anonymization module to derive anonymized data using the retrieved data encryption key;

receiving a subsequent request for a data encryption key with an associated request identifier; and

verifying if there is a match between the associated request identifier and the stored corresponding request identifier, and

when there is a match, returning the masked data encryption key associated with the stored corresponding request identifier; and

when there is no match, generating a new masked data encryption key and responding with the generated new masked data encryption key.

2. The method of claim 1 , wherein retrieving the data encryption key further including de-masking the masked data encryption key using a third crypto function and the second encryption key.

3. The method of claim 1 , wherein the first crypto function is configured such that the master key may not be derived from the masked master key and the first encryption key.

4. The method of claim 3 , wherein the second crypto function and the third crypto function are configured such that effect of first encryption key on the masked data encryption key generated using the second crypto function is negated by the second encryption key using the third crypto function.

5. The method of claim 1 , wherein,

the first crypto function is executed in an administrator system;

the second crypto function is executed in a key manager system; and

the third crypto function is executed in the anonymization system.

6. The method of claim 5 , further including:

receiving the request for the data encryption key by the key manager system;

generating the masked data encryption key by the key manager system; and

responding with the masked data encryption key by the key manager system.

7. The method of claim 5 , wherein the administrator system transmits the masked master key to the key manager system and transmits the second encryption key to the anonymization system.

8. The method of claim 1 , further including:

feeding a data encryption key (DEK) seed and the masked master key to the second crypto function as input to generate the masked data encryption key.

9. The method of claim 8 , wherein associating the generated masked data encryption key with the stored corresponding request identifier further including associating the DEK seed corresponding to the generated masked data encryption key with the stored corresponding request identifier; and

wherein returning the masked data encryption key associated with the stored corresponding request identifier further including regenerating the masked data encryption key by using the masked master key and the DEK seed corresponding to the stored corresponding request identifier and responding with the regenerated masked data encryption key.

10. A system to anonymize data, comprising:

an anonymization system executed on a computing device configured to

receive data to be anonymized, the data including a plurality of characters;

generate a request for a data encryption key with a corresponding request identifier;

receive a generated masked data encryption key that corresponds the request identifier in response to the request,

wherein, a masked master key is generated by masking a master key with a first encryption key using a computer implemented first crypto function; and

the masked data encryption key is generated using a computer implemented second crypto function and the masked master key;

and wherein, the corresponding request identifier is stored in a data store and the corresponding request identifier is associated with the generated masked data encryption key;

retrieve the data encryption key from the received masked data encryption key;

anonymize the data using an anonymization module to derive an anonymized data using the retrieved data encryption key; and

wherein the system is further configured to

receive a subsequent request for a data encryption key with an associated request identifier;

verify if there is a match between the associated request identifier and the stored corresponding request identifier, and

when there is a match, return the masked data encryption key associated with the stored corresponding request identifier; and

when there is no match, generate a new masked data encryption key and respond with the generated new masked data encryption key.

11. The system of claim 10 , wherein a third crypto function configured to retrieve the data encryption key by de-masking the masked data encryption key using the second encryption key.

12. The system of claim 10 , wherein the first crypto function is configured such that the master key may not be derived from the masked master key and the first encryption key.

13. The system of claim 12 , wherein the second crypto function and the third crypto function are configured such that effect of first encryption key on the masked data encryption key generated using the second crypto function is negated by the second encryption key using the third crypto function.

14. The system of claim 10 , wherein,

the first encryption function is executed in an administrator system;

the second crypto function is executed in a key manager system; and

the third crypto function is executed in the anonymization system.

15. The system of claim 14 , wherein the key manager system

receives the request for the data encryption key;

generates the masked data encryption key; and

responds with the masked data encryption key.

16. The system of claim 14 , wherein the administrator system transmits the masked master key to the key manager system and transmits the second encryption key to the anonymization system.

17. The system of claim 10 , wherein a data encryption key (DEK) seed and the masked master key is fed to the second crypto function as input to generate the masked data encryption key.

18. The system of claim 17 , wherein the DEK seed that corresponds to the generated masked data encryption key is associated with the stored corresponding request identifier; and

when there is a match between the associated request identifier and the stored corresponding request identifier, the masked data encryption key associated with the stored corresponding request identifier is regenerated by using the masked master kwy and the DEK seed associated with the stored corresponding request identifier.

Assignments (14)
SECURITY INTEREST Recorded Jan 6, 2026
From: ALERT LOGIC, INC.; DIGITAL GUARDIAN LLC; ECRIME MANAGEMENT STRATEGIES, INC.; FORTRA, LLC; GLOBALSCAPE, INC.; TRIPWIRE, INC.
To: ACQUIOM AGENCY SERVICES LLC, AS COLLATERAL AGENT
Reel/Frame 074233/0632 →
NEW MONEY FIRST LIEN INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Nov 21, 2025
From: ALERT LOGIC, INC.; DIGITAL GUARDIAN LLC; ECRIME MANAGEMENT STRATEGIES, INC.; FORTRA, LLC; GLOBALSCAPE, INC.; TRIPWIRE, INC.; VERA SECURITY, INC.
To: ARES CAPITAL CORPORATION, AS COLLATERAL AGENT
Reel/Frame 073683/0534 →
EXTENDED FIRST LIEN INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Nov 21, 2025
From: FORTRA, LLC
To: JEFFERIES FINANCE LLC, AS COLLATERAL AGENT
Reel/Frame 073663/0914 →
EXTENDED RCF FIRST LIEN INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Nov 21, 2025
From: FORTRA, LLC
To: JEFFERIES FINANCE LLC, AS COLLATERAL AGENT
Reel/Frame 073663/0327 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 18, 2025
From: LOOKOUT, INC.
To: FORTRA, LLC
Reel/Frame 071659/0726 →
RELEASE OF SECURITY INTEREST Recorded May 14, 2025
From: MIDCAP FINANCIAL TRUST
To: LOOKOUT, INC.
Reel/Frame 071115/0227 →
SECURITY INTEREST Recorded Aug 10, 2024
From: LOOKOUT, INC.
To: MIDCAP FINANCIAL TRUST
Reel/Frame 068538/0177 →
RELEASE OF PATENT SECURITY INTEREST AT REEL 59909 AND FRAME 0764 Recorded Jun 2, 2023
From: ALTER DOMUS (US) LLC, AS ADMINISTRATIVE AGENT
To: LOOKOUT, INC.
Reel/Frame 063844/0638 →
SECURITY INTEREST Recorded May 9, 2022
From: LOOKOUT, INC.
To: ALTER DOMUS (US) LLC
Reel/Frame 059909/0764 →
RELEASE OF SECURITY INTEREST Recorded May 9, 2022
From: SILICON VALLEY BANK (THE "BANK")
To: LOOKOUT, INC.
Reel/Frame 059909/0668 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 6, 2022
From: CIPHERCLOUD, LLC.
To: LOOKOUT, INC.
Reel/Frame 059522/0738 →
MERGER AND CHANGE OF NAME Recorded Apr 6, 2022
From: CIPHERCLOUD, INC.; CIPHERCLOUD ACQUISITION, LLC
To: CIPHERCLOUD, LLC.
Reel/Frame 059522/0690 →
SECURITY INTEREST Recorded Mar 16, 2021
From: CIPHERCLOUD, INC.
To: SILICON VALLEY BANK
Reel/Frame 055606/0608 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 30, 2016
From: KOTHARI, PRAVIN; GORANTLA, MALAKONDAYYA
To: CIPHERCLOUD, INC.
Reel/Frame 039590/0534 →
Continuity (4)
Continuation 14609402 · Jan 29, 2015
Continuation In Part 13844353 · Mar 15, 2013
Continuation In Part 13042459 · Mar 8, 2011
Continuation In Part 13323821 · Dec 13, 2011