跳至正文
指纹识别

Font Fingerprinting

字体指纹(font fingerprinting)是一种判定设备上安装或可用哪些字体、以及它们如何渲染的技术,并将由此得到的列表和度量作为标识性信号。某个系统上特定的字体集合,反映了它的操作系统、已安装软件和用户自定义,这些共同使字体画像具有区分度。

工作原理

Font Fingerprinting 的工作原理

一种常见方法是测量以某种请求字体渲染的文本尺寸,并与已知的后备字体进行对比。如果浏览器改用后备字体,测得的宽度和高度就会不同,从而揭示所请求的字体是否存在。对一大批候选字体逐一迭代,便能构建出已安装字体的清单。

较新的方法会使用与字体相关的 API 或 canvas 文本渲染,不仅观察字体是否存在,还观察确切的字形度量和光栅化,而这些会因字体版本和渲染引擎而异。可用字体与其渲染外观的组合,比单纯的“已安装与否”列表提供了更丰富的信号。

字体集合相当稳定,但当用户安装捆绑了字体的应用程序、设计工具或语言包时,它可能会改变。由于操作系统会附带具有特征性的默认字体,该画像还有助于推断平台,从而增添了印证性的上下文。

为何重要

Font Fingerprinting 对欺诈防护为何重要

字体指纹贡献了可观的熵,并有助于区分那些共享相同浏览器和操作系统、却在已安装软件上有所不同的设备。在欺诈检测中,它可以揭示不一致之处,例如某台设备声称属于某个平台,却暴露出另一个平台特有的字体,而这正是伪造的标志。它还通过增添一个难以整体伪造的维度,强化了无 Cookie 识别。

使用 TRACIO

TRACIO 如何应对

TRACIO 将可用字体画像视为其 130+ 个信号之一,既利用其区分度,也将其作为对所声称平台的一致性核查。由于字体列表会随用户安装软件而变化,TRACIO 依靠容错匹配,从而使新增一种字体不会破坏对回访设备的识别。该信号服务于更广泛的置信度评估,而非独立发挥作用。

常见问题

常见问题

自信识别每一台设备

从每月 2,500 次 API 调用的免费方案开始。无需信用卡。