Hi James,

We are committed to achieving the purpose of the Privacy Sandbox commitments accepted by the CMA <https://blog.google/around-the-globe/google-europe/path-forward-privacy-sandbox/> in February 2022. We encourage feedback on how to better achieve that purpose through our technical proposals, and we will report publicly on feedback we receive as set out in the commitments. We are in constant dialogue with the CMA on these issues, and members of the web ecosystem are also welcome to discuss these issues with the CMA. We therefore hope that everyone will understand when we decline to participate in public discussions on legal or internal aspects of compliance with the commitments, or to detail our direct exchanges with the CMA.

thanks,
Mike

On 3/17/22 10:53 AM, 'James Rosewell' via blink-dev wrote:

Google and CMA reached an agreement on 4th February 2022 concerning Privacy Sandbox and Topics. The agreement requires Google to train staff in Annex 3 <https://assets.publishing.service.gov.uk/media/62052c6a8fa8f510a204374a/100222_Appendix_1A_Google_s_final_commitments.pdf>, and paragraph 4.119 <https://assets.publishing.service.gov.uk/media/62052c52e90e077f7881c975/Google_Sandbox_.pdf> states, /“Google has committed to instruct its staff and agents not to make claims to other market players that contradict the commitments, and to provide training to its relevant staff and agents to ensure that they are aware of the requirements of the Final Commitments”/.

Paragraph 21 of the agreement states /“During the standstill period, the CMA may notify Google that competition law concerns remain such that the Purpose of the Commitments will not be achieved. Google will work with the CMA without delay to seek to resolve concerns raised and address comments made by the CMA with a view to achieving the Purpose of the Commitments. Google will inform the CMA of how it has responded to those comments”/.

The standstill period is defined in the agreement as is User-Agent reduction.

Will Google representatives confirm they have approval from the CMA to progress this proposal? If not then please can they confirm that the proposal is now delayed until such approval is provided?

