# US 11,451,527 B2 · System and method for secure two-party evaluation of utility of sharing data

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,451,527 B2
- Document ID: US11451527B2
- Status: Granted
- Kind: B2
- Application number: 17/016,073
- Filed: 2020-09-09
- Published: 2020-12-31
- Granted: 2022-09-20
- Earliest claimed: 2017-09-25
- Assignees: Palo Alto Research Center Incorporated
- Applicants: Palo Alto Research Center Incorporated
- Inventors: Francisco E. Torres; Vanishree Hanumantha Rao; Shantanu Rane; Yunhui Long
- Web page: https://patentgrep.com/patent/US11451527B2

## CPC

- H04L 63/061: {for key exchange, e.g. in peer-to-peer networks (cryptographic mechanisms or cryptographic arrangements for key agreement H04L9/0838)}
- H04L 63/0435: {wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption (cryptographic mechanisms or cryptographic arrangements for symmetric key encryption H04L9/06)}
- H04L 63/0442: {wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption (cryptographic mechanisms or cryptographic arrangements for public-key encryption H04L9/30)}
- H04L 63/0853: {using an additional device, e.g. smartcard, SIM or a different communication terminal (cryptographic mechanisms or cryptographic arrangements for entity authentication involving additional secure or trusted devices H04L9/3234)}
- H04L 67/02: based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L 67/141: Setup of application sessions (admission control or resource allocation in data switching networks H04L47/70)
- H04L 67/146: Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
- H04L 63/1416: {Event detection, e.g. attack signature detection}
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## 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

### Claim 1

A computer-implemented method, the method comprising:
exchanging, in multiple rounds between two or more parties, encrypted data and encrypted statistics computed for the data, wherein a statistic is a measure derived from one or more attributes of the data;
building an encrypted utility statistic using computations in an encrypted domain; and
applying, by at least one party, a respective private decryption key to decrypt the encrypted utility statistic to obtain a utility statistic,
wherein the utility statistic indicates a utility of combining data from the two or more parties without any party sharing unencrypted data and without any party having a means to decrypt data from another party.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
securely estimating, based on the utility statistic, the utility of combining data from the two or more parties,
wherein no party shares unencrypted data with another party, and
wherein no party has a means to decrypt data from another party.

### Claim 3 (depends on 1)

The method of claim 1, further comprising:
determining, by the two or more parties, that the utility statistic exceeds a predetermined threshold;
agreeing, by the two or more parties based on the determination, on terms for transferring unencrypted data;
transferring, to a first party by a second party, the unencrypted data based on the agreed terms; and
applying, by the first party, the set of unencrypted data to improve a classifier or other model.

### Claim 4 (depends on 1)

The method of claim 1,
wherein building the encrypted utility statistic using computations in an encrypted domain is performed without sharing private decryption keys between the two or more parties.

### Claim 5 (depends on 1)

The method of claim 1,
wherein applying, by the at least one party, the respective private decryption key to obtain the utility statistic is based on decrypting the encrypted utility statistic.

### Claim 6 (depends on 1)

The method of claim 1,
wherein the at least one party comprises a first party associated with a first computing device and a second party associated with a second computing device,
wherein the utility statistic obtained by the first party is a first utility statistic computed in a two-stream mode, and
wherein the utility statistic obtained by the second party is a second utility statistic computed in the two-stream mode.

### Claim 7 (depends on 6)

The method of claim 6, further comprising verifying, by the first computing device, that the first utility statistic is the same as the second utility statistic, which comprises:
re-encrypting the first utility statistic based on a first single-use key;
subsequent to sending the re-encrypted first utility statistic to the second computing device, receiving a second single-use key from the second computing device;
subsequent to receiving a re-encrypted second utility statistic from the second computing device, wherein the second utility statistic is encrypted based on the second single-use key, sending the first single-use key to the second computing device;
decrypting the re-encrypted second utility statistic based on the second single-use key; and
determining that the decrypted second utility statistic is the same as the first utility statistic.

### Claim 8 (depends on 7)

The method of claim 7,
wherein sending the first single-use key to the second computing device comprises sending the first single-use key encrypted based on a public key of the second computing device, and
wherein the received second single-use key is encrypted based on public key of the first computing device.

### Claim 9

