产品教程
February  2, 2025

指纹配置教程

浏览器指纹​(Browser Fingerprint)是指通过收集用户浏览器的各种特征信息,生成一个唯一的标识符,用于识别和追踪用户的技术。这些特征信息包括浏览器的配置、设备硬件、软件设置、网络环境等。

一个 Web 应用通常无法在同一个浏览器里同时登录两个不同的账号

一个 Web 应用通常无法在同一个浏览器里同时登录两个不同的账号,主要是因为浏览器会话机制​ 和 ​Cookie 管理​的技术限制,以下是具体原因和背后的技术细节:

1、会话和 Cookie 的机制
会话(Session)​
Web 应用通过会话机制来管理用户登录状态。服务器会为每个登录的用户生成一个唯一的会话 ID,并将其存储在服务器端。
Cookie
会话 ID 通常通过 Cookie 存储在用户的浏览器中。浏览器在每次请求时会将 Cookie 发送到服务器,服务器通过 Cookie 中的会话 ID 识别用户。

在同一个浏览器中,Cookie 是全局的,无法区分同一个域下的不同账号。因此,Web 应用只能识别一个会话 ID,导致无法同时登录多个账号。
2、同源策略(Same-Origin Policy)​

浏览器限制不同来源(协议、域名、端口)之间的资源访问。对于同一个域(例如 example.com),浏览器会共享相同的 Cookie 和存储(如 LocalStorage、SessionStorage)。由于同源策略,同一个域下的多个账号无法通过不同的 Cookie 或存储进行隔离。

3、浏览器的单实例限制

大多数浏览器在同一时间只能打开一个实例(即一个窗口或标签页),并且共享相同的 Cookie 和会话数据。即使打开多个标签页或窗口,浏览器仍然会共享相同的 Cookie,导致无法同时登录多个账号。

4、应用设计限制

大多数 Web 应用在设计时假设一个用户在同一时间只会使用一个账号,因此没有为多账号登录场景提供支持。即使技术上可以实现多账号登录,应用的设计和逻辑可能不支持这种场景。

因此为了从技术上打破浏览器本身的局限,就有了指纹浏览器的用武之地。其原理是通过隔离应用会话的方式,接触 Session 和 Cookie 共用的规则,同时为每个应用账号关联不同的浏览器指纹,从而绕过平台的风控检测(应用平台发现同样的环境里有多个账号在登录使用,可能会触发其账号风控,最终导致应用无法使用)。

浏览器指纹参数

浏览器指纹是网站用于识别用户设备的一组特征,主要包括以下内容:

​User-Agent
浏览器类型、版本、操作系统等信息。
屏幕分辨率
设备的屏幕尺寸和分辨率。
插件信息
浏览器安装的插件和扩展。
​字体列表
系统中安装的字体。
​时区
设备的时区设置。
语言
浏览器的语言设置。
​Canvas 指纹
通过 HTML5 Canvas 生成的图像哈希值。
WebGL 指纹
通过 WebGL 生成的图形渲染信息。