Google逐步淘汰Chrome中的用户代理字符串

谷歌今天宣布了计划,逐步淘汰其网络浏览器Chrome中用户代理字符串的使用。

对于不熟悉该术语的读者,用户代理(UA)字符串是现代Web以及浏览器如何工作的重要组成部分。

UA字符串是浏览器启动连接时发送到网站的一段文本。UA字符串包含有关浏览器类型,呈现引擎和操作系统的详细信息。例如,Windows 10上用于Firefox的UA字符串如下所示:

Mozilla / 5.0(Windows NT 10.0; Win64; x64; rv:71.0)Gecko / 20100101 Firefox / 72.0

UA字符串是在90年代作为Netscape浏览器的一部分开发的,并且从那时起一直在使用。数十年来,网站一直使用UA字符串根据访问者的技术规范来微调功能。

但是现在,谷歌表示,这种曾经有用的机制已经成为各个方面不断出现问题的根源。

首先,在线广告客户已将UA字符串用作跟踪和识别网站访问者的方式。

“除了这些隐私问题之外,用户代理嗅探是兼容性问题的一个重要来源,尤其是对于少数族裔浏览器而言,导致浏览器自发地(通常是或位于特定站点)和站点(包括Google属性)被破坏。某些浏览器是没有充分理由的。” 使用Chrome浏览器的Google工程师Yoav Weiss说。

为了解决这些问题,谷歌表示,计划通过冻结整个标准来逐步淘汰UA字符串在Chrome中的重要性。

计划

Google的计划是停止使用新字符串(Chrome与网站共享的UA字符串文本)更新Chrome的UA组件。

长期计划是将所有Chrome UA字符串统一为通用值,以不泄露太多有关用户的信息。

这意味着在新平台上发布的新Chrome浏览器(例如,新的智能手机型号或新的OS版本)将使用通用的UA字符串,而不是针对该特定平台定制的字符串。

例如,将来,网站将无法判断使用Chrome的访问者是否正在Windows 7或Windows 11上运行Chrome,或者Chrome移动用户是否在使用Samsung Galaxy手机或Pixel 9手机。

网站将能够告诉用户用户正在运行Chrome,以及他们是否在台式机或移动设备上运行,仅此而已。

出于遗留目的,现有的Chrome UA字符串将继续起作用,因此它们不会破坏网络上运行的现有技术和脚本。

这是Google当前针对UA字符串弃用处理的计划:

Chrome 81(2020年3月中旬)-Google计划在Chrome控制台中为读取UA字符串的网页显示警告,以便开发人员可以调整其网站代码。

Chrome 83(2020年6月上旬)-Google将冻结UA字符串中的Chrome浏览器版本,并统一操作系统版本

Chrome 85(2020年9月中旬)-Google将统一UA桌面操作系统字符串,作为桌面浏览器的通用值。Google还将统一使用移动操作系统/设备字符串作为通用值。

再见,UA弦!您好,客户提示!

UA字符串机制的弃用是Google改善网络隐私的推动力的一部分,但又不破坏在线广告,而在线广告是当今大多数免费网站的命脉。

Chrome中的UA字符串将被称为“ 客户端提示”的新机制取代。客户端提示是一种机制,通过该机制,网站可以请求有关用户的信息,但是,如官方标准所读取的那样,该机制不具有“古老的包and和古老的“ User-Agent”标头暴露的被动指纹表面”。

我为此感到兴奋。UA字符串是一团糟,有些可识别,通过将信息移至仅HTTPS的客户端提示(例如https://t.co/ExJkky8k5W),可以更好,更明确地服务于合法用例。https://t.co/cqeawdL4KX

-迈克·韦斯特(@mikewest)2020年1月14日

去年8月宣布的Google 隐私沙箱项目的一部分已开发了Client Hints机制。

隐私沙盒技术堆栈旨在为网站和广告客户提供一种查询浏览器以获取用户详细信息的方式,使浏览器不会暴露太多有关用户的信息。

通过“隐私沙箱”,浏览器将共享有关用户的足够信息,以便广告商可以将用户分为一般组,而不必创建详细的个人资料。

Google为在Chrome中实现“隐私沙箱”而采取的第一步就是为此而弃用UA字符串,这是Google去年夏天承诺的。

苹果(Safari),微软(Edge)和Mozilla(Firefox)也表示支持Google冻结和逐步淘汰用户代理字符串的提议,但在撰写本文时尚未宣布详细计划。