간단히 말하면: 쿠키는 웹사이트가 다음 방문 시 당신을 알아보기 위해 기기에 저장하는 데이터 조각입니다. 핑거프린트는 완전히 다른 개념입니다 — 웹사이트가 당신의 기기를 측정한 값들의 집합으로, 통계적으로 고유한 문자열로 조합됩니다. 쿠키는 삭제할 수 있지만, 핑거프린트는 삭제할 수 없습니다. 웹사이트가 단순히 관찰하는 하드웨어와 소프트웨어의 속성이기 때문입니다. 일반적인 기기 핑거프린트는 화면 해상도, 설치된 폰트, GPU 모델, 오디오 처리 스택, 언어, 시간대, 브라우저 버전 등 약 30개의 신호를 조합해 1만 분의 1에서 100만 분의 1 정도로 기기를 고유하게 식별하는 값을 만들어냅니다. 핑거프린트 저항이란 당신의 기기가 수백만 개의 다른 기기처럼 보이도록 만들어 핑거프린트가 당신을 식별할 만큼 고유하지 않게 하는 실천입니다. 이는 어렵고 불완전하며, 솔직히 말해 현대 브라우저에서 완벽한 저항은 달성하기 어렵습니다 — 그러나 의미 있는 수준의 저항은 가능하며, 그 차이는 중요합니다.
브라우저/기기 핑거프린트란 실제로 무엇인가
웹사이트를 방문하면, 페이지는 브라우저와 기기에서 수십 가지 정보를 조회하는 JavaScript를 실행할 수 있습니다. 이 중 일부는 사이트가 제대로 작동하는 데 필요합니다 — 화면 크기는 레이아웃을 결정하고, 시간대는 날짜 표시 방식을 결정하며, 언어 설정은 어떤 번역본을 불러올지 결정합니다. 이 정보는 사이트 입장에서 진정으로 유용합니다. 그러나 동시에 진정으로 노출적이기도 합니다. 각 정보 조각은 방문자가 어떤 기기를 사용하는지 범위를 좁히고, 충분한 조각이 조합되면 고유해집니다.
일반적인 핑거프린트에 들어가는 약 30가지 신호는 다음과 같습니다:
- User-Agent 문자열 — 브라우저 이름과 버전, 운영체제, 종종 기기 모델.
- 화면 해상도 및 색상 깊이 — 일반적으로 기기 종류를 좁혀줍니다.
- 시간대 및 언어 — 지리적 지역과 로케일을 좁혀줍니다.
- 설치된 폰트 — OS에 설치된 폰트 목록은 놀랍도록 독특합니다. 페이지는 각 폰트로 텍스트를 렌더링하고 결과가 해당 폰트처럼 보이는지 측정해 폰트 목록을 나열할 수 있습니다.
- Canvas 핑거프린트 — 페이지가 HTML5 canvas를 사용해 작은 이미지를 그린 뒤 픽셀 값을 읽어옵니다. GPU, 폰트, 렌더링 라이브러리가 다르면 동일한 드로잉 명령에서도 약간씩 다른 픽셀이 만들어집니다. 결과 해시는 매우 높은 식별력을 가집니다.
- WebGL 핑거프린트 — 비슷한 개념이지만 WebGL 그래픽 명령을 사용합니다. GPU 모델, 드라이버 버전, 렌더링 특성을 드러냅니다.
- 오디오 핑거프린트 — 페이지가 짧은 오디오 신호를 생성하고 오디오 처리 스택이 만들어내는 결과를 읽어옵니다. 사운드 카드, OS 오디오 API, 오디오 드라이버 버전이 다르면 다른 출력이 나옵니다.
- 하드웨어 동시성 — CPU 코어 수. 기기 종류를 드러냅니다.
- 기기 메모리 —
navigator.deviceMemoryAPI를 통해 노출되는 RAM 크기. - Battery API — 배터리 잔량, 충전 상태, 충전 시간. 핑거프린팅 우려로 브라우저에서 대부분 폐기되었지만, 역사적으로 사용되었습니다.
- 터치스크린 기능 — 지원되는 터치 포인트 수로 태블릿과 노트북을 구분합니다.
- 미디어 기기 — 연결된 카메라, 마이크, 스피커 수.
- 플러그인 목록 — DOM을 통해 보이는 브라우저 플러그인/확장 프로그램 (현대 브라우저에서는 덜 유용하지만 여전히 일부 노출됩니다).
- CSS 미디어 쿼리 — 페이지가 수십 가지 미디어 기능 (prefers-color-scheme, prefers-reduced-motion, color-gamut 등)을 조회하고 응답을 기록합니다.
- TLS 핑거프린트 (JA3/JA4) — 네트워크 계층 신호: TLS Client Hello 패킷의 필드 순서와 내용이 TLS 라이브러리를 식별하며, 때로는 User-Agent보다 더 고유합니다.
- HTTP/2 핑거프린트 (Akamai H2) — HTTP/2 프로토콜 계층에서 프레임 순서와 설정이 HTTP 클라이언트 라이브러리를 드러냅니다.
- 행동 신호 — 타이핑 리듬, 마우스 움직임 패턴, 스크롤 속도, 필드 간 탭 방식. 짧은 상호작용에서도 독특하게 나타납니다.
이 신호들 중 어느 하나도 개별적으로는 식별력이 없습니다. 많은 기기가 같은 화면 해상도를 가지고, 같은 브라우저 버전을 쓰며, 같은 폰트를 설치합니다. 그러나 30개 전부의 조합 — 값의 특정 튜플 — 은 보통 고유합니다. EFF의 Panopticlick 연구 (현재 Cover Your Tracks로 불림)는 일반적인 브라우저 핑거프린트가 수십만 명의 방문자 중에서 높은 확률로 고유하다는 것을 보여주었습니다.
왜 핑거프린팅은 쿠키 삭제와 시크릿 모드에서도 살아남는가
쿠키 기반 추적은 브라우저의 협조에 의존합니다. 브라우저가 쿠키를 저장하고, 이후 요청에서 전송하며, 웹사이트가 읽습니다. 쿠키를 삭제하거나 차단하면 추적 연결이 끊어집니다. 핑거프린트 기반 추적은 브라우저가 요청받을 때 자신과 환경에 대한 정보를 드러내는 것에 의존합니다 — 그리고 그 정보는 저장소를 지웠다고 해서 바뀌지 않습니다.
구체적으로: 쿠키를 모두 삭제하고, 시크릿 창을 열고, VPN에 연결한 뒤, 추적이 많은 사이트를 방문합니다. 사이트의 JavaScript가 핑거프린트 수집 루틴을 실행하고, 이전과 동일한 30개의 신호를 얻어 동일한 핑거프린트 해시를 계산해 당신을 알아봅니다. IP 주소는 다릅니다 (VPN을 쓰고 있으므로). 쿠키는 비어 있습니다 (시크릿은 공유하지 않습니다). 하지만 화면은 같은 화면이고, GPU는 같은 GPU이며, 설치된 폰트는 같은 폰트이고, 시간대는 여전히 America/New_York입니다. 핑거프린트는 세션이 아니라 기기를 식별합니다.
바로 이것이 애드테크 회사와 분석 플랫폼들이 브라우저가 서드파티 쿠키를 단계적으로 폐기하기 훨씬 전인 2014년경부터 핑거프린팅에 집중 투자한 이유입니다. 그들은 사용자들이 사용하기 시작한 프라이버시 제어에서 살아남을 수 있는 추적 메커니즘을 원했습니다. 그리고 얻었습니다.
세 가지 주요 핑거프린트 출처
핑거프린트 신호는 스택의 세 가지 다른 계층에서 옵니다. 각각 서로 다른 완화 방법이 있으며, 한 계층을 다루는 방어는 다른 계층을 완전히 노출시킬 수 있습니다.
1. HTTP 헤더 (기본, 가장 낮은 해상도 계층)
모든 HTTP 요청에는 User-Agent, Accept-Language, Accept-Encoding, Sec-CH-UA-* (최신 Client Hints) 같은 헤더가 포함됩니다. 이것들은 브라우저, OS, 언어, 인코딩 설정을 드러냅니다. 헤더 집합은 낮은 대역폭으로 — 약 12비트의 엔트로피 — 가능한 기기의 범위를 상당히 좁힙니다. 이 계층의 방어 (user agent 위조, 언어 설정 조화)는 저렴하고 부분적으로 효과적이지만, JavaScript 계층의 훨씬 높은 대역폭 신호는 다루지 않습니다.
2. JavaScript API (가장 큰 핑거프린트 노출 영역)
브라우저는 핑거프린팅 스크립트가 조회하는 수십 가지 JavaScript API를 노출합니다 — navigator.userAgent, screen.width, navigator.languages, Intl.DateTimeFormat().resolvedOptions().timeZone, WebGL 확장 목록, 오디오 컨텍스트의 처리 특성. HTMLCanvasElement.toDataURL()을 통한 Canvas 핑거프린팅만으로도 일반적인 핑거프린트 엔트로피의 상당 부분을 차지합니다. WebGL이 더 추가하고, Web Audio API가 더 추가합니다. 대부분의 핑거프린트 비트가 여기서 나오며, 이 API들이 합법적인 웹 애플리케이션에서 진정으로 유용하기 때문에 방어하기 가장 어려운 계층입니다.
3. TLS 및 네트워크 계층 (고급)
HTTP 요청 전에, 브라우저는 TLS 핸드셰이크를 수행합니다. Client Hello 메시지 — 브라우저가 보내는 첫 번째 패킷 — 에는 지원하는 암호 스위트 목록, 지원하는 TLS 확장, 해당 확장의 순서, 기타 다양한 파라미터가 포함됩니다. 이 조합이 JA3, JA4 같은 도구로 포착되는 TLS 핑거프린트입니다. TLS 라이브러리마다 (Chrome 번들 버전, Firefox의 것, Apple의 CoreTLS, Go의 crypto/tls, Python의 requests) 다른 핑거프린트를 만들어냅니다. 당신의 브라우저가 보통 어떤 TLS 핑거프린트를 생성하는지 아는 네트워크 관찰자는 브라우저를 바꾸더라도 같은 OS를 사용한다면 당신을 식별하거나, 자동화 도구 (curl, requests, 스크레이퍼)가 브라우저를 성공적으로 위장하지 못할 때 알아낼 수 있습니다. HTTP/2 프레임 순서와 SETTINGS 값도 비슷하지만 별도의 핑거프린트를 만들어냅니다. 이 계층은 사용자가 제어할 수 있는 범위 밖에 있습니다 — 기반 TLS 라이브러리의 함수이며, 브라우저 내부에서 작동하는 방어에는 보이지 않습니다.
"고유성"이 실제로 의미하는 것 — EFF의 Cover Your Tracks 방법론
EFF는 coveryourtracks.eff.org에서 실제 핑거프린팅 설정에 대해 브라우저를 테스트하고 핑거프린트가 얼마나 고유한지 알려주는 도구를 운영합니다. 직접 테스트를 실행하든 안 하든 이 방법론은 유익합니다.
이 도구는 "엔트로피" 측정값을 계산합니다. 핑거프린트에 포함된 식별 정보의 비트 수입니다. 계산은 간단합니다 — 핑거프린트가 1만 명 중 1명과 일치한다면 약 13.3비트의 엔트로피 (log2(10000))입니다. 100만 명 중 1명이라면 약 20비트입니다. 이 도구는 어떤 특정 신호가 가장 많은 엔트로피를 기여하는지도 보여줍니다 — 예를 들어, Canvas 핑거프린트가 12비트, 폰트 목록이 8비트, 화면 해상도가 4비트, 시간대가 6비트일 수 있습니다. 합계가 총계입니다 (신호들이 독립적이라고 가정하는데, 완전히 그렇지는 않지만 유용한 근사치입니다).
참고로: 13비트의 엔트로피는 핑거프린트와 IP 주소 지리위치를 합치면 사실상 고유하다는 의미입니다. 20비트는 전 세계 모든 사람 중에서 고유하다는 의미입니다. 대부분의 프라이버시 프레임워크에서 "익명화된" 데이터의 기준은 약 10비트 어딘가입니다 — 그 아래라면 그럴듯한 부인이 가능합니다. 20비트 이상이면 개인적으로 식별 가능합니다. 기본 설정으로 실행되는 대부분의 브라우저는 18~22비트 범위의 핑거프린트를 만들어냅니다.
핑거프린트 신호 지도
주요 핑거프린트 신호의 출처, 쿠키 삭제로 제거되는지 (되지 않습니다), VPN이 방어하는지 (대부분 그렇지 않습니다), 브라우저 수준의 강화가 필요한지 (대부분 필요합니다):
| 신호 | 수집 위치 | 쿠키 삭제 후 남는가? | VPN 후 남는가? | 브라우저 강화 필요? |
|---|---|---|---|---|
| User-Agent + Client Hints | HTTP 헤더 | 예 (남음) | 예 (남음) | 예 (UA 위조 또는 축소) |
| Canvas 핑거프린트 | JS (canvas + GPU) | 예 (남음) | 예 (남음) | 예 (canvas 노이즈 또는 차단) |
| WebGL 핑거프린트 | JS (WebGL + GPU 드라이버) | 예 (남음) | 예 (남음) | 예 (비활성화 또는 무작위화) |
| 오디오 컨텍스트 | JS (Web Audio API) | 예 (남음) | 예 (남음) | 예 (차단 또는 퍼징) |
| 설치된 폰트 | JS (폰트 열거) | 예 (남음) | 예 (남음) | 예 (노출 폰트 제한) |
| 시간대 | JS (Intl API) | 예 (남음) | 아니요 (VPN 엔드포인트가 로컬 시간대와 불일치 — 핑거프린팅 가능) | 예 (위조 또는 조화) |
| IP 주소 | 네트워크 계층 | 예 (남음) | 아니요 (VPN이 숨겨줌) | 아니요 (VPN 사용) |
| TLS 핑거프린트 (JA3/JA4) | TLS Client Hello | 예 (남음) | 대부분 예 (남음 — 같은 TLS 라이브러리) | 아니요 (TLS 라이브러리가 결정) |
패턴은 일관됩니다. 핑거프린트에 기여하는 거의 모든 것이 쿠키 삭제와 VPN 사용 모두에서 살아남습니다. 쿠키와 IP 주소는 30개 이상의 신호 중 단 두 개일 뿐이며, 이 두 가지만 다루더라도 나머지에 대해서는 아무것도 달라지지 않습니다.
브라우저의 핑거프린트 저항 시도
Tor Browser — 황금 표준
Tor Browser는 핑거프린트 저항에서 가장 공격적인 소비자용 브라우저입니다. 모든 Tor Browser 사용자가 동일하게 보이도록 의도적으로 만듭니다. 기본 창 크기가 동일하고 (브라우저가 1000x1000으로 열리고 크기 조절을 거부하며, 최대화하면 콘텐츠가 레터박스됩니다), JavaScript에 보이는 폰트 세트가 동일하며, Canvas 동작이 동일하고 (모든 canvas 읽기가 화이트리스트만 반환하거나 사용자에게 묻습니다), WebGL 동작이 동일하며 (대부분 비활성화), 시간대가 동일합니다 (항상 UTC). 트레이드오프가 심각합니다 — 많은 웹사이트가 깨지고, Tor 네트워크로 인해 성능이 저하되며, 사용자 경험이 제한됩니다. 그러나 핑거프린트 저항은 다른 어떤 브라우저보다 극적으로 뛰어납니다. 웹사이트가 Tor Browser에서 보는 핑거프린트는 다른 모든 Tor Browser 사용자에게서 보는 핑거프린트와 거의 동일한데, 이것이 핑거프린트 신호를 실제로 익명화하는 유일하게 알려진 접근법입니다.
Brave — 전략적 무작위화
Brave는 다른 접근법을 취합니다. 모든 사용자를 동일하게 만드는 (Tor 전략) 대신, 같은 사용자가 방문할 때마다 약간 다르게 보이도록 만듭니다. Canvas 읽기에는 세션별 노이즈가 포함되고, 폰트 열거가 무작위화되며, 오디오 컨텍스트가 퍼징됩니다. 이 전략을 "무작위화" 또는 "세션별 쉴딩"이라고 부릅니다. 단일 방문 내의 고유성을 줄이지는 않지만, 방문 간 핑거프린트를 불안정하게 만들어 장기 추적을 방지합니다. 트레이드오프는 강력한 사기 방지 탐지 (은행, 베팅)가 있는 일부 사이트가 불일치를 의심스럽게 플래그할 수 있다는 것입니다.
Firefox resistFingerprinting
Firefox에는 Tor Browser에서 파생된 방어 스위트를 활성화하는 숨겨진 설정인 privacy.resistFingerprinting이 있습니다. 고정된 창 크기, 고정된 시간대 (UTC), 제한된 폰트 가시성, canvas 읽기 프롬프트, 기타 여러 조치가 포함됩니다. 이 기능에 대한 Mozilla 문서는 전체 동작 세트를 설명합니다. Tor 네트워크 없이 Tor Browser의 핑거프린트 동작에 가장 근접할 수 있으며, 표준 Firefox 설치에서 작동합니다. 호환성 트레이드오프가 상당합니다 — 많은 사이트가 시각적으로 깨지고, 일부는 기능적으로 깨집니다 — 그것이 기본으로 켜지지 않는 이유입니다.
Safari ITP 및 그 이상
Safari의 지능형 추적 방지 (ITP)는 일부 핑거프린팅 벡터를 다루지만 주로 저장소를 통한 크로스사이트 추적에 집중합니다. Safari 14 이상에서는 폰트 열거 제한과 몇 가지 다른 핑거프린트 노출 영역 축소가 추가되었습니다. Safari 17에서는 Apple 프라이버시 팀이 식별한 알려진 핑거프린팅 스크립트를 적극적으로 차단하는 고급 추적 및 핑거프린트 방지가 추가되었습니다. 접근법은 보수적입니다 — Apple은 사이트 호환성을 중요시합니다 — 그러나 매 릴리스마다 더 공격적이 되고 있습니다.
네트워크 수준 방어가 할 수 있는 것과 할 수 없는 것
VPN, 프라이버시 중심 DNS 리졸버, 네트워크 계층의 트래커 필터링은 함께 프라이버시 문제의 일부를 다루지만 — 구체적으로는 핑거프린팅 부분이 아닙니다. 각 계층이 무엇을 다루는지 솔직하게 말할 가치가 있습니다:
- VPN은 IP 주소를 숨깁니다 — 목적지 사이트에서 지리적 위치를 숨기고 ISP에서 어떤 사이트를 방문하는지 숨기는 데 유용합니다. JavaScript 계층 핑거프린트 신호에는 영향을 미치지 않습니다. 사이트는 여전히 Canvas, 폰트, GPU, 시간대를 볼 수 있습니다 — 단지 다른 IP에서일 뿐입니다.
- DNS 수준 필터링은 알려진 핑거프린팅 스크립트를 차단합니다 — 네트워크 계층에서 알려진 핑거프린팅 도메인 (
fingerprintjs.com또는 핑거프린팅을 번들하는 다양한 애드테크 엔드포인트 등)으로의 요청을 차단할 수 있습니다. 이것은 부분적이지만 실질적입니다. 가장 일반적인 핑거프린터들이 아예 실행되지 못하게 막습니다. 자체 퍼스트파티 도메인에 핑거프린팅 코드를 번들하는 사이트는 이 방법으로 차단되지 않습니다. DNS 필터링 메커니즘은 온라인 추적 차단 방법 글에서 다룹니다. - 트래커 필터링 — DNS 필터링과 유사하지만 도메인이 아닌 URL에서 작동합니다. 공유 CDN 도메인에서도 독특한 경로로 로드되는 핑거프린터에 효과적입니다. 트래커 필터링 기능을 참조하세요.
- 디코이 트래픽 — 트래픽 분석 스타일의 위협을 다루지만 핑거프린팅은 아닙니다. 두 위협 모델은 별개입니다. 디코이 네트워크에 대한 별도 글이 있습니다.
솔직한 표현: 네트워크 수준 방어는 알려진 스크립트 중 많은 것을 차단함으로써 핑거프린팅이 얼마나 많이 발생하는지를 줄입니다. 핑거프린팅이 실제로 발생할 때 핑거프린트가 얼마나 식별 가능한지를 줄이지는 않습니다 — 그것은 브라우저 수준의 문제입니다.
솔직한 현재 상태 — 완벽한 저항은 어렵다
핑거프린트 저항에 대해 명시적으로 말할 가치가 있는 몇 가지 불편한 진실:
완벽한 저항은 웹을 망가뜨리지 않고는 아마 불가능합니다. 웹 플랫폼은 핑거프린팅이 악용하는 신호들 중 많은 것에 진정으로 접근할 필요가 있습니다. 레이아웃에는 화면 크기가 필요하고, 국제화에는 언어와 시간대가 필요하며, 적응형 콘텐츠에는 기기 기능이 필요합니다. 핑거프린팅이 사용하는 신호들은 인공물이 아닙니다 — 플랫폼이 합법적인 이유로 노출하는 실제 속성들입니다. 완전히 제거하면 너무 많은 것이 깨집니다.
"고유하게 보이는" 저항은 저항이 없는 것보다 나쁩니다. 확장 프로그램, 커스텀 폰트, 커스텀 설정으로 브라우저를 많이 커스터마이징하면 기본 사용자보다 더 고유해집니다, 덜 고유한 것이 아니라. Tor Browser 전략이 효과적인 이유는 모든 Tor Browser 사용자가 동일해 보이기 때문입니다. 커스텀 브라우저 구성에 12개의 프라이버시 확장을 설치하는 전략은 원래보다 더 식별 가능한 핑거프린트를 만들어냅니다.
군비 경쟁은 계속됩니다. 브라우저 수준 방어가 추가되면, 핑거프린팅 스크립트가 악용할 새로운 신호를 찾습니다. 새로운 API (battery, gamepad, WebGPU, device orientation)가 새로운 핑거프린트 노출 영역을 도입합니다. 완화책은 시간이 지나면 효과를 잃습니다. 최신 기술은 매년 또는 그 정도로 변합니다. 이 글에 설명된 모든 것은 작성 시점에는 사실이었지만 18개월 후에는 수정이 필요할 수 있습니다.
사기 방지 시스템도 핑거프린팅을 사용합니다. 은행에 로그인할 때, 은행은 계정 탈취를 탐지하기 위해 기기를 핑거프린팅합니다 ("이 로그인은 이전에 본 적 없는 기기에서 왔습니다"). 공격적인 핑거프린트 저항은 세션을 의심스럽게 표시할 수 있습니다. 추적에 대항하는 도구는 사기 방지 탐지도 무력화합니다 — 이것은 실제 트레이드오프이며 부작용이 아닙니다. 당신의 특정 위험 프로필을 고려할 가치가 있습니다.
다양한 위협 모델에 대한 실용적 저항 수준
올바른 핑거프린트 저항 수준은 무엇을 방어하려는지에 따라 다릅니다. 몇 가지 일반적인 시나리오:
일상적 프라이버시 ("애드테크가 나를 프로파일링하는 것이 싫다")
기본 추적 방지 설정이 켜진 표준 브라우저 (Safari, Firefox, Brave)와 네트워크 수준 트래커 필터링. 이것은 기성품 핑거프린팅 스크립트의 대부분 (알려진 서드파티 도메인에서 로드되는)을 차단하고 저장소를 통한 크로스사이트 추적을 제한합니다. 사이트가 계산하려고 한다면 핑거프린트는 여전히 개별적으로 식별 가능하지만, 대부분의 사이트는 신경 쓰지 않습니다 — 수익에 중요하지 않은 사이트에서는 비용 대비 편익이 정당화되지 않습니다. 기본 프라이버시 자세는 실질적으로 사용성 비용 없이 위협의 80%를 처리합니다.
감시 저항 ("나는 언론인, 활동가, 또는 연구자다")
익명으로 하고 싶은 활동에는 Tor Browser. 다른 모든 것에는 별도의 표준 브라우저. 두 브라우저 사이에서 신원을 혼합하지 마세요. Tor Browser 내에서도 행동 핑거프린팅 (타이핑 리듬, 탐색 패턴)이 충분히 동기부여된 적대자에게 당신을 식별할 수 있다는 것을 인식하세요. 이 위협 모델의 구체적인 사항은 Tor Project 자체 문서가 적합한 곳입니다. 네트워크 수준 방어가 도움이 되지만 브라우저가 주요 방어 표면입니다.
국가 수준 적대자
솔직한 평가: 네트워크 관찰, 기기 핑거프린팅, 행동 분석, 전통적인 정보 활동을 결합할 자원을 가진 국가 수준 적대자에 대해서는, 브라우저 수준 핑거프린트 저항은 많은 요소 중 하나의 입력에 불과합니다. Tor Browser는 여전히 유용합니다 (비용을 높이기 때문에), 그러나 운영 보안 관행 (격리된 기기, 철저한 신원 분리, OPSEC 훈련)이 어떤 단일 브라우저 구성보다 더 중요합니다. 이것이 Tor Project가 명시적으로 설계하는 위협 모델입니다. 소비자 프라이버시 도구는 이를 위해 만들어지지 않았습니다.
대부분의 독자들 — 처음 두 위협 모델 — 에게 실용적 조언은: 현대의 프라이버시를 존중하는 브라우저 (합리적인 설정의 Brave, Firefox, 또는 Safari)를 사용하고, 내장 추적 방지를 활성화하며, 그 위에 네트워크 수준 필터링을 추가하고, 핑거프린팅이 어떤 소비자 도구도 완전히 해결하지 못하는 실질적인 잔여 위험이라는 것을 인식하세요. 조합은 기본값보다 의미 있게 낫습니다 — 없으면 방문하는 모든 사이트에서 개별적으로 식별 가능합니다. 있으면 핑거프린팅에 구체적으로 투자하고 엔지니어링 노력을 기꺼이 쓰는 사이트에서 주로 식별 가능합니다.
Casper's Cloak은 이 방어 스택의 네트워크 계층 부분을 다룹니다. 트래커 필터링은 광범위한 애드테크 및 분석 생태계와 함께 DNS 계층에서 알려진 핑거프린팅 엔드포인트를 차단합니다. VPN 터널은 IP를 숨기고 ISP가 어떤 사이트를 방문하는지 관찰하지 못하게 합니다. 둘 다 브라우저 수준 핑거프린트 노출 영역은 다루지 않습니다 — 그것을 위해서는 브라우저를 신중하게 선택하고 위협 모델이 정당화할 때 Tor Browser를 고려하세요. 잘 선택한 브라우저 + 네트워크 수준 필터링의 조합이 대부분의 사용자에게 현실적인 최선의 자세이며, 기본값보다 실질적으로 낫습니다.
정식 참조 및 빠른 개인 엔트로피 측정을 위해, 실제로 사용하는 브라우저에서 EFF의 Cover Your Tracks 도구를 실행하세요. 결과는 현재 설정이 얼마나 식별 가능한지를 구체적인 엔트로피 비트로 알려줄 것입니다. 그 다음부터 프라이버시와 사용성 사이의 트레이드오프가 막연한 "더 많은 프라이버시"를 향한 몸짓이 아니라 정량적 결정이 됩니다.
결론: 핑거프린트 저항은 실재하고, 불완전하며, 올바른 자세는 위협 모델에 따라 다릅니다. "핑거프린팅을 어떻게 막나요?"에 대한 솔직한 답은 "완전히 막을 수는 없습니다 — 그러나 누가 할 수 있는지, 무엇을 보는지, 방문 간 식별자가 얼마나 안정적인지를 실질적으로 줄일 수 있습니다."