IP Library Granted Patent US 10,805,281
Granted Patent B2
US 10,805,281 · App. 15/714,803 · Granted Oct 13, 2020

System and method for secure two-party evaluation of utility of sharing data

Inventors: Francisco E. Torres (San Jose, CA); Vanishree Hanumantha Rao (San Mateo, CA); Shantanu Rane (Menlo Park, CA); Yunhui Long (Urbana, IL)
Assignee: Palo Alto Research Center Incorporated
H04L63/061H04L63/0435H04L63/0442H04L63/0853H04L67/02H04L67/141H04L67/146H04L63/1416
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 10,805,281
App. No.
15/714,803
Granted
Oct 13, 2020
Kind
B2
Abstract

Embodiments described herein provide a system for improving a classifier by computing a statistic for the utility of sharing data with a second party. The system may encrypt a set of class labels based on a public key/private key pair to obtain a set of encrypted class labels. The system may send a public key and the set of encrypted class labels to a second computing device. The system may receive an encrypted value computed by the second computing device based on the public key. The system may decrypt the encrypted value based on a private key to obtain a decrypted value. The system may then send a pair of encrypted values computed based on the decrypted value to the second computing device. The system may subsequently receive an encrypted utility statistic from the second computing device, and decrypt the encrypted utility statistic to obtain a decrypted utility statistic.

Claims (71)

1. A computer-implemented method for obtaining a utility statistic, the method comprising a first computing device:

encrypting a set of class labels based on a public key/private key pair to obtain a set of encrypted class labels;

sending a public key and the set of encrypted class labels to a second computing device;

receiving a value computed by the second computing device using a set of data stored at the second computing device, wherein the set of data is not known to the first computing device, and wherein the value is encrypted using blinding known only to the second computing device and further encrypted using the public key;

decrypting the encrypted value based on a private key to obtain a decrypted value that remains blinded to all entities except the second computing device;

sending a pair of encrypted values computed based on the decrypted value to the second computing device;

receiving an encrypted utility statistic from the second computing device; and

decrypting the encrypted utility statistic to obtain a decrypted utility statistic.

2. The method of claim 1 , wherein sending the pair of encrypted values further comprises:

computing a pair of values based on the decrypted value; and

encrypting, based on the public key, the pair of values to obtain the pair of encrypted values.

3. The method of claim 1 , further comprising:

determining that the decrypted utility statistic exceeds a predetermined threshold;

requesting a set of data from the second computing device; and

applying the set of data to improve the classifier.

4. The method of claim 1 , wherein the class labels are associated with binary attributes.

5. The method of claim 1 , further comprising:

sending a request to the second computing device to compute a utility statistic.

6. The method of claim 1 , wherein sending the public key and the set of encrypted class labels further comprises:

computing a value based on a sum of elements of a feature vector which includes the set of class labels;

encrypting the computed value; and

sending the encrypted value to the second computing device.

7. The method of claim 1 , further comprising:

computing a second encrypted utility statistic in a two-stream mode; and

sending the second encrypted utility statistic to the second computing device.

8. The method of claim 7 , further comprising:

re-encrypting the decrypted utility statistic based on a first single-use key to obtain a re-encrypted utility statistic;

sending the re-encrypted utility statistic to the second computing device;

receiving a second re-encrypted utility statistic value and a second single-use key from the second computing device;

sending the first single-use key to the second computing device;

decrypting the second re-encrypted utility statistic based on the second single-use key to obtain a second utility statistic; and

determining that the second utility statistic is equal to the decrypted utility statistic.

9. The method of claim 1 , wherein the second computing device applies a statistical privacy technique to a set of data to obtain a second set of data to be considered for sharing/combining.

10. The method of claim 1 , wherein the second computing device performs operations comprising:

computing the encrypted value based on the set of encrypted class labels and the public key.

11. The method of claim 1 , wherein the second computing device performs at least one of:

a binary operation associated with an additively homomorphic private key encryption scheme, and

a binary operation associated with a scalar multiplication homomorphic private key encryption scheme.

12. A computing system for obtaining a utility statistic, the system comprising a first computing device and further comprising:

one or more processors,

a non-transitory computer-readable medium coupled to the one or more processors having instructions stored thereon that, when executed by the one or more processors, cause the one or more processors to perform operations comprising:

encrypting a set of class labels based on a public key/private key pair to obtain a set of encrypted class labels;

sending a public key and the set of encrypted class labels to a second computing device;

receiving a value computed by the second computing device using a set of data stored at the second computing device, wherein the set of data is not known to the first computing device, and wherein the value is encrypted using blinding known only to the second computing device and further encrypted using the public key;

decrypting the encrypted value based on a private key to obtain a decrypted value that remains blinded to all entities except the second computing device;

sending a pair of encrypted values computed based on the decrypted value to the second computing device;

receiving an encrypted utility statistic from the second computing device; and

decrypting the encrypted utility statistic to obtain a decrypted utility statistic.

13. The system of claim 12 , wherein sending the pair of encrypted values further comprises:

computing a pair of values based on the decrypted value; and

encrypting, based on the public key, the pair of values to obtain the pair of encrypted values.

14. The system of claim 12 , further comprising:

determining that the decrypted utility statistic exceeds a predetermined threshold;

requesting a set of data from the second computing device; and

applying the set of data to improve the classifier.

15. The system of claim 12 , wherein sending the public key and the set of encrypted class labels further comprises:

computing a value based on a sum of elements of a feature vector which includes the set of class labels;

encrypting the computed value; and

sending the encrypted value to the second computing device.

16. The system of claim 12 , wherein the method further comprises:

computing a second encrypted utility statistic in a two-stream mode; and

sending the second encrypted utility statistic to the second computing device.

17. The system of claim 16 , wherein the method further comprises:

re-encrypting the decrypted utility statistic based on a first single-use key to obtain a re-encrypted utility statistic;

sending the re-encrypted utility statistic to the second computing device;

receiving a second re-encrypted utility statistic value and a second single-use key from the second computing device;

sending the first single-use key to the second computing device;

decrypting the second re-encrypted utility statistic based on the second single-use key to obtain a second utility statistic; and

determining that the second utility statistic is equal to the decrypted utility statistic.

18. The system of claim 12 , wherein the second computing device performs operations comprising:

computing the encrypted value based on the set of encrypted class labels and the public key.

Assignments (10)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 14, 2025
From: XEROX CORPORATION
To: GENESEE VALLEY INNOVATIONS, LLC
Reel/Frame 073562/0677 →
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 Sep 25, 2017
From: TORRES, FRANCISCO E.; HANUMANTHA RAO, VANISHREE; RANE, SHANTANU; LONG, YUNHUI
To: PALO ALTO RESEARCH CENTER INCORPORATED
Reel/Frame 043686/0076 →
Continuity (1)
Related Publication 20190097985A1 · Mar 28, 2019