Mozilla 计划在今年 5 月中旬推出的 Firefox 67 中添加新的用户反指纹技术。所谓的指纹技术,指的是基于 Html 5 的 Canvas 指纹跟踪技术。所谓的指纹是指每一种浏览器都会使用不同的图像处理引擎、导出选项与压缩等级,所以每一个浏览器绘制出的图案都会有所不同,这些图案可以像指纹一样作为网页浏览者的唯一标识。
Canvas 指纹跟踪还能监听用户的键盘输入、鼠标移动与触摸等事件,该技术被大量用于广告联盟与网站运营者精准定位并标识每一个访问者,以此进行精准营销。
比如广告联盟经常嗅探某些浏览器功能,在用户调整浏览器窗口大小并移动浏览器标签时跟踪用户。
据 ZDNet 的报导,Mozilla 计划引入的新反指纹技术称为“letterboxing”,当用户调整浏览器窗口大小时,为了保持“窗口的大小不变”,letterboxing 机制会在网页的两侧添加“灰色空间”以迷惑 Canvas 指纹跟踪,之后在窗口调整大小操作完成后几毫秒内平滑地将灰色空间删除。
注意浏览器窗口边缘附近的灰色空间
如此一来,在用户调整浏览器大小的时候,指纹跟踪代码将会读取到不正确的窗口大小信息,成功实现反指纹跟踪。除了调整窗口大小,在最大化浏览器窗口或进入全屏模式时该功能也有效。
letterboxing 目前可在 Firefox Nightly 中使用,默认情况下不启用该功能。
启用方法:访问 about:config 页面,在搜索框中输入 privacy.resistFingerprinting,并将浏览器的反指纹功能设置为 true。