브라우저 핑거프린트:글꼴 (Font)
글꼴(폰트) 핑거프린팅은 인증의 한 방법입니다. 사용자가 사용하는 글꼴의 종류와 브라우저에서 렌더링되는 방식을 기반으로 웹사이트는 핑거프린트를 추적할 수 있습니다. 일반적으로 웹사이트는 다음 두 가지 방법 중 하나로 브라우저 핑거프린팅에 글꼴을 사용합니다.
- 글꼴 목록 열거 (Enumerated font list)
- 글꼴 측정 기반 핑거프린트 인식 (Fingerprint recognition based on font measurement)
Browserleaks.com에서 이러한 방법들이 어떻게 적용되는지 확인할 수 있습니다.
글꼴 목록 열거 (Enumerated font list)
전자 기기에 설치된 글꼴 목록을 수집하는 가장 일반적인 방법은 CSS 자가 점검(self-checking)입니다. 요약하자면, 이 방법은 브라우저에서 특정 글꼴로 표시된 문구의 너비를 측정하여 글꼴 목록을 파악합니다. 너비가 일치하면 해당 글꼴이 설치된 것으로 간주하고, 일치하지 않으면 설치되지 않은 것으로 판단합니다.
가능한 글꼴 목록과 너비를 반복적으로 확인하여 웹사이트는 장치에 정확히 어떤 글꼴들이 설치되어 있는지 확인할 수 있습니다.
후니오(Migratory Bird) 브라우저는 이 감지 방법에 대응하기 위해 특별한 알고리즘을 사용하며, 사용자가 웹사이트의 추적에 노출될 수 있는 글꼴 열거 목록을 제어할 수 있게 합니다. 브라우저 환경을 생성하고 저장할 때, 후니오는 사이트 터미널에 표시할 임의의 글꼴 테이블을 자동으로 생성합니다.
글꼴 측정 기반 핑거프린트 인식 (Unicode glyphs 및 DOMRect)
이 핑거프린팅 방식은 특정 글꼴 패밀리를 텍스트로 채울 수 있는 HTML 요소의 경계와 크기를 측정하는 방식에 기반합니다. 측정값은 더 정확한 핑거프린트 식별을 위해 해시 문자열 식별자로 변환됩니다. 이 기술은 다음 두 가지로 세분화될 수 있습니다.
- Unicode glyphs: 특정 글꼴 패밀리 내에서 단일 문자를 측정합니다.
- DOMRects (getClientRects라고도 함): 텍스트가 특정 계열의 글꼴로 렌더링되는 HTML 요소의 측정값입니다.
Mbbrowser는 측정 기반의 글꼴 핑거프린팅에 대응하기 위해 다양한 접근 방식을 사용하며, 결과적으로 각 브라우저 환경(프로필)은 고유한 Unicode glyphs 및 DOMRect 해시를 갖게 됩니다.
