브라우저 핑거프린트 테스트
쿠키를 삭제해도 브라우저는 웹사이트에 자신에 대해 많은 것을 계속 알려 줍니다. 화면, 시간대, 언어, 글꼴, 그래픽을 그리는 방식 등입니다. 이 정보들이 모여 핑거프린트(지문)가 됩니다. 여기서는 NoCall의 봇 차단 시스템인 ByteGuard가 이를 바탕으로 내 브라우저에 대해 계산한 ID를 볼 수 있습니다.
내 핑거프린트 ID
ID를 계산하는 중…
시크릿 창에서는 바뀔까요?
같은 페이지를 개인정보 보호 창이나 시크릿 창에서 열고 ID를 비교해 보세요. 같다면 사이트는 쿠키 없이도 나를 알아보는 것입니다.
비교를 위해 마지막 ID는 이 브라우저(localStorage)에만 저장됩니다.
내 브라우저가 나에 대해 알려 주는 것
- 화면
- …
- 시간대
- …
- 언어
- …
- 플랫폼
- …
- 쿠키
- …
이 신호들은 바로 여기, 내 브라우저 안에서 읽히며 어디로도 전송되지 않습니다.
이 페이지는 새로운 정보를 저장하지 않으며 데이터를 판매하지 않습니다. 이 ID는 ByteGuard가 NoCall을 봇으로부터 보호하기 위해 이미 사용하는 것과 같습니다.
브라우저 핑거프린트란
브라우저 핑거프린트는 웹사이트를 방문할 때 브라우저와 기기가 드러내는 특성으로 계산한 식별자입니다. 어느 하나만으로는 나를 식별할 수 없지만, 수십 가지 값의 조합은 대개 아주 드물어서 내 브라우저를 거의 모든 다른 브라우저와 구별할 수 있습니다.
쿠키와 달리 핑거프린트는 기기에 저장되지 않고 방문할 때마다 새로 계산됩니다. 그래서 사이트 데이터 목록에 나타나지 않고, 방문 기록을 지워도 사라지지 않습니다.
내 브라우저를 고유하게 만드는 신호
가장 흔히 쓰이는 신호들입니다. 더 많이 조합할수록 브라우저끼리 구별하기가 쉬워집니다.
- Canvas
- 사이트가 브라우저에 글자나 도형을 그리게 한 뒤 픽셀을 읽어 옵니다. 그래픽 카드, 운영체제, 글꼴 부드럽게 처리 방식 때문에 결과가 기기마다 조금씩 달라집니다.
- 글꼴
- 설치된 글꼴은 운영체제와 Office, Adobe 같은 사용 중인 소프트웨어에 따라 달라집니다. 텍스트가 그려지는 모양을 측정하면 알아낼 수 있습니다.
- 화면
- 해상도, 작업 표시줄을 뺀 나머지 공간, 픽셀 밀도, 색 깊이.
- GPU
- WebGL을 통해 브라우저는 그래픽 카드의 제조사와 모델, 3D 장면을 렌더링하는 방식을 드러낼 수 있습니다.
- 시간대
- 시스템의 시간대와 사용하는 날짜·시간 형식.
- 언어
- 브라우저가 모든 사이트에 보내는 선호 언어 목록과 그 순서.
- TLS
- 페이지가 로드되기 전에 브라우저는 보안 연결을 협상합니다. 이 TLS 인사 메시지에 담긴 암호화 방식과 확장의 순서(JA3, JA4 같은 핑거프린트로 요약됨)를 보면 JavaScript 없이도 어떤 브라우저의 어떤 버전인지 드러납니다.
쿠키를 지우거나 시크릿 모드를 써도 바뀌지 않는 이유
개인정보 보호 모드나 시크릿 모드는 창을 닫은 뒤 방문 기록, 쿠키, 양식 데이터를 남기지 않게 할 뿐입니다. 화면, 그래픽 카드, 글꼴, 시간대, 언어는 그대로이므로 결과로 나오는 핑거프린트도 대개 똑같습니다.
일부 브라우저는 개인정보 보호 창에서 무언가를 바꾸기도 합니다. Safari는 고급 핑거프린팅 보호를 적용하고, Brave는 사이트별·세션별로 작은 무작위 변화를 더합니다. 개인정보 보호 창에서 다른 ID가 보인다면 내 브라우저가 그중 하나입니다.
어디에 쓰일까: 사기 방지, 그리고 추적
은행, 쇼핑몰, 그리고 이런 사이트들은 사기를 막기 위해 핑거프린트를 사용합니다. 수천 건의 요청을 보내는 봇을 찾아내고, 새 기기에서 로그인하면 알리고, 한 사람이 수백 개의 계정을 만드는 것을 막는 식입니다. NoCall에서는 ByteGuard가 이를 사용해 전화번호에 대한 신고와 댓글이 자동화된 프로그램이 아닌 사람에게서 오도록 합니다.
같은 기술로 광고를 위해 사이트에서 사이트로 나를 따라다닐 수도 있습니다. 쿠키 없이, 내가 알아채지 못하게 말이죠. 유럽연합에서는 ePrivacy 규정에 따라 기기 정보에 대한 이런 접근을 쿠키와 똑같이 취급하므로, 광고용 추적에는 내 동의가 필요합니다.
여기서 보는 ID는 NoCall에만 묶여 있습니다. ByteGuard는 사이트마다 다른 키로 ID를 만들기 때문에, ByteGuard로 보호되는 다른 사이트에서는 같은 브라우저라도 다른 ID가 보입니다.
핑거프린트를 줄이는 방법
완전히 없앨 수는 없지만, 내 브라우저를 다른 사람들의 브라우저와 더 비슷하게 만들 수는 있습니다.
- Tor Browser는 모든 사용자가 같은 화면, 글꼴, 설정을 보이게 하므로 핑거프린트로 나를 따로 가려낼 수 없게 됩니다.
- Brave는 canvas, 오디오 등 여러 신호에 사이트마다 다른 무작위 변화를 더합니다.
- Firefox에서는 privacy.resistFingerprinting 설정(about:config에 있음)이 시간대를 UTC로 바꾸고, 창 크기를 반올림하고, 다른 신호들도 고르게 맞춥니다. 추적 방지 기능은 알려진 핑거프린팅 스크립트도 차단합니다.
- 확장 프로그램은 적게 설치하세요. 하나하나가 나를 눈에 띄게 하는 정보를 더할 수 있습니다.
- 브라우저를 최신 상태로 유지하고, 아주 특이한 설정은 피하세요. 대부분의 사람과 비슷해 보이는 것이 나를 지켜 줍니다.
자주 묻는 질문
브라우저 핑거프린트 ID란 무엇인가요?
내 브라우저와 기기의 특성을 요약한 코드입니다. 두 번의 방문에서 같은 코드가 나오면, 사이트는 쿠키 없이도 같은 브라우저에서 왔다는 것을 압니다.
시크릿 모드를 써도 나를 알아보나요?
대개는 그렇습니다. 시크릿 모드는 닫을 때 쿠키와 방문 기록을 지우지만, 화면, 그래픽 카드, 글꼴은 바꾸지 않습니다. 직접 해 보세요. 이 페이지를 개인정보 보호 창에서 열고 ID를 비교해 보면 됩니다.
VPN을 쓰면 핑거프린트가 바뀌나요?
아니요. VPN은 IP 주소를 바꾸지만, 핑거프린트는 브라우저와 기기 데이터로 계산됩니다. 오히려 시간대 때문에 IP가 실제 위치와 맞지 않는다는 사실이 드러날 수도 있습니다.
브라우저 핑거프린팅은 합법인가요?
목적에 따라 다릅니다. 봇이나 사기를 막는 등 서비스의 보안을 위해 쓰는 것은 흔한 일입니다. 광고용 추적의 경우, 유럽연합은 쿠키와 마찬가지로 내 동의를 요구합니다.
NoCall은 내 ID로 무엇을 하나요?
ByteGuard는 사람과 봇을 구별하고, 수백 건의 허위 신고를 보내는 것 같은 악용을 막는 데 이 ID를 씁니다. NoCall은 이를 판매하거나 광고에 쓰지 않으며, 이 ID는 NoCall에서만 작동합니다.
내 ID가 왜 바뀌었나요?
브라우저를 업데이트했거나, 화면이나 확대/축소 비율을 바꿨거나, 글꼴을 설치했거나, Brave나 개인정보 보호 모드의 Safari처럼 무작위 변화를 더하는 브라우저를 쓰면 바뀔 수 있습니다.
