<div dir="ltr">Yes, we've internally discussed how this can increase precision in fingerprinting.<div><br></div><div>The result of these discussions resulted in mitigations that address this: <a href="https://github.com/oyiptong/compute-pressure#minimizing-information-exposure">https://github.com/oyiptong/compute-pressure#minimizing-information-exposure</a></div><div><br></div><div>The main thrusts are as follows:</div><div><ul><li>The UA can control how many bits of entropy by decided on how many thresholds are accepted from an observer request, effectively determining the number of "buckets" of information to expose</li><li>The values returned are "quantized" relative to the requested thresholds</li><li>The observer requests are rate-limited</li><li>The values returned are normalized within a known range</li><li>Per-core information is aggregated into a single value for both utilization and speed</li></ul><div>We are also applying some mitigations in our implementation, e.g. only allowing access to the API in visible pages, having a different update rate for visible tabs than for those that aren't visible, etc.</div></div><div>We can also discuss implementation details if you're interested.</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, May 5, 2021 at 12:13 PM Alex Christensen <<a href="mailto:achristensen@apple.com">achristensen@apple.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div style="overflow-wrap: break-word;">Has anyone discussed how this can increase the precision of fingerprinting?  It seems to reveal more information or more precise information about what else is going on on a user’s system.<br><div><br><blockquote type="cite"><div>On May 5, 2021, at 11:37 AM, Olivier Yiptong via webkit-dev <<a href="mailto:webkit-dev@lists.webkit.org" target="_blank">webkit-dev@lists.webkit.org</a>> wrote:</div><br><div><div dir="ltr">Hello WebKit devs,<div><br></div><div>We'd like to get WebKit's position on the Compute Pressure API.</div><div><br></div><div>Description:</div><div><br></div><div>We propose a new API that conveys the utilization of CPU resources on the user's device. This API targets applications that can trade off CPU resources for an improved user experience. For example, many applications can render video effects with varying degrees of sophistication. These applications aim to provide the best user experience, while avoiding driving the user's device in a high CPU utilization regime.<br><br>High CPU utilization is undesirable because it strongly degrades the user experience. Many smartphones, tablets and laptops become uncomfortably hot to the touch. The fans in laptops and desktops become so loud that they disrupt conversations or the users’ ability to focus. In many cases, a device under high CPU utilization appears to be unresponsive, as the operating system may fail to schedule the threads advancing the task that the user is waiting for.<br></div><div><br></div><div>Thanks!</div><div><br></div><div><ul style="box-sizing:border-box;padding-left:2em;margin-top:0px;margin-bottom:16px;color:rgb(36,41,46)"><li style="margin-left:0px;box-sizing:border-box"><font face="arial, sans-serif">Specification Title: Compute Pressure API</font></li><li style="margin-left:0px;box-sizing:border-box;margin-top:0.25em"><font face="arial, sans-serif">Specification URL: <a href="https://oyiptong.github.io/compute-pressure/" target="_blank">https://oyiptong.github.io/compute-pressure/</a></font></li><li style="margin-left:0px;box-sizing:border-box;margin-top:0.25em"><font face="arial, sans-serif">Explainger: <a href="https://github.com/oyiptong/compute-pressure/blob/main/README.md" target="_blank">https://github.com/oyiptong/compute-pressure/blob/main/README.md</a><br></font></li><li style="margin-left:0px;box-sizing:border-box;margin-top:0.25em"><font face="arial, sans-serif"><a href="http://ChromeStatus.com" target="_blank">ChromeStatus.com</a> entry: <a href="https://chromestatus.com/features/5597608644968448" target="_blank">https://chromestatus.com/features/5597608644968448</a></font></li><li style="margin-left:0px;box-sizing:border-box;margin-top:0.25em"><font face="arial, sans-serif">TAG design review request: <a href="https://github.com/w3ctag/design-reviews/issues/621" target="_blank">https://github.com/w3ctag/design-reviews/issues/621</a><br></font></li><li style="margin-left:0px;box-sizing:border-box;margin-top:0.25em"><font face="arial, sans-serif">Mozilla Request for Position: <a href="https://github.com/mozilla/standards-positions/issues/521" target="_blank">https://github.com/mozilla/standards-positions/issues/521</a></font></li></ul></div></div>
_______________________________________________<br>webkit-dev mailing list<br><a href="mailto:webkit-dev@lists.webkit.org" target="_blank">webkit-dev@lists.webkit.org</a><br><a href="https://lists.webkit.org/mailman/listinfo/webkit-dev" target="_blank">https://lists.webkit.org/mailman/listinfo/webkit-dev</a><br></div></blockquote></div><br></div></blockquote></div>