IP Library Granted Patent US 9,842,215
Granted Patent B2
US 9,842,215 · App. 14/931,774 · Granted Dec 12, 2017

Computer-implemented system and method for anonymizing encrypted data

Inventors: Julien Freudiger (Mountain View, CA); Alejandro E. Brito (Mountain View, CA); Shantanu Rane (Menlo Park, CA); Ersin Uzun (Campbell, CA)
Assignee: Palo Alto Research Center Incorporated
G06F21/602G06F21/6254
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,842,215
App. No.
14/931,774
Granted
Dec 12, 2017
Kind
B2
Abstract

A computer-implemented system and method for anonymizing encrypted data is provided. At least one attribute is identified within a dataset for anonymization and is associated with a plurality of data values. Each data value is encrypted for each identified attribute while maintaining an order of the encrypted data values. The encrypted values are ordered and the ordered encrypted data values are segmented into two or more classes based on the ordering of the encrypted data values. A range of the encrypted data values within each of the segmented classes is identified and the range of one of the classes is assigned to each encrypted data value within that class as anonymized data.

Claims (55)

1. A computer-implemented system for anonymizing encrypted data, comprising:

an identification module to identify at least one attribute within a dataset for anonymization, wherein each attribute is associated with a plurality of data values;

an encryption module to encrypt each data value for each identified attribute while maintaining an order of the encrypted data value;

an order module to order the encrypted values;

a segmentation module to segment the ordered encrypted data values into two or more classes based on the ordering of the encrypted data values;

a determination module to determine a range of the encrypted data values within each of the segmented classes; and

an assignment module to assign the range of one of the classes to each encrypted data value within that class as anonymized data,

wherein the modules are executed via a processor.

2. A system according to claim 1 , further comprising:

a delivery module to provide the anonymized data values to an untrusted third party.

3. A system according to claim 1 , further comprising:

a masking module to identify a further attribute within the data set for anonymization and to randomly assign a masked value to each of the data items associated with the further attribute.

4. A system according to claim 1 , further comprising:

a joint segmentation module to identify a further attribute within the data set for anonymization with the at least one attribute, wherein each data value for the at least one attribute corresponds with a further data value for the further attribute, to encrypt the further data values, to segment the further encrypted data values for each of the segmented classes into further segmented classes, and to generate groups of classes for the at least one attribute and the further attribute.

5. A system according to claim 1 , further comprising:

a class identifier to identify an n number of segmented classes.

6. A system according to claim 5 , wherein the segmentation module randomly segments the ordered encrypted data values into the identified n-number of segmented classes.

7. A system according to claim 5 , wherein the segmentation module selects a minimum k number of encrypted data values per class and segments the ordered encrypted data values until the identified n number of segmented classes is reached and each of the segmented classes includes at least a k number of encrypted data values.

8. A system according to claim 1 , wherein the segmentation module designates a number of iterations for the segmentation and segments the ordered encrypted data values until the designated number of iterations has been performed.

9. A system according to claim 1 , wherein the segmentation module conducts the segmentation of the ordered encrypted data values via a tree.

10. A system according to claim 1 , further comprising:

a data compilation module to provide to the third party at least one of the data set with the anonymized values and the data values of the other attributes, and the data set with the anonymized values and encrypted values for the other attributes.

11. A computer-implemented method for anonymizing encrypted data, comprising:

identifying by a trusted server at least one attribute within a dataset for anonymization, wherein each attribute is associated with a plurality of data values and the trusted server comprises a central processing unit, memory, an input port, and an output port;

encrypting by the trusted server each data value for each identified attribute while maintaining an order of the encrypted data value;

ordering via an anonymizer the encrypted values;

segmenting by the anonymizer the ordered encrypted data values into two or more classes based on the ordering of the encrypted data values;

identifying by the anonymizer a range of the encrypted data values within each of the segmented classes; and

assigning by the anonymizer the range of one of the classes to each encrypted data value within that class as anonymized data.

12. A method according to claim 11 , further comprising:

providing the anonymized data values to an untrusted third party.

13. A method according to claim 11 , further comprising:

identifying a further attribute within the data set for anonymization; and

randomly assigning a masked value to each of the data items associated with the further attribute.

14. A method according to claim 11 , further comprising:

identifying a further attribute within the data set for anonymization with the at least one attribute, wherein each data value for the at least one attribute corresponds with a further data value for the further attribute;

encrypting the further data values;

segmenting the further encrypted data values for each of the segmented classes into further segmented classes; and

generating groups of classes for the at least one attribute and the further attribute.

15. A method according to claim 11 , further comprising:

identifying an n number of segmented classes.

16. A method according to claim 15 , further comprising:

randomly segmenting the ordered encrypted data values into the identified n-number of segmented classes.

17. A method according to claim 15 , further comprising:

selecting a minimum k number of encrypted data values per class; and

segmenting the ordered encrypted data values until the identified n number of segmented classes is reached and each of the segmented classes includes at least a k number of encrypted data values.

18. A method according to claim 11 , further comprising:

designating a number of iterations for the segmentation; and

segmenting the ordered encrypted data values until the designated number of iterations has been performed.

19. A method according to claim 11 , further comprising:

conducting the segmentation of the ordered encrypted data values via a tree.

20. A method according to claim 11 , further comprising:

performing at least one of:

encrypting the data values of the other attributes in the data set and providing the data set to the third party with the anonymized values and the encrypted values; and

providing the data set to the third party with the anonymized values and the data values of the other attributes.

Assignments (9)
SECOND LIEN NOTES PATENT SECURITY AGREEMENT Recorded Jul 2, 2025
From: XEROX CORPORATION
To: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 071785/0550 →
FIRST LIEN NOTES PATENT SECURITY AGREEMENT Recorded Apr 11, 2025
From: XEROX CORPORATION
To: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 070824/0001 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS RECORDED AT RF 064760/0389 Recorded Feb 13, 2024
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: XEROX CORPORATION
Reel/Frame 068261/0001 →
SECURITY INTEREST Recorded Feb 13, 2024
From: XEROX CORPORATION
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 066741/0001 →
SECURITY INTEREST Recorded Nov 20, 2023
From: XEROX CORPORATION
To: JEFFERIES FINANCE LLC, AS COLLATERAL AGENT
Reel/Frame 065628/0019 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVAL OF US PATENTS 9356603, 10026651, 10626048 AND INCLUSION OF US PATENT 7167871 PREVIOUSLY RECORDED ON REEL 064038 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jun 28, 2023
From: PALO ALTO RESEARCH CENTER INCORPORATED
To: XEROX CORPORATION
Reel/Frame 064161/0001 →
SECURITY INTEREST Recorded Jun 22, 2023
From: XEROX CORPORATION
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 064760/0389 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 20, 2023
From: PALO ALTO RESEARCH CENTER INCORPORATED
To: XEROX CORPORATION
Reel/Frame 064038/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 4, 2015
From: FREUDIGER, JULIEN; BRITO, ALEJANDRO E.; RANE, SHANTANU; UZUN, ERSIN
To: PALO ALTO RESEARCH CENTER INCORPORATED
Reel/Frame 036963/0817 →
Continuity (1)
Related Publication 20170124335A1 · May 4, 2017