このページは何をする?
どのサイトでも、開いた瞬間に動かせるスニファーを動かし、それで分かる「あなた」を文章にします:どこの出身らしいか、今どこにいるか、何を使い、何が好きか。
文章の空欄にカーソルを合わせると、どのスニファーから来たかが出ます。下の一覧には、各スニファーの読み方(右の列の API やヘッダー)と読み取った内容があります。どれも許可を求めるダイアログは出しません。
79 個のスニファー · 許可は求めない
たぶんの人で、今いるのは。ふだんの言葉は、パソコンの時計はで表示。
使っているのはで、ブラウザは。画面は、GPU はで、。
ネットには経由でつながっていて、。サイトのアドレスを調べる DNS は。。
派で、。。入っているフォントからは:。年齢は、。
CF-Connecting-IPrequest.cf.cityrequest.cf.latituderequest.cf.asOrganizationedns.ip-api.comrequest.cf.timezoneDNS PTRrequest.cf.colorequest.cf.tlsVersion/cdn-cgi/trace · kex, sni/cdn-cgi/trace · warpTLS ClientHelloDate.now()RTCPeerConnection · STUNWebRTC host candidatemyip.ipip.netapi.ip.sbchatgpt.com/cdn-cgi/traceclaude.ai/cdn-cgi/tracewww.cloudflare.com/cdn-cgi/traceCloudflare Radar · IPv4 / IPv6User-AgentAccept-LanguageSec-CH-UASec-CH-UA-PlatformAccept-EncodingDNT · Sec-GPCReferer · document.referrernavigator.languagesIntl.DateTimeFormatIntl …timeZoneIntl …hourCycleIntl.Locale weekInfoIntl.NumberFormatnavigator.keyboardspeechSynthesisError.messagecanvas.toDataURLWebGL getParameterOfflineAudioContextfonts → SHA-256SHA-256canvas × 2userAgentDatauserAgentData.brands…architecture · bitnessscreen · devicePixelRatiorequestAnimationFramescreen.isExtended · screenXinnerWidth · availHeightWebGL RENDERERnavigator.gpu adapter.infoWebGL2 · MAX_TEXTURE_SIZEhardwareConcurrencynavigator.deviceMemorymaxTouchPoints · pointernavigator.getBatterynavigator.connectionenumerateDevicesAudioContext.sampleRatePublicKeyCredentialbluetooth.getAvailabilityMediaSource.isTypeSupportedrequestMediaKeySystemAccessstorage.estimateprefers-color-schemeprefers-reduced-motioncolor-gamut · dynamic-rangeprefers-contrast · forced-colorsdisplay-modedoNotTrack · GPCnavigator.cookieEnabledpermissions.querypdfViewerEnablednavigator.webdriverbait elementwindow.ethereum · DOM markshistory.lengthcanvas measureTextどのサイトでも、開いた瞬間に動かせるスニファーを動かし、それで分かる「あなた」を文章にします:どこの出身らしいか、今どこにいるか、何を使い、何が好きか。
文章の空欄にカーソルを合わせると、どのスニファーから来たかが出ます。下の一覧には、各スニファーの読み方(右の列の API やヘッダー)と読み取った内容があります。どれも許可を求めるダイアログは出しません。
都市は IP アドレスから、Cloudflare の位置情報データベースで調べています。広告ネットワークが使うのと同じ種類のデータベースです。VPN を使っていれば VPN サーバーの都市になります。
国籍はブラウザの言語(zh-TW なら台湾、pt-BR ならブラジル)と、システムのタイムゾーンから推測します。どちらも VPN では変わりません。米国英語はどの端末でも初期設定なので、その場合はタイムゾーンで決めます。
ブラウザのどこにも年齢は書かれていないからです。広告ネットワークは行動から年齢や性別を推定します:どのサイトを訪れ、何を見て何を買ったか。同じフィンガープリントや Cookie でサイトをまたいでつなげることもよくあります。このページはそれを読まないので、作り話をせずに「分からない」と書きます。
文字や図形の描画(Canvas、WebGL)や音声処理のわずかな違い、インストール済みフォント、画面と各種設定。これをまとめてハッシュにすると、どのサイトでも同じ値になります。Cookie はいらず、プライベートウィンドウでも同じです。
IP に関係ないので、VPN では変わりません。対策のあるブラウザ(Brave、resistFingerprinting を有効にした Firefox、プライベートモードの Safari)はノイズを加えます。「フィンガープリント対策」の行で、あなたのブラウザがそうか分かります。
VPN やプロキシを使ったり UA を変えたりすると、サイトは各情報を互いに照らし合わせます。システムのタイムゾーンが IP と合わない、言語が別の国のもの、WebRTC のアドレスが VPN のものではない、データセンターの回線、UA と GPU が合わない、こうした点が目立ちます。
VPN の国の人に見せたいなら:システムのタイムゾーンを合わせ、WebRTC を切るか VPN 内に収めるブラウザを使い、住宅用の出口を使ってください。
されません。このサイトのサーバーが答えるのは 1 つのリクエスト(/api/me)だけで、中身はリクエストから元々見えるもの:あなたのアドレス、それに対する Cloudflare のデータ、ヘッダーです。ログは残しません。
出口と DNS リゾルバーを調べるため、ページはいくつかの外部サービスにも直接アクセスします(右の列に名前があります:IPIP.NET、IP.SB、chatgpt.com・claude.ai・cloudflare.com 上の Cloudflare trace、Cloudflare Radar、ip-api の DNS サーバー、STUN サーバー 2 つ)。これらにはあなたのアドレスが見えます。どのサイトを訪れたときとも同じです。それ以外はすべてブラウザ内で読み取り、外には出ません。コードはオープンソースです。
ページがあなたのブラウザ内に保存するのは 1 つだけで、外には送りません:前回の訪問の時刻・フィンガープリント・都市です。見分けられたかを示すために使い、ID カードの × で消せます。共有リンクには画像(ポートレート)だけが入り、アドレスと都市は入りません。
すべてのブラウザがすべての API を持っているわけではありません。キーボード配列、バッテリー、回線の種類、メモリ、Client Hints は Chromium 系だけ。Safari と Firefox は意図的に情報を減らしています。読めないのはプライバシーにとって良いことです。