DescriptionMulti-dimensional Rappor Implementation
This implements support for Rappor metrics which contain
multiple fields that support correlation analysis.
Example:
scoped_ptr<Sample> sample = rappor_service->CreateSample(COARSE_RAPPOR_TYPE);
sample->SetStringField("Domain", "google.com");
sample->SetFlagsField("Flags", 0x10, 8 /* # of bits */);
rappor_service->RecordSampleObj("MyMetric", sample.Pass());
This change also removes metric_name from the personalization string for the PRR. This means that two different metrics which report the same value will use the same PRR, which will improve privacy when multiple metrics report the same value.
BUG=451647
Committed: https://crrev.com/feb4e55d126e711b0a5e9dd321371a4923768346
Cr-Commit-Position: refs/heads/master@{#327207}
Patch Set 1 #
Total comments: 29
Patch Set 2 : Address comments #Patch Set 3 : Make flags size part of API #Patch Set 4 : Add comments #Patch Set 5 : Exporting and Test #
Total comments: 12
Patch Set 6 : Sampler test #
Total comments: 21
Patch Set 7 : Address comments #
Total comments: 18
Patch Set 8 : Address Comments #Patch Set 9 : Fix test #Patch Set 10 : Fix GN Build #Patch Set 11 : Fix android build #Patch Set 12 : Use 64-bit shift #
Messages
Total messages: 34 (10 generated)
|