Clicky

字体

Updated 1/7/19 by Alesja Tsernoseva

字体指纹识别是一种身份验证的方式。基于用户所使用的字体种类及字体在浏览器中被绘出的方式,网站可以进行指纹追踪。通常,网站在浏览器指纹识别时有两种运用字体的方法。

  • 枚举字体列表
  • 基于字体测量的指纹识别

您可以通过Borwserleaks.com,从这里这里查看这些方法是如何被应用的。

枚举字体列表

收集电子设备上已安装的字列表的最常用方法是CSS的自我检测。简而言之,该方法通过测量浏览器上特定字体显示的一个短语的宽度来获取您的字体列表。如果宽度匹配,就意味着您安装了这种字体。如不匹配,则推定这种字体没有被安装。

通过循环检测可能安装的字体列表及宽度,网站可准确窥探一台设备安装了哪些字。

Multilogin使用一种特殊算法来对抗这种探测方法,允许您控制可供网站枚举的字体以反追踪。

当您创建和保存一个浏览器配置文件时,Multilogin会自动生成一个随机字体表,将其显示给网站终端。

您也可以通过点击“编辑”按钮来在列表内逐一进行编辑。但该功能只有在浏览器配置文件被创建后方可被执行。

您知道网站也会通过Flash或Java Applet插件来获得您的系统字体列表吗?它们会通过AJAX将其悄悄传送给后台服务器。

是的,它们就是会这么下手!所以您在浏览器文件中使用插件时,务必保持警惕。你可以从这里获得更多相关信息。

基于字体测量的指纹识别(Unicode glyphs和DOMRect)

基于字体测量的指纹识别技术,即测量HTML元素的边界和尺寸,HTML元素可以用有着特定字体系列的文本进行填充。接着测量结果会被转换成哈希字符串标识符,以用于更精确的指纹识别。这种技术可被划为两种子分支。

  1. Unicode glyphs, 是针对特定字体系列中的单个字符的测量。
  2. DomRect (也被称为 getClientRects), 是对HTML元素的测量,其中的文本以特定字体系列呈现。

启动“Unicode glyphs和DOMRect指纹识别保护”后,Multilogin利用一系列不同的方法来对抗基于测量的字体指纹识别,最终,每个浏览器配置文件都会有一个唯一的Unicode glyphs和DOMRect哈希值。

基于字体测量的指纹识别和Canvas指纹识别的原理十分相似。只是它的技术较弱,因为Canvas指纹识别技术不仅测量边框,还涉及了关于渲染像素的数据。

How did we do?