IP Library › Granted Patent US 11,082,234
Granted Patent B2
US 11,082,234 · App. 16/029,113 · Granted Aug 3, 2021

Method and system for privacy-preserving social media advertising

Inventors: Daniela Becker (Pittsburgh, PA); Jorge Guajardo Merchan (Pittsburgh, PA)
Assignee: Robert Bosch GmbH
H04L9/3247H04L9/008H04L9/0618H04L9/3093G06Q30/0277G06Q2220/10
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 11,082,234
App. No.
16/029,113
Granted
Aug 3, 2021
Kind
B2
Abstract

A method for operating an aggregator in an electronic commerce system includes receiving ciphertexts and signatures transmitted from multiple clients, each ciphertext encrypting noisy plaintext data of a category of information for a user that purchased a product, generating sums of the ciphertexts and the signatures, verifying the sum of the ciphertexts with a homomorphic signature system based on the sum of the signatures and homomorphic verification data, decrypting the sum of the ciphertexts in a private stream aggregation (PSA) process based on homomorphic decryption data to generate a sum of noisy plaintext data in response to a success of the verification, and identifying aggregate statistical information transmitted from the clients based on the sum of noisy plaintext data while preserving differential privacy of the clients.

Claims (55)

1. A method for operating an aggregator in an electronic commerce system, the method comprising:

receiving, with a network interface in the aggregator, a plurality of ciphertexts and a plurality of signatures transmitted from a plurality of clients, each ciphertext in the plurality of ciphertexts including encrypted data corresponding to noisy plaintext data of a category of information for a user that purchased a product, and each signature in the plurality of signatures corresponding to a ciphertext in the plurality of ciphertexts;

generating, with a processor in the aggregator, a first sum of the plurality of ciphertexts;

generating, with the processor in the aggregator, a first sum of the plurality of signatures;

verifying, with the processor in the aggregator, the first sum of the plurality of ciphertexts with a homomorphic signature system based on the first sum of the plurality of signatures and homomorphic verification data stored in a memory of the aggregator;

decrypting, with the processor in the aggregator, the first sum of the plurality of ciphertexts in a private stream aggregation (PSA) process based on homomorphic decryption data stored in the memory of the aggregator to generate a first sum of noisy plaintext data in response to a success of the verification; and

identifying, with the processor in the aggregator, aggregate statistical information transmitted from the plurality of clients based on the first sum of noisy plaintext data while preserving differential privacy of the plurality of clients.

2. The method of claim 1 further comprising:

rejecting, with the processor in the aggregator, the first sum of the plurality of ciphertexts in response to a failure of verification of the first sum of the plurality of ciphertexts indicating that at least one ciphertext in the first plurality of ciphertexts or at least one signature in the first plurality of signatures is invalid.

3. The method of claim 1 wherein the homomorphic verification data stored in the memory further include a plurality of public keys corresponding to the plurality of clients.

4. The method of claim 1 further comprising:

receiving, with the network interface in the aggregator, a second sum of noisy plaintext data corresponding to a plurality of noisy plaintext data transmitted from the plurality of clients, a second sum of a plurality of ciphertexts, and a second sum of a plurality of signatures from another aggregator of a seller;

verifying, with the processor in the aggregator, the second sum of the plurality of ciphertexts with the homomorphic signature system based on the second sum of the plurality of signatures and the homomorphic verification data stored in the memory of the aggregator;

decrypting, with the processor in the aggregator, the second sum of the plurality of ciphertexts in the PSA process based on the homomorphic decryption data stored in the memory of the aggregator to generate a third sum of noisy plaintext data in response to a success of verification of the second sum of the plurality of ciphertexts; and

verifying the second sum of noisy plaintext data from the aggregator of the seller by only in response to the second sum of noisy plaintext data matching the third sum of noisy plaintext data.

5. The method of claim 4 further comprising:

rejecting, with the processor in the aggregator, the second sum of the plurality of ciphertexts in response to a failure of verification of the second sum of the plurality of ciphertexts indicating that at least one ciphertext in the second plurality of ciphertexts or at least one signature in the second plurality of signatures is invalid; and

rejecting, with the processor in the aggregator, the second sum of noisy plaintext data in response to the second sum of noisy plaintext data not matching the third sum of noisy plaintext data.

6. The method of claim 1 wherein the plurality of clients do not trust the aggregator and the aggregator is incapable of decrypting any individual ciphertext in the plurality of ciphertexts.

7. An aggregator in an electronic commerce system, the aggregator comprising:

a network interface configured to receive data via a data network;

a memory; and

a processor operatively connected to the network interface and the memory, the processor being configured to:

receive a plurality of ciphertexts and a plurality of signatures transmitted from a plurality of clients with the network interface, each ciphertext in the plurality of ciphertexts including encrypted data corresponding to noisy plaintext data of a category of information for a user that purchased a product, and each signature corresponding to a ciphertext in the plurality of ciphertexts;

