最近关于谷歌Chrome浏览器追踪能力的披露引发了新一轮辩论,Chrome浏览器使用一种称为数字指纹识别的复杂技术,在iPhone或Android设备上创建秘密数字ID来识别用户。

这种方法隐形运行,即使用户阻止Cookie或切换到无痕浏览模式,也会持续存在。但这种技术究竟是什么,它如何如此详细地运作?本次黑鸟展示一下Chrome中浏览器指纹识别的机制。

浏览器指纹识别核心机制

浏览器指纹识别是一种追踪方法,它从用户的Web浏览器和设备中收集大量数据点或“signal”来组装成一个独特标识符。与传统Cookie不同,后者可以被删除或阻止,但指纹源于浏览器设置的固有特征,使其更难规避。

在Chrome浏览器中,这个过程通常从嵌入网站的少量JavaScript片段开始,在初始连接期间自动收集信息。然后,这些数据被传输到网站服务器,在那里使用数学算法进行Hash计算或处理,以创建独特的配置文件。

指纹识别的力量在于其高熵性质:收集的数据点越多,标识符就越独特。例如,虽然数百万用户可能在Android手机上使用Chrome,但结合具体细节如确切屏幕分辨率、安装字体,甚至设备如何渲染图形,就可以将用户与其他人区分开来。

研究表明,使用足够多的数据点,指纹可以以近乎完美的准确率识别用户,通常在用户不知情的情况下持续数月。

Chrome浏览器指纹识别详细数据点

Chrome的指纹识别实现特别有效,因为其广泛使用和可定制功能,无意中为追踪者提供了丰富数据。以下是关键技术和涉及的具体数据点的分解:

1. 基本浏览器和设备属性

UserAgent字符串:

这是基础数据点之一,揭示浏览器类型(例如Chrome)、版本、操作系统(例如Android 15),有时还包括设备型号。

屏幕和显示细节:

指标如屏幕分辨率(例如1080x1920)、颜色深度、像素比率和方向有助于定位设备类型。在手机上,这可以揭示用户是否在使用高端旗舰机或预算型号。

安装字体和插件:

Chrome扫描可用字体(例如通过CSS或Canvas API检查“DejaVu Sans”)和扩展。即使用户有常见插件如广告拦截器,它们的组合也往往独特。

语言和时区设置:

浏览器首选语言、键盘布局和时区为指纹添加了文化和地理层。

2. 高级渲染技术

Canvas指纹技术基于浏览器对Canvas元素的渲染差异来创建指纹。HTML5 Canvas是一个用于绘制2D图形的API,网站可以通过JavaScript在画布上绘制文本、形状和渐变等元素,然后提取渲染结果的像素数据。这些像素数据因设备硬件(如GPU)、操作系统、浏览器版本和字体渲染引擎的细微差异而异,最终通过哈希算法生成一个固定长度的字符串,作为用户的唯一标识。

与其他指纹方法(如用户代理字符串或字体列表)不同,Canvas指纹更具高熵特性:即使在相同浏览器和OS下,不同设备的渲染输出也可能略有不同,导致指纹的唯一性高达99%以上。它特别适用于移动设备和跨会话追踪,因为指纹不易被清除,且在无痕模式下仍有效。

音频指纹识别:

使用Web Audio API(AudioContext),网站通过Chrome发送低频信号并测量处理输出。这揭示音频硬件细节,而无需录音或麦克风访问,添加参数如振荡器行为或增益节点。

WebGL指纹识别:

Chrome对WebGL的支持暴露显卡细节,包括供应商、渲染器和扩展。脚本可以渲染3D场景并散列输出,捕捉阴影或纹理处理的细微差异。

3. 硬件和性能指标

硬件并发和内存:

关于CPU核心、可用RAM和设备内存的数据(通过navigator.hardwareConcurrency和navigator.deviceMemory)。

传感器数据(移动端):

在手机上,Chrome可通过API间接访问加速计或陀螺仪数据。

网络相关信号:

标头如Accept-Language或连接类型(例如蜂窝与Wi-Fi)与IP地址结合可用于增强追踪。

上述技术通常由广告技术公司通过脚本如FingerprintJS部署,后者无缝集成到网站中,谷歌搜索的广告不例外。

在手机上的Chrome中,移动环境放大了这一点,较小的设备意味着指纹更独特,允许跨应用和网站追踪。

谷歌的立场变化:左右脑互搏

谷歌此前谴责过指纹识别技术,认为它违背用户意愿,还会启动比搜索历史更具暴露性的隐形追踪。

如今谷歌态度转变,允许该技术在智能电视、游戏机等设备上使用,引发外界对其立场一致性的质疑。相关报道显示,谷歌曾在官方博客中明确表示指纹识别违背用户选择、不可取,核心原因是用户无法像清除 Cookie 那样清除指纹信息,难以掌控个人信息的收集方式。现在谷歌彻底逆转立场,重启这项技术并应用于电视、游戏机等智能设备。

谷歌重启指纹识别技术的原因,相关文章分析可能与它在浏览器市场的主导地位有关。Chrome 在 PC 端和移动端均占优势,与 Safari 不相上下,但谷歌缺乏 Safari 那样的内置防护措施,指纹识别由此成为行业竞争的焦点领域。重启该技术或许是谷歌想平衡广告追踪需求与隐私承诺,不过这一行为被认为存在自相矛盾。

指纹识别有一定实用价值,比如银行可通过它检测异常操作、防范欺诈。但对普通用户而言,它会削弱网络匿名性,使得跨网站用户画像分析成为可能,进而可能影响广告推送、商品定价和内容访问权限。

解决方案

1、使用扩展如NoScript选择性地禁用JavaScript。

2、切换到Tor、Brave 等隐私浏览器,其采用随机化或拦截等防护手段或启用Firefox的privacy.resistFingerprinting。

3、Chrome的User-Agent Reduction(用户代理减少)计划,这是谷歌为提升用户隐私而推出的官方举措。该计划旨在逐步简化并标准化浏览器User-Agent(UA)字符串,减少其中暴露的详细设备、操作系统和浏览器版本信息,从而降低浏览器指纹识别的风险(如在广告追踪或隐私泄露中的滥用)。这个计划从2022年开始分阶段 rollout,目前已基本完成,但用户仍需定期更新Chrome以确保获取最新的隐私保护优化。

4、禁用 iPhone 指纹识别方法:

声明:本文来自黑鸟,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。