关于浏览器指纹

浏览器指纹是什么?是一个能够唯一标识当前浏览器的一串字符串。

github地址  https://github.com/Valve/fingerprintjs2

通过这个js可以获取到当前浏览器的指纹。

他具体是通过如下参数计算得到的

要素名中文解释
user_agent用户代理,包含浏览器版本号
language浏览器设置的当前语言
color_depth屏幕颜色深度
device_memory是否支持设备内存调试(估计是针对移动端测试)
pixel_ratio是否支持像素比例调整
hardware_concurrency是否支持硬件并发性
resolution屏幕分辨率
available_resolution可用的屏幕分辨率
timezone_offset格林威治时间和本地时间之间的时差,以分钟为单位
session_storage是否支持session_storage,这是html5的标准特性之一
local_storage是否支持local_storage,这是html5的标准特性之一
indexed_db是否支持浏览器端数据库,html5新特性之一
cpu_classnavigator.cpuClass cpu类型 unknown
navigator_platform所在操作系统平台,例如win32
do_not_track隐私设置相关属性,用户是否允许网站追踪自己的喜好
regular_plugins安装的插件信息(例如装了pdf插件)
canvas画布。用画布api画了一个长方形,然后转为base64字符串
webgl网页3D绘图协议。把对webgl的支持情况汇总起来的信息
webgl_vendorwebgl的提供商和显卡情况
adblockad block  是否支持广告阻止
has_lied_languages浏览器语言是否等于浏览器设置的第一语言
has_lied_resolution分辨率的比较 screen.width < screen.availWidth
screen.height < screen.availHeight
has_lied_os判断系统平台platform是否真实可靠(lied说谎)
has_lied_browser判断浏览器是否检测的真实可靠(lied说谎)
touch_support是否支持触控
js_fonts检测字体的支持情况
最终难以使用浏览器指纹作为客户端唯一标识的原因是: 浏览器经常 会自动升级,自动升级就会导致浏览器指纹发生变化。
因为我们使用白名单机制,这时候就需要更新白名单登记。

  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值