浏览器指纹是一种高级技术,用于在网上识别和跟踪用户。它通过远程收集和分析用户浏览器、设备和软件设置的属性来创建一个独特的身份或“指纹”。浏览器指纹很难防范,但有一些工具可以帮助减少其影响。
和cookies类似,浏览器指纹或设备指纹是一种技术,使网站和第三方可以远程识别和跟踪你的在线活动。
它通过结合许多关于你的浏览器、设备和软件配置的细节来创建一个独特的——或几乎独特的——标识符。
虽然你可以屏蔽和删除cookies,但浏览器指纹的操作是秘密进行的,而且更难防止。
VPN服务和隐私浏览模式无法防范浏览器指纹。然而,你可以使用一些限制指纹的浏览器扩展,或选择具有特定保护功能的浏览器。
我们关心你的在线隐私保护,即使这不仅仅涉及到VPN。这就是为什么我们制作了这篇指南,来帮助你解释到底什么是浏览器指纹,它如何工作,以及你如何保护自己。
浏览器指纹是如何工作的?
浏览器指纹通过收集你在使用网络时的浏览器、设备和软件设置的许多信息来工作。这些属性然后被结合起来创建一个“哈希值”,可以用来识别你。
每个单独的数据点可能本身并不能揭示太多信息,但几十个数据点的组合可以创建一个完全独特的指纹。这意味着网站、数据代理、广告商或执法机构可以识别你并描述你的在线活动。
2010年,当浏览器指纹技术首次开发时,它可以唯一地识别83.6%到94.2%的浏览器。类似地,2020年的研究发现,可以追踪67.6%到93.1%的用户。
你可能听说过cookies。它们是网站可以存储在你设备上的小文件,用来在你再次访问时识别你,或者跟踪你在不同网站上的活动。
虽然大多数浏览器都有内置功能来屏蔽或删除cookies,但浏览器指纹更难控制。你无法删除浏览器指纹,因为它不是存储在你的计算机上。
然而,当浏览器指纹所基于的信息发生变化时,指纹也会变化。这意味着更新你的浏览器或安装新的插件可能会改变你的指纹。
浏览器指纹也不完全是唯一的。不同用户可能会共享一个指纹,特别是在 手机上,因为用户不太可能自定义他们的设置。
尽管有这些限制,浏览器指纹仍然是识别和追踪网络用户的有效方法。
为什么使用浏览器指纹?
浏览器指纹的目的是更好地理解网站访问者,并在访问之间甚至在不同网站之间追踪他们。这种技术有积极和消极的用途。
浏览器指纹的积极用途通常涉及提高安全性:
- 添加身份验证: 网站可以识别你的常用浏览器,并用它来简化你的登录过程。例如,如果你使用不熟悉的设备,银行可能会向你提出更多的安全问题,以确保确实是你本人。
- 检测可疑活动: 浏览器指纹可以帮助识别机器人或欺诈用户。例如,它可以识别一个想要冒充多人的人,或者检测一个小屏幕分辨率,这表明某人在一台显示器上模拟多个设备。
- 禁止用户: 指纹识别可以用于禁止在赌博网站上违规的用户。指纹识别可以检测想要领取多个注册奖金的用户,或者假装是多个独立玩家的人。
浏览器指纹的消极用途包括:
- 定向广告: 广告商可以使用浏览器指纹根据你访问的网站建立你的兴趣档案。这些信息可以用来向你投放广告,或者出售给其他公司。
- 动态定价: 在线商店可能会向看起来更富有的客户收取更高的费用,例如拥有更昂贵的设备或居住在较富裕地区的客户。
- 数据收集: 浏览器指纹使得数据代理和广告商可以在用户屏蔽cookies、使用VPN或隐私浏览模式的情况下收集他们的信息。虽然不清楚这些数据是如何收集和交易的,但隐私和伦理风险是显而易见的。
如何检查你的浏览器指纹
你可以使用amiunique.org或其他类似工具在线检查你的浏览器指纹。点击按钮查看你的指纹,该工具会告诉你与其他用户相比你的指纹有多独特。
我们使用微软Edge、谷歌Chrome和Safari在Windows和macOS上进行了测试。我们还使用了一部安卓手机和一部iPhone。每种情况下,我们的指纹在该网站测试的超过240万个指纹中都是独特的。
AmIUnique会告诉你你的浏览器指纹有多独特。
这些工具将显示你的浏览器在它们检查的每个属性上揭示的信息,以及在所有已测试的指纹中有多独特。
共享较少的属性可以更容易地识别你。它们会被标记为红色。那些结果在很多人中共享的则不太显眼,标记为绿色。
在每种情况下,我们的用户代理(浏览器和操作系统版本)在AmIUnique的样本中都少于1%的共享率。在我们的 PC电脑上,我们安装了一些不常见的字体,因此我们的字体列表没有其他用户共享。
虽然看到某些信息被如此少的人共享有些令人惊讶,但浏览器指纹的力量在于你的所有信息组合起来很可能是几乎唯一的。即使单个信息被很多人共享。
浏览器指纹收集的数据类型
浏览器指纹收集的数据量可以有很大差异。一项研究收集了305个属性,而测试网站AmIUnique在我们的测试中使用了最多64个属性。
这些属性通常包括你的浏览器和操作系统类型及版本、屏幕分辨率、已安装的字体、浏览器扩展、权限等。
这些数据通过两种方式收集:
- HTTP头: 这些由浏览器发送,帮助目标服务器了解请求信息的设备。它们可能包括有关浏览器和操作系统的信息,或者浏览器可以接受的文件格式。
- JavaScript: JavaScript是一种在你的浏览器中运行指令的编程语言。它是网页的核心部分,用于动态更新内容、动画图像、检查你是否填写了表格等类似用途。它也可以用来发现设备和浏览器的更多信息。
以下是一些用于创建浏览器指纹的数据点、它们的重要性及其收集方式的分解:
数据类型 | 收集方式 | 重要性 |
---|---|---|
IP地址 | HTTP头 | 你的IP地址在网上识别你。使用VPN可以更改你的IP地址,更改VPN服务器也会更改指纹。 |
是否使用Tor浏览器 | 基于IP地址 | 很少有人使用Tor浏览器,所以这个数据点相当独特。然而,Tor会屏蔽许多其他指纹数据点。 |
用户代理字符串(浏览器和操作系统版本) | HTTP头 | 浏览器版本经常更改,因此此属性可以限制指纹的寿命。谷歌Chrome正在逐步淘汰用户代理字符串,以屏蔽其被用于跟踪用户。 |
浏览器接受的文件格式,包括压缩类型 | HTTP头 | 在我们的测试中,Chrome和Edge在这个数据点上只有14%的相似性。 |
用户的首选语言(例如英语) | HTTP头 | 尽管语言是广泛共享的,但头文件表达语言的方式可能是独特的。在我们的测试中,Firefox和Edge的相似性都少于1.5%。 |
是否启用cookies | JavaScript | 大多数用户接受cookies。禁用它们可能使你的指纹更具辨识度。 |
时区 | JavaScript | 对于不经常旅行的人来说,这大部分时间是稳定的。 |
显卡和音频卡属性,包括显卡型号 | JavaScript | 这些是硬件特性,不太可能改变。参见画布指纹、WebGL指纹和音频指纹。 |
字体列表 | JavaScript | 对于安装了额外字体的用户来说,这可能变得非常独特,尤其是如公司字体等不常见的字体。 |
浏览器版本、名称、制造商及可用属性 | JavaScript | 这些属性本身可能并不显著,但它们可以与其他数据点结合,创建更独特的指纹。 |
并发性和设备内存 | JavaScript | 这些是硬件特性,不太可能改变。并发性是处理器同时执行的指令数。 |
浏览器插件列表 | JavaScript | 这揭示了用户安装到浏览器的插件。Tor浏览器的制造商认为这是最大的隐私威胁。 |
是否使用广告拦截器 | JavaScript | JavaScript可以检测广告拦截行为。 |
屏幕尺寸、色 |
深 | JavaScript | 这些是硬件特性,不太可能改变。 |
| 是否存在加速计、陀螺仪、接近传感器、触摸输入 | JavaScript | 这些是硬件特性,不太可能改变。 |
| 硬件权限 | JavaScript | 这揭示了用户设置是否允许地理位置、加速计、相机、麦克风和存储的使用。 |
| 支持的音频和视频格式 | JavaScript | 这取决于浏览器。 |
| 电池电量、充电时间和放电时间 | JavaScript | 这些是硬件特性,除了电池电量外不太可能改变。 |
| 键盘布局 | JavaScript | 在指纹寿命期间,这不太可能改变。 |
| 浏览器界面大小和位置栏、菜单栏、个人栏、状态栏和工具栏的使用情况 | JavaScript | 这些是软件设置,但用户不太可能更改它们。 |
| 连接类型 | JavaScript | 在指纹寿命期间,这不太可能改变。 |
| 连接的媒体设备 | JavaScript | 这些是硬件特性,但如果用户更改连接的设备,指纹将会改变。 |
专家提示: 你可以通过禁用JavaScript屏蔽很多数据被收集,但许多网站在没有它的情况下无法正常工作。
浏览器指纹技术类型
有几种不同的技术用于创建指纹或其部分。每种技术都涉及不同类型的数据或不同的收集方法。
媒体设备指纹
顾名思义,这种技术使用连接的媒体设备列表来创建指纹。这包括内部设备(如声卡或显卡)和外部设备(如耳机)。
这种技术需要用户授权访问他们的相机和麦克风。
HTML5 Canvas指纹
Tor项目将canvas指纹描述为“浏览器面临的最大指纹威胁”,仅次于插件提供的信息。
我们在AmIUnique的测试中发现,在Chrome和Firefox中,只有0.21%的人共享我们的canvas指纹,在Edge中甚至低至0.02%。
Canvas指纹通过绘制一些文本,然后创建其外观的数学表示来工作。这会因为设备上的字体、系统颜色、显卡和图形驱动程序而产生细微差异。
这是AmIUnique生成的测想要像:
通常情况下,canvas指纹是在不被注意的情况下创建的,因此你不知道指纹识别正在进行。
这种技术之所以被称为canvas指纹,是因为它使用网页上的HTML canvas元素。
WebGL指纹
WebGL指纹与canvas指纹类似。它使用WebGL,这是一种在网页浏览器中绘制2D和3D对象的技术。
某些东西在你不知情的情况下被绘制,图像会因你的图形硬件而有所不同。指纹是从图像中计算出来的。
2022年,研究人员开发了一种称为DrawnApart的WebGL指纹技术。它计时图形处理单元(GPU)绘制某些东西的时间。结果不仅因GPU的制造和型号而异,还因制造差异而变化。这大大增加了浏览器指纹的准确性。
音频指纹
浏览器有一个名为WebAudio API的功能,可以用来在浏览器中创建和操作声音。音频指纹使用它来创建一个听不见的声音,并从中生成一个指纹。指纹因浏览器类型、浏览器版本和平台而异。
跨浏览器指纹
当指纹使用浏览器信息时,例如用户代理,每个浏览器都有自己的指纹。使用多个浏览器的用户会有多个指纹。
为了解决这个问题,网站可以创建仅基于用户设备硬件特性的指纹。这些特性是通过canvas指纹和音频指纹发现的,但也可以包括机器的特性,如键盘布局或触摸输入支持。
这些特性无论使用哪个浏览器都保持不变,而且不太可能改变。
2017年的研究发现,硬件特性使得可以对99.24%的网络用户进行指纹识别。该研究实现了83.24%的指纹唯一性,并在跨浏览器的高稳定性中实现了这一目标。
设备指纹
除了浏览器指纹外,安装在设备上的手机中国VPN也可以创建该设备的指纹。
翻墙VPN可以发现设备的特性,例如其MAC地址(连接设备的硬件标识符)、时区、电池健康和CPU详细信息。在Android上,甚至可以找出设备的序列号,这将唯一标识该设备。
设备指纹可以用于为银行翻墙VPN添加额外的身份验证层,或检测赌博机场梯子中的欺诈行为,例如玩家想要领取多个注册奖金。
如何保护自己免受浏览器指纹的影响
屏蔽浏览器指纹的最好用的方法是使用限制它的私人浏览器。还有一些插件可以添加到主流浏览器中,以屏蔽一些指纹技术。
注重隐私的浏览器
一些浏览器比其他浏览器更能屏蔽指纹识别,因此值得考虑你的浏览器选择。
Tor浏览器
Tor浏览器专为隐私而设计,具有自己的服务器节点网络,增强了你的匿名性。
Tor的策略是确保所有用户都有相同的指纹,这样他们就无法区分开来。
Tor有广泛的对策来对抗浏览器指纹。这些措施包括:
- 禁用所有插件。
- 需要许可才能正确使用canvas功能。否则,会绘制一张纯白色图片。
- 确保WebGL在未经用户授权的情况下不运行。
- 提供一组字体,并隐藏设备上已安装的字体。
- 将浏览器窗口设置为200×100像素的倍数,最大为1000×1000像素。
- 禁用对连接的媒体设备(如相机和麦克风)的访问。
- 禁用电池状态功能。
- 为所有人提供相同的时区。
- 禁用用于音频指纹的WebAudio API。
尽管使用Tor时每个人的指纹都是相同的,但它并不总是安全的。使用Tor本身可以被检测到,并且可能被一些服务标记为可疑并屏蔽。
Firefox
Firefox浏览器声称包括指纹保护功能。它屏蔽来自已知使用指纹技术的公司的请求。
然而,我们使用AmIUnique测试了Firefox,发现我们的浏览器指纹仍然是独特的。这可能是因为我们使用的指纹工具不在Firefox的屏蔽列表中,且它仍然对其他真正的隐私威胁提供保护。
专家提示: LibreWolf是具有额外隐私设置的Firefox版本。然而,它的更新频率较低,这可能会削弱其安全性。IceCat for Linux是另一个具有额外指纹对策的Firefox版本。
Avast Secure Browser
Avast Secure Browser声称会混淆指纹脚本,屏蔽它们收集准确信息。Avast表示,其浏览器使用了一种将用户一般化(让你看起来像其他人)和随机化(让你的指纹经常变化)相结合的方法。
我们的测试发现,使用Avast Secure Browser时,我们的指纹仍然是独特的。(This article is created by how and best.com)和Firefox一样,它可能在面对一些实际跟踪脚本时表现更好,但由于使用该浏览器的人很少,它本身就高度独特。
Avast AntiTrack是一种商业产品(每年起价55美元),它为指纹脚本提供虚假数据,因此它们可以继续运行,但你的真实信息被隐藏。
Brave
Brave浏览器用基于本地存储浏览历史的广告取代广告和跟踪器。
Brave旨在随机化指纹数据,使你在特定网站上的浏览会话内具有一致的指纹,但在其他会话或其他网站上具有不同的指纹。这使得指纹对跨网站或跨会话的跟踪用户变得无用。
开发人员表示,这种方法比给所有人相同的指纹更好,因为如果提供不准确的信息,一些网站可能会崩溃,而且如果一个网站的访问者不多,你的浏览器仍然可能看起来是独特的。
Brave使用术语“farbling”来指稍微随机化可能帮助识别你的浏览器特征的输出。浏览器将farbling应用于canvas、媒体设备、WebGL、插件、音频和用户代理。
浏览器隐私设置
如果你真的关心隐私,我们建议避免使用微软Edge、Chrome和Safari。
然而,如果你必须使用它们,有一些功能可以启用,以限制浏览器指纹。
在Safari中启用指纹保护
Apple的Safari浏览器中的指纹保护会屏蔽已知的指纹跟踪器在你访问的页面上。默认情况下,它在隐私浏览窗口中启用,但你可以为所有浏览会话打开它:
- 转到设置 > Safari > 高级。
- 选择高级跟踪和指纹保护。
- 选择所有浏览。
在微软Edge中启用指
纹保护
微软Edge旨在检测和屏蔽指纹跟踪器。你可以在设置 > 隐私、搜索和服务中启用跟踪防护。
有三个级别:
- 基本: 屏蔽有害跟踪器,但允许广告和内容个性化的跟踪器。
- 平衡: 屏蔽有害跟踪器和来自你未访问过的网站的第三方跟踪器。
- 严格: 屏蔽大多数跨网站的跟踪器。一些网站功能可能无法正常工作,但你可以为任何你想要排除在跟踪保护之外的网站添加例外。
浏览器扩展
有几个扩展程序有助于限制浏览器指纹。它们要么屏蔽指纹技术,要么禁止已知的指纹跟踪器跟踪你。
浏览器扩展 | 屏蔽的内容 |
---|---|
Canvas Blocker | Canvas, WebGL, audio, navigator properties, screen, and others. |
Ghostery | Known fingerprinters and requests from unknown trackers. |
Privacy Badger | Canvas fingerprinting used by advertisers and other third-parties. |
NoScript | JavaScript, except where you allow it. |
Canvas Fingerprint Defender | Canvas fingerprinting attempts by adding random data to images. |
Disconnect | Known third-party browser fingerprinters. |
值得重申的是,这些扩展并不能完全保护你免受浏览器指纹的影响。以下是可以保护的内容和可能仍然脆弱的内容的总结:
可以保护的内容 | 未总能保护的内容 |
---|---|
已知的用户跟踪公司 | 第一方跟踪,即你选择访问的网站的指纹跟踪 |
最具侵入性的指纹技术 | 生成指纹的每个参数 |
从事指纹跟踪的未知组织 |
为了最全面的保护,我们建议同时使用两个扩展:
- Canvas Blocker,用于屏蔽最大的指纹技术
- Ghostery,用于屏蔽已知的指纹公司
你可以在浏览器的扩展商店找到这些扩展。或者,访问它们的网站(如果有的话),链接在上表中。
VPN和代理服务器
你的IP地址几乎肯定是独一无二的,可以用来识别你。因此,使用VPN或代理服务器来更改你的IP地址,并获得使用VPN的其他隐私和安全优势是有意义的。
如果你更改VPN服务器,你将部分更改使用先前IP地址的任何指纹。
然而,VPN不会屏蔽其他指纹技术被用来对付你。它无法屏蔽浏览器透露你的显卡、屏幕或连接的媒体设备等信息。
常见问题
浏览器指纹是否合法?
浏览器指纹是合法的。尽管欧盟的《通用数据保护条例》(GDPR)监管cookies,但它不控制浏览器指纹。在美国,州法律如《加利福尼亚消费者隐私法》(CCPA)和佛蒙特州的《数据代理法》也不涉及浏览器指纹。
隐私模式能保护我免受浏览器指纹的影响吗?
私人浏览或隐私模式屏蔽网站使用cookies跟踪你访问的情况。然而,它对浏览器指纹无效,因为这是一种无需使用cookies就能工作的技术。
VPN能屏蔽浏览器指纹吗?
VPN可以更改你的IP地址,从而隐藏你的位置,但浏览器指纹仍然可以在没有IP地址的情况下识别你。实际上,使用VPN可能会增加你的指纹的独特性。