fingerprint2 计算内容详解

配置详解

  • userAgent: navigator.userAgent
  • language: 语言
  • colorDepth: 返回目标设备或缓冲器上的调色板的比特深度 screen.colorDepth
  • deviceMemory: 以千兆字节为单位返回设备内存量。该值是通过舍入到最接近的2的幂并将该数除以1024而给出的近似值
  • pixelRatio: 像素比 devicePixelRatio
  • hardwareConcurrencynavigator.hardwareConcurrency 返回可用于运行在用户的计算机上的线程的逻辑处理器的数量
  • screenResolution: 检测屏幕宽高,并根据屏幕方向矫正返回值[width,height]
  • availableScreenResolution: 返回屏幕分辨率[width,height],无头浏览器无法获取
  • timezoneOffset: 返回从当前区域设置(主机系统设置)到UTC的时区差异(以分钟为单位)
  • timezone: 时区
  • sessionStorage: 是否支持 sessionStorage,不支持时返回错误
  • localStorage: 是否支持 localStorage
  • indexedDb: 是否支持 indexedDb
  • addBehavior :此时可能未定义body或以编程方式删除
  • openDatabase: 返回是否支持 Web SQL
  • cpuClass: 返回浏览器系统的 CPU 等级,一般无法获取
  • platform: 返回表示浏览器平台的字符串,该规范允许浏览器始终返回空字符串,因此不要依赖此属性来获得可靠的答案
  • doNotTrack: 返回用户的“不跟踪”设置。如果用户请求不被网站,内容或广告跟踪,则为“1”
  • plugins: 返回浏览器安装的插件列表
  • canvas: 如果浏览器支持canvas则返回生成baes64数据
  • webgl: 返回浏览器对webgl绘图协议的支持情况汇总
  • webglVendorAndRenderer: 返会显卡型号相关信息
  • adBlock: 返回是否安装去广告插件
  • hasLiedLanguages: 返回用户是否改变了首选语言
  • hasLiedResolution: 返回用户是否改变了分辨率
  • hasLiedOs: 返回用户是否改变了操作系统
  • hasLiedBrowser: 返回用户是否改变了浏览器
  • touchSupport: 返回最大触摸点数,是否支持touch,是否支持ontouchstart事件]
  • fonts: 返回从64种字体种筛选出的可用字体
  • 

  • fontsFlash: Flash字体枚举,如果没有swfobject,不会触发。
  • audio: 返回音频指纹
  • enumerateDevicesnavigator.mediaDevices 请求可用媒体输入和输出设备的列表,例如麦克风,相机,耳机等

使用方法

  1. // 指纹验证  
  2. Fingerprint2.get({  
  3.   excludes: {  
  4.     screenResolution: true,  
  5.     userAgent: true,  
  6.     localStorage: true,  
  7.     sessionStorage: true,  
  8.     availableScreenResolution: true,  
  9.     enumerateDevices: true,  
  10.     pixelRatio: true,  
  11.     adBlock: true  
  12.   }  
  13. }, function (components) {  
  14.   // 缓存浏览器指纹  
  15.   var fp = Fingerprint2.x64hash128(components.map(function (pair) {  
  16.     return pair.value  
  17.   }).join(), 31);  
  18.   console.log(fp)  
  19. })  

本文链接地址: fingerprint2 计算内容详解

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注