generate a first sum of the plurality of ciphertexts;

generate a first sum of the plurality of signatures;

verify the first sum of the plurality of ciphertexts with a homomorphic signature system based on the first sum of the plurality of signatures and homomorphic verification data stored in a memory of the aggregator;

decrypt the first sum of the plurality of ciphertexts in a private stream aggregation (PSA) process based on homomorphic decryption data stored in the memory of the aggregator to generate a first sum of noisy plaintext data in response to a success of the verification; and

identify aggregate statistical information transmitted from the plurality of clients based on the first sum of noisy plaintext data while preserving differential privacy of the plurality of clients.

8. The aggregator of claim 7 , the processor being further configured to:

reject the first sum of the plurality of ciphertexts in response to a failure of verification of the first sum of the plurality of ciphertexts indicating that at least one ciphertext in the first plurality of ciphertexts or at least one signature in the first plurality of signatures is invalid.

9. The aggregator of claim 7 wherein the homomorphic verification data stored in the memory further include a plurality of public keys corresponding to the plurality of clients.

10. The aggregator of claim 7 , the processor being further configured to:

receive a second sum of noisy plaintext data corresponding to a plurality of noisy plaintext data transmitted from the plurality of clients, a second sum of a plurality of ciphertexts, and a second sum of a plurality of signatures from another aggregator of a seller with the network interface;

verify the second sum of the plurality of ciphertexts with the homomorphic signature system based on the second sum of the plurality of signatures and the homomorphic verification data stored in the memory of the aggregator;

decrypt the second sum of the plurality of ciphertexts in the PSA process based on the homomorphic decryption data stored in the memory of the aggregator to generate a third sum of noisy plaintext data in response to a success of verification of the second sum of the plurality of ciphertexts; and

verify the second sum of noisy plaintext data from the aggregator of the seller by only in response to the second sum of noisy plaintext data matching the third sum of noisy plaintext data.

11. The aggregator of claim 10 , the processor being further configured to:

reject the second sum of the plurality of ciphertexts in response to a failure of verification of the second sum of the plurality of ciphertexts indicating that at least one ciphertext in the second plurality of ciphertexts or at least one signature in the second plurality of signatures is invalid; and

reject the second sum of noisy plaintext data in response to the second sum of noisy plaintext data not matching the third sum of noisy plaintext data.

12. The aggregator of claim 7 wherein the plurality of clients do not trust the aggregator and the aggregator is incapable of decrypting any individual ciphertext in the plurality of ciphertexts.

13. A method for operating an aggregator in an electronic commerce system, the method comprising:

receiving, with a network interface in the aggregator, a plurality of ciphertexts and a plurality of signatures transmitted from a plurality of clients, each ciphertext encrypting noisy plaintext data of a category of information for a user that purchased a product, and each signature corresponding to noisy plaintext data that are encrypted in each ciphertext in the plurality of ciphertexts;

generating, with a processor in the aggregator, a sum of the plurality of ciphertexts;

generating, with the processor in the aggregator, a first sum of the plurality of signatures;

decrypting, with the processor in the aggregator, the sum of the plurality of ciphertexts in a private stream aggregation (PSA) process based on homomorphic decryption data stored in a memory of the aggregator to generate a first sum of noisy plaintext data;

verifying, with the processor in the aggregator, the first sum of noisy plaintext data with a homomorphic signature system based on the first sum of the plurality of signatures and homomorphic verification data stored in the memory of the aggregator; and

identifying, with the processor in the aggregator, aggregate statistical information transmitted from the plurality of clients based on the first sum of noisy plaintext data while preserving differential privacy of the plurality of clients.

14. The method of claim 13 further comprising:

rejecting, with the processor in the aggregator, the first sum of noisy plaintext data in response to a failure of verification of the first sum of noisy plaintext data indicating that at least one ciphertext in the plurality of ciphertexts or at least one signature in the plurality of signatures is invalid.

15. The method of claim 13 wherein the homomorphic verification data stored in the memory further include a plurality of public keys corresponding to the plurality of clients.

16. The method of claim 13 further comprising:

receiving, with the network interface in the aggregator, a second sum of noisy plaintext data from another aggregator of a seller;

receiving, with the network interface in the aggregator, a second sum of signatures corresponding to the second sum of noisy plaintext data from the other aggregator of the seller; and

verifying, with the processor in the aggregator, the second sum of noisy plaintext data with the homomorphic signature system based on the second sum of the plurality of signatures and the homomorphic verification data stored in the memory of the aggregator.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 31, 2019
From: BECKER, DANIELA; GUAJARDO MERCHAN, JORGE
To: ROBERT BOSCH GMBH
Reel/Frame 048212/0676 →
Continuity (2)
Provisional Application 62529232 · Jul 6, 2017
Related Publication 20190013950A1 · Jan 10, 2019