w3ctag / design-reviews

W3C specs and API reviews
Creative Commons Zero v1.0 Universal
333 stars 56 forks source link

systemEntropy addition to PerformanceNavigationTiming #878

Open mwjacksonmsft opened 1 year ago

mwjacksonmsft commented 1 year ago

I'm requesting a TAG review of systemEntropy addition to PerformanceNavigationTiming.

This proposal adds a new ‘systemEntropy’ field to the PerformanceNavigationTiming struct enabling developers to discern if the page load occurs during a non-optimal performance state.

Further details:

You should also know that...

[please tell us anything you think is relevant to this review]

We'd prefer the TAG provide feedback as (please delete all but the desired option): 💬 leave review feedback as a comment in this issue and @-notify [mwjacksonmsft]

plinss commented 1 year ago

We haven't had a chance to dive into this thoroughly yet, but first impressions:

mwjacksonmsft commented 1 year ago

Thanks for the feedback.

plinss commented 1 year ago

Is the concern that a third-party script is included on siteA and siteB, that the script might be able to create a short-term identifier to track the user across the two sites?

Possibly, but also that a site may be able to fingerprint a user and tell it's the same user on multiple visits.

We also have concerns about other information leakage, for example there's work being done to hide usage of local cache. E.g. loading a resource from a cache but pretending that it's coming from the network (and adding an artificial delay), being able to measure the entropy may reveal this is happening.

Basically, we like to be sure people who understand these kinds of issues better have reviewed this.

mwjacksonmsft commented 11 months ago

My apologies for the delayed reply. I'm working with the WebPerfWG to ensure that this information is exposed in a way that conforms with the privacy principles outlined here: https://docs.google.com/presentation/d/19TOz4mXRsYt8tkqzH8io_BrYiZBXhqGyD646gJy-x6I/edit#slide=id.p

hadleybeeman commented 11 months ago

Thanks, @mwjacksonmsft — we'll wait to hear back from you then.

mwjacksonmsft commented 1 month ago

Hi Tag -

We've iterated on the design of this API in the WebPerfWG. The explainer, and Chrome status entry pages have all been updated. Updated details are captured in the explainer, but the high-level summary is that the field has been renamed to 'confidence', and noise via a randomized response algorithm has been introduced to reduce fingerprinting risks.

The explainer also gives an example of how a RUM provider might debias the aggregate data.