网络安全(canvas指纹追踪技术)
Hi 观众姥爷们大家好!我是小满今天带来canvas指纹技术
技术场景(常用于广告联盟)例如你在某个网站上看到某个商品没有登录过账号信息,过两天用同台电脑访问其他网站的时候却发现很多同类商品的广告。
在过去我们可能使用cookie去追踪用户信息,不过弊端也很明显cookie可以被用户禁止掉,从而无法追踪,并且无法跨域访问。
或者就是浏览器指纹(navigator)
userAgent(用户代理)
language(浏览器的语言)
platform(操作系统)
这些指纹不能对某个人进行唯一性
标识,也无法对客户端进行唯一性
判定,基于HTML5
的诸多高级指纹
对此提供了新思路
canvas指纹
canvas相信我们大家都用过,例如绘制一些图形,游戏等等,都会用到。它也可以用来跟踪用户当我们调用toDataURL转换base64,他底层会获取设备
,操作系统
,浏览器,三合一的唯一标识,如果其他用户使用的这三个信息和你一样的话也是重复这个概率是很低的也不排除有可能。
生成canvas指纹
生成的Base64(google)
生成的Base64(360浏览器)
每个浏览器的信息不用生成的base64串也不同但是图片是一样的

如果太长可以进行MD5 压缩 或者 crypto
如何防止跟踪
安装浏览器插件,谷歌应用商店有随机修改canvas
指纹的插件(CanvasFingerprintBlock
),其原理是,每次随机往 canvas 画布里面注入一个随机的噪音
(人肉眼是看不到的),从而影响base64加密结果