#1009: Review for Protected Audiences Bidding and Auction Services API
Discussions
2024-11-04
Jeffrey: I posted a comment... said "explainer is bad"... It's possible they think they are fixing some of the issues. I think it's in their court.
discussion on how we should treat this...
Peter: let's wait for feedback...
OpenedOct 25, 2024
Hello TAG,
I’m requesting a TAG review of the Bidding and Auction Services API for Protected Audiences. Protected Audiences was reviewed here as #723. The Bidding and Auction Services API extends the Protected Audiences API by allowing the computation to take place on cloud servers in a Trusted Execution Environment, instead of the isolated worklet environment used in the on-device approach we have launched so far We wanted to bring to your attention the way that this API allows for real-time trusted computation on private data in a cloud server as we feel it provides a significant capability that may be beneficial to other APIs going forward. Note that this is not the first API to leverage computation on private data in a TEE, Private Aggregation already does so. This is the first API in the Privacy Sandbox to include TEE computation in real-time however.
Further details:
We'd prefer the TAG provide feedback as (please delete all but the desired option):
🐛 open issues in our GitHub repo for each point of feedback
Security/Privacy Questionnaire
This section contains answers to the W3C TAG Security and Privacy Questionnaire.
What information might this feature expose to Web sites or other parties, and for what purposes is that exposure necessary?
Protected Audience’s Bidding and Auction Service feature performs the auction using a server running in a Trusted Execution Environment (TEE) running code that does not expose information to Web sites or other parties beyond that of the Protected Audience API executing purely on-device. To start the on-server auction, Web sites use the Bidding and Auction Services API to get a request blob that is encrypted and padded to prevent exposing interest group information from other sites to the site requesting the blob. Only servers running approved binaries in an appropriate TEE are given the decryption keys to decrypt the blob.
Do features in your specification expose the minimum amount of information necessary to enable their intended uses?
Yes, see above answer for ways information exposure is minimized.
How do the features in your specification deal with personal information, personally-identifiable information (PII), or information derived from them?
Protected Audiences should not deal with personal information, PII or information derived from them. Callers of the API may make choices (for example, which interest groups to add a browser to) based on this sort of information, so group membership is not exposed to sites, as in question 1.
How do the features in your specification deal with sensitive information?
Same answer as # 3.
Do the features in your specification introduce a new state for an origin that persists across browsing sessions?
No, only the existing state kept by Protected Audiences is kept.
Do the features in your specification expose information about the underlying platform to origins?
Protected Audience’s Bidding and Auction Service feature may expose information about which Coordinators are supported by this User Agent.
Does this specification allow an origin to send data to the underlying platform?
No
Do features in this specification allow an origin access to sensors on a user’s device
No
Do features in this specification enable new script execution/loading mechanisms?
Not in the browser; but scripts previously run in the browser can now be executed in TEEs.
Do features in this specification allow an origin to access other devices?
No
Do features in this specification allow an origin some measure of control over a user agent’s native UI?
No
What temporary identifiers do the features in this specification create or expose to the web?
None.
How does this specification distinguish between behavior in first-party and third-party contexts?
The Bidding and Auction Services feature of Protected Audience inherits the mechanisms from Protected Audiences, which defines various steps to control access to its APIs in third-party contexts. See the paragraph that starts with “The browser will only allow the” here.
How do the features in this specification work in the context of a browser’s Private Browsing or Incognito mode?
The Bidding and Auction Services feature of Protected Audience inherits its behavior from Protected Audiences, which uses an in-memory interest group store that is separate from the one used by the default browsing mode.
Does this specification have both "Security Considerations" and "Privacy Considerations" sections?
Yes.
Do features in your specification enable origins to downgrade default security protections?
No
How does your feature handle non-"fully active" documents? Actions are gated by “fully active” checks.
What should this questionnaire have asked?
N/A