IP Library Granted Patent US 9,300,637
Granted Patent B1
US 9,300,637 · App. 13/844,633 · Granted Mar 29, 2016

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

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,300,637
App. No.
13/844,633
Granted
Mar 29, 2016
Kind
B1
Abstract

A method and system for anonymizing data to be transmitted to a destination computing device is disclosed. Data to be transmitted is received from a user computer. The data includes one or more characters. The data is replaced with a token representative of the data. The token is transmitted to the destination computing device over a network.

Claims (64)

1. A method for anonymizing data to be transmitted to a destination computing device, comprising:

receiving data to be transmitted to the destination from a user computer, the data including one or more characters;

providing a tree of nodes, with each node representing a node value and a corresponding token value, wherein, each node configured to have a left child node and a right child node, with each of the path leading to the left child node and the right child node each representing a value and the values of the paths followed to reach one of the nodes representing the corresponding token value for the one of the nodes;

providing a data store to store a plurality of attributes associated with each node, a plurality of attributes including the node value, left boundary value,

right boundary value, left child node value, right child node value and the token value;

finding a node with a node value equal to a value of the data, by searching the data store for a node having the attributes of (x>left boundary value) and (x<right boundary value) and (node data value=x), where, x=value of the data;

selecting the corresponding token value of the found node as the anonymized representation of the data;

replacing the data with the token value; and

transmitting the token value instead of the data to the destination computing device over a network for storage in the destination computing device.

2. The method of claim 1 , wherein, if a node with a node value equal to the value of the data is not found, adding another node to the tree of nodes representing the value of the data, with a corresponding token value.

3. The method of claim 2 ,

wherein, adding another node further including locating a node with available child node having the following attributes: (x>left boundary value) and (x<right boundary value) and ((node data value>x and left child node value=null) or (node data value<x and right child node value=null)), where, x=value of the data.

4. The method of claim 1 , wherein the path leading to the left child node and the right child node each representing one of the two binary values.

5. The method of claim 1 , further including

receiving anonymized data from the destination computing device; and

de-anonymizing the received anonymized data by replacing the token value with data value.

6. A method for anonymizing data to be transmitted to a destination computing device, comprising:

receiving data to be transmitted to the destination from a user computer, the data including one or more characters;

replacing the data with a token representative of the data; and

transmitting the token to the destination computing device over a network;

wherein replacing the data to a corresponding token further including:

providing a tree of nodes, with each node representing a node value and a corresponding token value;

finding a node with a node value equal to the value of the data; and

selecting the corresponding token value as the token representative of the data;

wherein, each node configured to have a left child node and a right child node, with each of the path leading to the left child node and the right child node each representing a value; and

the values of the paths followed to reach one of the nodes representing the corresponding token value for the one of the nodes;

wherein the path leading to the left child node and the right child node each representing one of the two binary values;

providing a data store to store a plurality of attributes associated with each node, a plurality of attributes including the node value, left boundary value, right boundary value, left child node value, right child node value and the token value; and

wherein, if a node with a node value equal to the value of the data is not found, adding another node to the tree of nodes representing the value of the data, with a corresponding token value, by locating a node with available child node having the following attributes:

(x>left boundary value) and (x<right boundary value) and ((node data value>x and left child node value=null) or (node data value<x and right child node value=null)), where, x=value of the data.

7. The method of claim 6 , further including

receiving anonymized data from the destination computing device; and

de-anonymizing the received anonymized data by replacing the token value with data value.

8. An anonymization system to anonymize data transmitted to a destination computing device, comprising:

a logic to receive data to be transmitted to the destination from a user computer, the data including one or more characters;

a data store with a tree of nodes, with each node representing a node value and a corresponding token value, wherein, each node is configured to have a left child node and a right child node, with each of the path leading to the left child node and the right child node each representing a value;

wherein, the values of the paths followed to reach one of the nodes represents the corresponding token value for the one of the nodes; and wherein, the data store stores a plurality of attributes associated with each node, a plurality of attributes including the node value, left boundary value, right boundary value, left child node value, right child node value and the token value;

a logic to find a node with a node value equal to a value of the data, wherein, a node with a node value equal to the value of the data is found by searching the data store for a node with (x> left boundary value) and (x< right boundary value) and (node data value=x), where, x=value of the data, and select the corresponding token value of the found node as the anonymized representation of the data; and

an anonymization module to replace the data with the token; and transmit the token value to the destination computing device over a network for storage in the destination computing device.

9. The system of claim 8 , wherein, if a node with a node value equal to the value of the data is not found, another node is added to the tree of nodes that represents the value of the data, with a corresponding token value.

10. The system of claim 9 , wherein, another node is added by locating a node with available child node having the following attributes:

(x>left boundary value) and (x<right boundary value) and ((node data value>x and left child node value=null) or (node data value<x and right child node value=null)), where, x=value of the data.

11. The system of claim 8 , wherein the path leading to the left child node and the right child node each representing one of the two binary values.

12. The system of claim 8 , further configured to

receive anonymized data from the destination computing device; and

de-anonymize the received anonymized data by replacing the token value with data value.

13. An anonymization system to anonymize data transmitted to a destination computing device, comprising:

a logic to receive data to be transmitted to the destination from a user computer, the data including one or more characters; and

an anonymization module to

replace the data with a token representative of the data; and

transmit the token to the destination computing device over a network;

a data store with a tree of nodes, with each node representing a node value and a corresponding token value; and

a logic to find a node with a node value equal to the value of the data and

select the corresponding token value as the token representative of the data;

wherein, if a node with a node value equal to the value of the data is not found, another node is added to the tree of nodes that represents the value of the data, with a corresponding token value;

wherein, each node is configured to have a left child node and a right child node, with each of the path leading to the left child node and the right child node each representing a value; and

the values of the paths followed to reach one of the nodes represents the corresponding token value for the one of the nodes;

wherein the path leading to the left child node and the right child node each representing one of the two binary values;

wherein, the data store stores a plurality of attributes associated with each node, a plurality of attributes including the node value, left boundary value, right boundary value, left child node value, right child node value and the token value; and

wherein, if a node with a node value equal to the value of the data is not found, another node is added to the tree of nodes that represents the value of the data, with a corresponding token value, by locating a node with available child node having the following attributes:

(x>left boundary value) and (x<right boundary value) and ((node data value>x and left child node value=null) or (node data value<x and right child node value=null)), where, x=value of the data.

14. The system of claim 13 , further configured to

receive anonymized data from the destination computing device; and

de-anonymize the received anonymized data by replacing the token with data value.

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 12, 2014
From: KOTHARI, PRAVIN; DASH, DEBABRATA
To: CIPHERCLOUD, INC.
Reel/Frame 033510/0616 →