浏览器指纹获取

0.00

★28次@未来之窗

A:赛忞初雪

上架: 2025-09-17 02:54:31

         收藏
 

四方仙域传送阵         

未来之窗昭和仙君 - 东方仙盟_bs_Fingerprint 功能说明

未来之窗昭和仙君 - 东方仙盟_bs_Fingerprint 功能说明

一、功能概述

$cq.东方仙盟_bs_Fingerprint 是基于 cyberwin_fairyalliance_webquery 工具集的客户端指纹生成函数(2025-09-05 版本),用于收集浏览器及设备的特征信息并生成唯一标识,可用于用户识别、设备区分等场景。

核心特性
- 无需额外依赖,基于浏览器原生API实现
- 收集多维度设备和浏览器特征
- 返回结构化指纹信息,便于存储和比对
- 作为 $cq 全局对象的方法直接调用

二、语法与参数

1. 调用语法

// 调用客户端指纹生成函数 const 指纹信息 = $cq.东方仙盟_bs_Fingerprint(options);

2. 参数说明

参数名 类型 是否必填 说明 示例
options Object 配置选项(当前版本预留,暂未实现具体配置项) {} 或省略该参数

3. 返回值

返回一个包含客户端特征信息的对象,具体属性如下:

属性名 类型 说明 示例值
userAgent String 浏览器用户代理字符串,包含浏览器类型、版本等信息 Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 ...
screenResolution String 设备屏幕分辨率,格式为 "宽度x高度" 1920x1080
language String 浏览器默认语言 zh-CNen-US
timezoneOffset Number 时区偏移量,单位为分钟,等于 UTC 时间与本地时间的差值 -480(表示 UTC+8 时区)
fonts Array 浏览器支持的字体列表(通过Canvas检测) ["Arial", "Times New Roman"]
plugins Array 浏览器安装的插件名称列表 ["Chrome PDF Plugin", "Widevine Content Decryption Module"]

三、实现原理

该函数通过浏览器原生API收集多种设备和浏览器特征,组合形成客户端指纹,主要实现方式如下:

  • User-Agent:通过 navigator.userAgent 获取浏览器标识字符串
  • 屏幕分辨率:通过 screen.widthscreen.height 获取
  • 浏览器语言:通过 navigator.language 获取
  • 时区偏移量:通过 new Date().getTimezoneOffset() 获取
  • 字体检测
    • 创建Canvas元素和2D上下文
    • 对比指定字体与默认字体渲染同一文本的宽度差异
    • 宽度不同则判定该字体存在于系统中
  • 插件检测:通过 navigator.plugins 枚举已安装插件(现代浏览器可能限制部分插件信息)

四、使用示例

场景:获取并展示客户端指纹信息

调用 $cq.东方仙盟_bs_Fingerprint 函数获取当前设备的指纹信息,并在页面中展示。

点击上方按钮获取指纹信息...

核心代码

// 绑定按钮点击事件 $cq("#getFingerprint").on("click", function() { // 调用指纹生成函数 const 指纹信息 = $cq.东方仙盟_bs_Fingerprint(); // 将指纹信息转换为格式化字符串并展示 const 格式化信息 = JSON.stringify(指纹信息, null, 2); $cq("#fingerprintResult").text(格式化信息); });

代码说明

  • 通过 $cq("#getFingerprint").on("click", ...) 为按钮绑定点击事件
  • 调用 $cq.东方仙盟_bs_Fingerprint() 生成指纹信息(无特殊配置时可省略参数)
  • 使用 JSON.stringify() 格式化指纹信息,便于阅读
  • 通过 $cq("#fingerprintResult").text(...) 在页面展示结果

五、注意事项

  • 指纹唯一性:该函数生成的指纹基于设备和浏览器特征组合,在大多数情况下可区分不同设备,但不能保证100%唯一(如完全相同配置的设备可能产生相同指纹)。
  • 浏览器兼容性
    • 支持现代浏览器(Chrome、Firefox、Edge、Safari等)
    • 部分老旧浏览器(如IE11及以下)可能存在兼容性问题
  • 隐私限制
    • 现代浏览器可能限制部分敏感信息的获取(如插件列表)
    • 在隐私模式下,部分特征可能被隐藏或修改
  • 性能影响:字体检测部分使用Canvas渲染,对性能影响较小,但在极端情况下可能导致轻微延迟。
  • 特征变化:当用户修改浏览器设置(如语言、安装/卸载插件)或更换设备时,指纹信息可能发生变化。

硬件app