Hi all,
We're working on implementing the client-side infrastructure for a private, secure aggregation mechanism (confusingly currently named the "aggregation service"), as described in
this explainer. We plan to use this mechanism for multiple proposed web APIs, the first of which will be the
Aggregate Attribution Reporting API (previously known as the Aggregate Conversion Measurement API).
To avoid duplication, joint functionality for these different proposed APIs such as constructing aggregatable reports, including generation of secret shares, fetching helper server public keys and encryption will be implemented in this shared client-side infrastructure.
This code was originally planned for //content/browser, but it appears to satisfy the requirements of a service (i.e., functionally related code that could logically run in an isolated process). However, note that we do not currently plan to run it in a different process. As this code is solely used to implement certain web APIs, we felt that //content/services/aggregation-service was likely a more appropriate place than //services//aggregation-service, but we'd appreciate your feedback on the best place for this code.
Thanks,
Alex