美文网首页
浏览器指纹和个人信息

浏览器指纹和个人信息

作者: 风凌摆渡人 | 来源:发表于2023-05-17 18:25 被阅读0次

浏览器指纹的目的

用于跟踪用户浏览器精准推送广告

大致种类

指纹

用JS创建一个canvas画布,然后在画布上面画几个图形,正方形,圆形等,然后写几个字。然后把这个canvas 转base64,最后生成base64编码的hash值,这个hash值就是canvas指纹。


const createFingerprint = () => {
  const canvas = document.createElement('canvas')
  const ctx = canvas.getContext('2d')
  if (ctx) {
    ctx.font = '24px Arial'
    ctx.fillText('fingerprint', 22, 33)
    ctx.moveTo(0, 0)
    ctx.lineTo(100, 100)
    ctx.stroke()
    const B64 = canvas.toDataURL().replace('data:image/png;base64,', '')
    return hex_md5(B64)
  }
}

export default createFingerprint

获取GPU信息

因为客户不可能随时更换显卡,也算一个唯一值

(function () {
    var canvas = document.createElement('canvas'),
        gl = canvas.getContext('experimental-webgl'),
        debugInfo = gl.getExtension('WEBGL_debug_renderer_info');
 
    console.log(gl.getParameter(debugInfo.UNMASKED_RENDERER_WEBGL));
})();
获取电池信息(网站需https)
navigator.getBattery().then(function (battery) {
  console.log(battery)
})

navigator.getBattery().then(function (battery) {
  // 添加事件,当设备电量改变时触发
  battery.addEventListener('levelchange', function () {
    console.log('电量改变: ' + battery.level)
  })

  // 添加事件,当设备充电状态改变时触发
  battery.addEventListener('chargingchange', function () {
    console.log('充电状态改变: ' + battery.charging)
  })

  // 添加事件,当设备完全充电需要时间改变时触发
  battery.addEventListener('chargingtimechange', function () {
    console.log('完全充电需要时间: ' + battery.chargingTime)
  })

  // 添加事件,当设备完全放电需要时间改变时触发
  battery.addEventListener('dischargingtimechange', function () {
    console.log('完全放电需要时间: ' + battery.dischargingTime)
  })
})
其他

屏幕信息:屏幕尺寸
UA信息:操作系统版本、浏览器版本等

参考信息

Fingerprintjs2 test
https://webkay.robinlinus.com/

相关文章

  • 浏览器指纹

    什么是浏览器指纹 “浏览器指纹”是一种通过浏览器对网站可见的配置和设置信息来跟踪Web浏览器的方法,具有唯一性和人...

  • canvas指纹 (帆布)

    canvas指纹 1. 什么是帆布指纹 canvas指纹理论上可以唯一标识一个浏览器,即使用户删除了浏览器的任何隐...

  • 浏览器指纹

    参考链接 基本介绍 https://www.cnblogs.com/leijing0607/p/8044218.h...

  • 浏览器指纹

    一、应用场景: 场景一:在网站上浏览某个商品,了解了相关的商品信息,但并没有下单购买,甚至没有进行登录操作。过两天...

  • 面对团队骗贷的解决办法:设备指纹以及关系网络模型

    面对团队骗贷的解决办法:设备指纹以及关系网络模型 1.设备指纹: 相对于cookie,设备指纹具备不受浏览器兼容性...

  • 08 驾考科目三要点整理

    一、考试流程 1、准备工作 逆时针绕车行车,用手遮挡感应圆片(模拟开车前的车况检查),上车后要核对个人信息和指纹,...

  • ja3指纹和http2指纹(akamai)是否有随机的必要性

    通过上面信息比对可以看出,ja3指纹和akamai指纹都不具备唯一性,跨浏览器跨平台仍然能保持一致性,所以没必要通...

  • 画布指纹追踪

    根据浏览器信息生成浏览器唯一识别码 转自: 点赞需求使用canvas fingerprinting(画布指纹追踪)的过程

  • iOS指纹解锁和手势解锁

    iOS指纹解锁和手势解锁 iOS指纹解锁和手势解锁

  • nginx配置,Nginx的SSL解密(非原创)

    在nginx.conf代码实例: Nginx的SSL解密 应用的开发者在浏览器和客户端之间传输个人信息时需要特别注...

网友评论

      本文标题:浏览器指纹和个人信息

      本文链接:https://www.haomeiwen.com/subject/ylwisdtx.html