On Tuesday, 14 January 2020 at 11:22:00 UTC yo...@yoav.ws wrote:

    Contact emails

    yoav...@chromium.org, aaro...@chromium.org


    Summary

    We want to freeze and unify(but not remove) the User Agent string
    in HTTP requests as well as in `navigator.userAgent`


    Motivation

    The User-Agent string is an abundant source of passive
    fingerprinting information about our users. It contains many
    details about the user’s browser and device as well as many lies
    ("Mozilla/5.0", anyone?) that were or are needed for compatibility
    purposes, as servers grew reliant on bad User Agent sniffing.


    On top of those privacy issues, User-Agent sniffing is an abundant
    source of compatibility issues, in particular for minority
    browsers, resulting in browsers lying about themselves (generally
    
<https://www.zdnet.com/article/vivaldi-to-change-user-agent-string-to-chrome-due-to-unfair-blocking/>or
    to specific sites
    
<https://github.com/mozilla/webcompat-addon/blob/master/src/injections/js/bug1472075-bankofamerica.com-ua-change.js>),
    and sites (including Google properties) being broken
    
<https://www.onmsft.com/news/google-has-apparently-blocked-its-stadia-cloud-gaming-service-on-the-chromium-based-microsoft-edge>in
    some browsers for no good reason.


    The above abuse makes it desirable to freeze the UA string and
    replace it with a better mechanism. There have been past attempts
    at UA string freezing from the Safari team, but without an
    alternative way to perform UA based content-negotiation, they had
    to be partially reverted.

    The User Agent Client Hints
    <https://wicg.github.io/ua-client-hints/>(UA-CH) feature provides
    an alternate source for the information the User-Agent string
    provides, both in its request header form as well as its JS API one.

    Its main advantages are:

     *

        It provides the required information only when the server
        requests it, over secure connections, making any
        fingerprinting that relies on it be active fingerprinting,
        which enables such use to be audited, as well as acted-upon by
        the browser (e.g. in a future implementation of the Privacy
        Budget <https://github.com/bslassey/privacy-budget>).

     *

        It provides the information in small increments, so servers
        are only exposed to the information they need and request,
        rather than being exposed to the full gamut of the UA string
        even if they are just trying to figure out one detail about
        the browser. (e.g. brand and major version)

     *

        Since it provides the information via dedicated fields, it
        enables better ergonomics and makes it less likely for servers
        to get it wrong and cause compatibility issues.

     *

        And finally, starting fresh will enable us to drop a lot of
        the legacy baggage that the UA string carries (“Mozilla/5.0”,
        “like Gecko”, “like KHTML”, etc) going forward.


    Once UA-CH ships
    
<https://groups.google.com/a/chromium.org/d/msg/blink-dev/A4wxFpvqUfA/g7iccl9ICgAJ>as
    an alternative means for browser-specific content adaptation, we
    would like to freeze the User-Agent string.

    We propose to deprecate at M81 (starting to emit console warnings
    in pages that read that string in JS), freeze its version
    information at M83, and unify strings of different devices at M85.
    See detailed freezing plan below.

    This timeline provides 3 months for developers to move to the new
    mechanism for their future browser and OS version needs, and 6
    months for more sophisticated OS or device specific targeting.


    Freezing plan

    Different parts of the UA string have different compatibility
    implications.

    Some parts of it, such as the browser version and the OS version,
    can be frozen without any backwards compatibility implications.
    Values that worked in the past will continue to work in the future.

    Other parts, such as the model (for mobile devices) and the OS
    platform, can have implications on sites that tailor their UI to
    the underlying OS or that target a very specific model in their
    layout. Such sites will need to migrate to use UA-CH.

    As such we are planning to freeze the parts that are amenable to
    freezing fairly early, and gradually unify the rest.

    *
    *

    Milestone

        

    Stable date

        

    Action

    M81

        

    Mid March ‘20

        

    Deprecate access to `navigator.userAgent`

    M83

        

    Early June ‘20

        

    Freeze browser version and unify OS versions

    M85

        

    Mid September ‘20

        

    Unify desktop OS string as a common value for desktop browsers.

    Unify mobile OS/device strings as a similarly common value for
    those at M85 (*)

    *
    *

    (*) For the mobile value, we may split it further based on common
    device dimensions, as a one-time exercise, to reduce the
    compatibility risk of unification.



    Interoperability and Compatibility Risk

    The compatibility risk varies at different stages.

    For the freezing planned for M83, the compatibility risk is low.
    Existing UA sniffing code will continue to work as expected. It is
    only future UA sniffing code that will need to change and use the
    UA client hints instead.

    For the unification planned for M85, the compatibility risk is
    medium. Some sites can modify their responses based on the OS and
    device model, and those sites will have to change their UA
    sniffing code to use UA-CH. We expect such sites to be well
    maintained (otherwise, how can they keep up with OS UI and device
    model changes?). Therefore, having 4 releases to modify their code
    seems sufficient.


    In the long term, we expect this change to improve compatibility,
    as UA sniffing based on UA-CH is bound to be more reliable than
    the current status quo.


    As for interoperability, we have other vendors on board with UA
    freezing, but not necessarily with the UA Client Hints mechanism,
    that is supposed to replace it. That can create a tricky
    situation, where developers would need to rely on the User-Agent
    string for some browsers and on UA-CH for others.


    Edge: Public support
    <https://twitter.com/_scottlow/status/1206831008261132289>

    Firefox: Public support
    
<https://github.com/mozilla/standards-positions/issues/202#issuecomment-558294095>for
    freezing the UA string - “freezing the User Agent string without
    any client hints—seems worth-prototyping”

    Safari: Shipped to some extent. Safari has attempted to completely
    freeze
    <https://twitter.com/rmondello/status/943545865204989953>the UA
    string in the past, without providing an alternative mechanism.
    That got a lot of pushback, which resulted in somewhat reverting
    that decision. Nowadays, their UA string seems frozen, other than
    updates to the OS version and the browser major version.



    Alternative implementation suggestion for web developers

    For many (most?) uses of UA sniffing today, a better tool for the
    job would be to use feature detection. Where feature detection
    fails developers, UA Client Hints
    <https://wicg.github.io/ua-client-hints/>are the right path forward.


    Potential deployment hurdles compared to status quo:

     *

        Third party services that rely on the UA string would need to
        convince the sites that include them to delegate that
        information to them using Feature Policy.

     *

        The opt-in based mechanism of Client Hints currently suffers
        from the fact that on the very-first view, the browser have
        not yet received the opt-in. That means that requiring
        specific UA information (e.g. device model, platform) on the
        very-first navigation request may incur a delay. We are
        exploring options to enable the opt-in to happen further down
        the stack to avoid that delay.


    Usage information from UseCounter
    
<https://code.google.com/p/chromium/codesearch#chromium/src/third_party/WebKit/Source/core/page/UseCounter.h&sq=package:chromium&type=cs&q=file:UseCounter.h%20Feature&l=39>

    If we were going to remove the User-Agent string outright, the
    answer to that would’ve been “a lot!!!!111”.

    Given that we are planning to freeze it, we expect the “removal”
    to be mostly backwards compatible, barring cases of specific OS or
    device adaptation.

    Client-side UA sniffing use counters
    <https://www.chromestatus.com/metrics/feature/timeline/popularity/2663>show
    it’s being used by ~90% of sites. But again, since we’re talking
    about freezing, it should not break most uses.


    Entry on the feature dashboard <https://www.chromestatus.com/>

    https://www.chromestatus.com/feature/5704553745874944
    <https://www.chromestatus.com/feature/5704553745874944>


--
You received this message because you are subscribed to the Google Groups "blink-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscr...@chromium.org. To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/6e72d610-9978-4d7a-862a-5830edbf6b81n%40chromium.org <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/6e72d610-9978-4d7a-862a-5830edbf6b81n%40chromium.org?utm_medium=email&utm_source=footer>.

--
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to blink-dev+unsubscr...@chromium.org.
To view this discussion on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/8c74b135-f71c-bdcc-619f-9e678ebbd98d%40chromium.org.

Reply via email to