Technologies for collecting advertising statistics in a privacy sensitive manner
First Claim
1. A system for collecting advertising statistics, the system comprising a first client device comprising an ad publisher and a secure processing environment, the secure processing environment comprising a context information management circuitry (CIMC) that is operable to:
- compute, within said secure processing environment, ad statistics for each advertisement of a plurality of advertisements that is delivered to said ad publisher for display on said first client device;
collect each of said ad statistics into a statistics collection;
correlate the statistics collection to a statistics collection counter;
encrypt, within said secure processing environment, said of ad statistics using additive homomorphic encryption, so as to produce encrypted ad statistics;
increment said statistics collection counter such that it has an incremented value; and
compare the incremented value to a threshold statistics collection value;
wherein if said incremented value is less than said threshold statistics collection value, said CIMC is further operable to;
authenticate a second client device;
upon authenticating the second client device, establish a secure communication link between said first client device and said second client device;
transmit said encrypted ad statistics and said incremented counter value to said second client device via said secure communication link;
compute, within said secure processing environment, ad statistics for each advertisement of a plurality of advertisements that is delivered to said ad publisher for display on said second client device;
collect each of said ad statistics into said statistics collection;
encrypt, within said secure processing environment, said ad statistics using additive homomorphic encryption, so as to produce encrypted ad statistics;
increment said previously incremented statistics collection counter such that it has a further incremented value; and
compare said further incremented value to the threshold statistics collection value; and
if said incremented value is greater than or equal to said threshold statistics collection value, said CIMC is further operable to transmit said encrypted ad statistics to an ad network.
1 Assignment
0 Petitions
Accused Products
Abstract
Generally, this disclosure provides technologies for collecting ad statistics in a privacy sensitive manner. In some embodiments the technology includes a system which includes a plurality of client devices, each hosting a context information management (CIMM) module in a secure processing environment. Each CIMM may be operable to select ads for display and calculate statistics for each of the selected ads. The CIMMs may generate a vector representative of those statistics, and may encrypt that vector using additive homomorphic encryption. The encrypted vector may be associated with a statistics collection counter, which may be incremented each time an encrypted vector is calculated. Each CIMM may compare the incremented counter value to a threshold, and may distribute the encrypted vector to another CIMM for further statistical tabulation if the incremented value is less than the threshold. In this way, the technologies described may ensure that a minimum statistical sample size is collected prior to the transmission of ad statistics to an ad network or advertiser, potentially maintaining or protecting user privacy.
32 Citations
24 Claims
-
1. A system for collecting advertising statistics, the system comprising a first client device comprising an ad publisher and a secure processing environment, the secure processing environment comprising a context information management circuitry (CIMC) that is operable to:
-
compute, within said secure processing environment, ad statistics for each advertisement of a plurality of advertisements that is delivered to said ad publisher for display on said first client device; collect each of said ad statistics into a statistics collection; correlate the statistics collection to a statistics collection counter; encrypt, within said secure processing environment, said of ad statistics using additive homomorphic encryption, so as to produce encrypted ad statistics; increment said statistics collection counter such that it has an incremented value; and compare the incremented value to a threshold statistics collection value; wherein if said incremented value is less than said threshold statistics collection value, said CIMC is further operable to; authenticate a second client device; upon authenticating the second client device, establish a secure communication link between said first client device and said second client device; transmit said encrypted ad statistics and said incremented counter value to said second client device via said secure communication link; compute, within said secure processing environment, ad statistics for each advertisement of a plurality of advertisements that is delivered to said ad publisher for display on said second client device; collect each of said ad statistics into said statistics collection; encrypt, within said secure processing environment, said ad statistics using additive homomorphic encryption, so as to produce encrypted ad statistics; increment said previously incremented statistics collection counter such that it has a further incremented value; and compare said further incremented value to the threshold statistics collection value; and if said incremented value is greater than or equal to said threshold statistics collection value, said CIMC is further operable to transmit said encrypted ad statistics to an ad network. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method for collecting ad statistics with a first client device comprising an ad publisher and a secure processing environment, comprising:
-
receiving a plurality of advertisements within said secure processing environment; within said secure processing environment, computing ad statistics for each advertisement that is delivered to said ad publisher for display on said first client device; collecting each of said ad statistics into a statistics collection; correlating the statistics collection to a statistics collection counter; encrypting, within said secure processing environment, said ad statistics using additive homomorphic encryption, thereby producing encrypted ad statistics; incrementing said statistics collection counter such that it has an incremented value; comparing the incremented value to a threshold statistics collection value; when said incremented value is determined to be less than said threshold statistics collection value; authenticating a second client device; upon authenticating the second client device, establishing a secure communication link between said first client device and said second client device; transmitting said first encrypted ad statistics and said incremented counter value to said second client device via said secure communication link; computing within said secure processing environment, ad statistics for each advertisement of a plurality of advertisements that is delivered to said ad publisher for display on said second client device; collecting each of said ad statistics into said statistics collection; encrypting, within said secure processing environment, said ad statistics using additive homomorphic encryption, so as to produce encrypted ad statistics; incrementing said previously incremented statistics collection counter such that it has a further incremented value; and comparing said further incremented value to the threshold statistics collection value; and transmitting said encrypted ad statistics to an ad network when said incremented value is greater than or equal to said threshold statistics collection value. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A computer readable storage medium having instructions stored thereon which when executed by a processor result in the following operations for collecting ad statistics with a first client device comprising an ad publisher and a secure processing environment:
-
receiving a plurality of advertisements within said secure processing environment; within said secure processing environment, computing ad statistics for each advertisement that is delivered to said ad publisher for display on said first client device; collecting each of said ad statistics into a statistics collection; correlating the statistics collection to a statistics collection counter; encrypting, within said secure processing environment, said ad statistics using additive homomorphic encryption, thereby producing encrypted ad statistics; incrementing said statistics collection counter such that it has an incremented value; comparing the incremented value to a threshold statistics collection value; when said incremented value is determined to be less than said threshold statistics collection value; authenticating a second client device; upon authenticating the second client device, establishing a secure communication link between said first client device and said second client device; transmitting said first encrypted ad statistics and said incremented counter value to said second client device via said secure communication link; computing within said secure processing environment, ad statistics for each advertisement of a plurality of advertisements that is delivered to said ad publisher for display on said second client device; collecting each of said ad statistics into said statistics collection; encrypting, within said secure processing environment, said ad statistics using additive homomorphic encryption, so as to produce encrypted ad statistics; incrementing said previously incremented statistics collection counter such that it has a further incremented value; and comparing said further incremented value to the threshold statistics collection value; and transmitting said encrypted ad statistics to an ad network when said incremented value is greater than or equal to said threshold statistics collection value. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24)
-
Specification