-
Notifications
You must be signed in to change notification settings - Fork 81
Description
Request for Mozilla Position on an Emerging Web Specification
- Specification Title: User Agent Client Hints
- Specification or proposal URL: https://tools.ietf.org/html/draft-west-ua-client-hints-00
- Mozillians who can provide input: @martinthomson , @annevk
Other information
The User Agent header that is being sent today on every request provides an excellent source of entropy that can be used to passively fingerprint users. It would be great if browsers could stop sending that information by default to all servers, regardless of whether those servers need it or not.
The User Agent Client Hint proposal is destined to replace the User Agent header, to achieve the following:
- Send significantly less information by default (only the browser brand and major version).
- Split the current entropy-laden string into several separate hints/attributes, enabling servers to request some information (e.g. minor version number), without being exposed to other information (e.g. CPU architecture).
- Enable 1P servers to opt-in to receive that information as HTTP request headers, as well as in a JS API, while giving 3P servers access to that information only if delegated from the 1P.
The above will enable browsers to keep track of servers that collect that information, and take actions to protect users' privacy in cases where that collection is likely abusing it.
Another interesting characteristic of reseting access to the UA string is that it can allow browsers to apply GREASE to the new values, in order to prevent the negative implications of UA sniffing seen on the web today.