A computing system for obtaining a utility statistic, the system 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 a method, the method comprising:
exchanging, in multiple rounds between two or more parties, encrypted data and encrypted statistics computed for the data, wherein a statistic is a measure derived from one or more attributes of the data;
building an encrypted utility statistic using computations in an encrypted domain; and
applying, by at least one party, a respective private decryption key to decrypt the encrypted utility statistic to obtain a utility statistic,
wherein the utility statistic indicates a utility of combining data from the two or more parties without any party sharing unencrypted data and without any party having a means to decrypt data from another party.

### Claim 10 (depends on 9)

The computing system of claim 9, wherein the method further comprises:
securely estimating, based on the utility statistic, the utility of combining data from the two or more parties,
wherein no party shares unencrypted data with another party, and
wherein no party has a means to decrypt data from another party.

### Claim 11 (depends on 9)

The computing system of claim 9, wherein the method further comprises:
determining, by the two or more parties, that the utility statistic exceeds a predetermined threshold;
agreeing, by the two or more parties based on the determination, on terms for transferring unencrypted data;
transferring, to a first party by a second party, the unencrypted data based on the agreed terms; and
applying, by the first party, the set of unencrypted data to improve a classifier or other model.

### Claim 12 (depends on 9)

The computing system of claim 9,
wherein building the encrypted utility statistic using computations in an encrypted domain is performed without sharing private decryption keys between the two or more parties.

### Claim 13 (depends on 9)

The computing system of claim 9,
wherein applying, by the at least one party, the respective private decryption key to obtain the utility statistic is based on decrypting the encrypted utility statistic.

### Claim 14 (depends on 9)

The computing system of claim 9,
wherein the at least one party comprises a first party associated with a first computing device and a second party associated with a second computing device,
wherein the utility statistic obtained by the first party is a first utility statistic computed in a two-stream mode, and
wherein the utility statistic obtained by the second party is a second utility statistic computed in the two-stream mode.

### Claim 15 (depends on 14)

The computing system of claim 14, wherein the method further comprises verifying, by the first computing device, that the first utility statistic is the same as the second utility statistic, which comprises:
re-encrypting the first utility statistic based on a first single-use key;
subsequent to sending the re-encrypted first utility statistic to the second computing device, receiving a second single-use key from the second computing device;
subsequent to receiving a re-encrypted second utility statistic from the second computing device, wherein the second utility statistic is encrypted based on the second single-use key, sending the first single-use key to the second computing device;
decrypting the re-encrypted second utility statistic based on the second single-use key; and
determining that the decrypted second utility statistic is the same as the first utility statistic.

### Claim 16 (depends on 15)

The computing system of claim 15,
wherein sending the first single-use key to the second computing device comprises sending the first single-use key encrypted based on a public key of the second computing device, and
wherein the received second single-use key is encrypted based on public key of the first computing device.

### Claim 17

A non-transitory computer-readable storage medium storing instructions that when executed by a computer cause the computer to perform a method, the method comprising:
exchanging, in multiple rounds between two or more parties, encrypted data and encrypted statistics computed for the data, wherein a statistic is a measure derived from one or more attributes of the data;
building an encrypted utility statistic using computations in an encrypted domain; and
applying, by at least one party, a respective private decryption key to decrypt the encrypted utility statistic to obtain a utility statistic,
wherein the utility statistic indicates a utility of combining data from the two or more parties without any party sharing unencrypted data and without any party having a means to decrypt data from another party.

### Claim 18 (depends on 17)

The non-transitory computer-readable storage medium of claim 17, wherein the method comprises:
securely estimating, based on the utility statistic, the utility of combining data from the two or more parties,
wherein no party shares unencrypted data with another party, and
wherein no party has a means to decrypt data from another party.

### Claim 19 (depends on 17)

The non-transitory computer-readable storage medium of claim 17, wherein the method further comprises:
determining, by the two or more parties, that the utility statistic exceeds a predetermined threshold;
agreeing, by the two or more parties based on the determination, on terms for transferring unencrypted data;
transferring, to a first party by a second party, the unencrypted data based on the agreed terms; and
applying, by the first party, the set of unencrypted data to improve a classifier or other model.

### Claim 20 (depends on 17)

The non-transitory computer-readable storage medium of claim 17,
wherein building the encrypted utility statistic using computations in an encrypted domain is performed without sharing private decryption keys between the two or more parties.
