VPNを別の国に切り替えてショップを再読み込みしても、同じ買い物かごのまま名前で迎えられます。この瞬間に指紋という言葉が会話に入り、たいていは「あなたのブラウザは百万分の一」と主張するテストサイトが続きます。代わりに問題を順番に扱ってください。通常のページ要求ではトンネルが変えるのは正確に一つのフィールドだけですが、ブラウザは数十項目を報告し続け、テストが測るのは見た目より狭い範囲です。この三つを分けるのが五つの手順です。

ステップ 1:退屈な「なぜ見分けられたか」を除外する

まずサインアウトした状態で始めます。プライベートウィンドウを開き、同じページを訪れて、まだあなたを知っているような振る舞いをするか確かめます。Cookie、ローカルストレージ、そして有効なセッションが「VPN越しに見えた」という報告の大半を説明し、どれも指紋ではありません。

プライベートウィンドウでもページが何かを認識するなら、持ち越した目に見える状態を見てください。別タブの同じアカウント、保存されたフォーム入力、あなたの住所を自動入力するパスワードマネージャー、URLのトークンで許可したサイトなどです。いずれも保存された参照であり、プロファイルを消せば取り除かれます。

セッションのないきれいなプロファイルでも、以前の訪問と相関する認識が残る場合にだけ、指紋の話をする価値があります。これは「VPNが動かない」よりずっと狭い主張で、実際に検証できるのはこちらです。

ステップ 2:出口を変え、変わらなかったものを列挙する

トンネルを立ち上げ、次にトンネルが動かすはずの唯一の値、つまりサーバーが見るアドレスを確認します。アドレス検索ページならどれでも表示しますし、自分で管理するエンドポイントから次のように読むこともできます:curl -s https://your-endpoint.example/ip。使うエコーサービスはどれも要求を見るので、自分が所有するエンドポイントならそれが他人のログに残りません。変わったことを確認します。次にブラウザが今も自分について何を報告しているかを列挙してください。そのほとんどはパケットヘッダーを旅しません。

What a page can readChanged by the VPN?Where it comes from
Public source addressYesThe tunnel's exit
WebRTC candidate addressesSometimesBrowser network stack and leak protection
User agent stringNoBrowser build and platform
Language preference listNoBrowser and OS settings
Timezone offsetNoThe operating system clock
Screen size, colour depth, pixel ratioNoDisplay and window state
Installed fonts, canvas and WebGL outputNoRendering stack and GPU
Accept-Language, client hintsNoBrowser configuration

タイムゾーンの行は、立ち止まる価値のある行です。これはオペレーティングシステムから読まれるので、時計がまだ自宅の都市を言っているのにトンネルが通信を別の大陸へ移すと、それ自体が目立つ観察になる不一致が生まれます。言語リストが一方の国にあり、出口がもう一方にある場合も同じで、何かの証拠ではなく、目立つ組み合わせにすぎません。WebRTCは表の中の例外で、メディアやデータのチャネルを開くページは候補アドレスを集められ、トンネルを上げた状態では候補が出口アドレスを運ぶことも、漏えい対策がなければローカルのアドレスをなお提示することもあります。

ステップ 3:指紋テストは「何を報告するか」として読む

EFFのCover Your Tracksはふつう最初に訪れる場所です。あなたのブラウザがそのページにさらす特徴を示し、その標本のうち何割のブラウザがそれらを共有するかについて判定を出します。細かい但し書きを読んでください。標本はテストを受けた人たちであり、信号はそのページが集めると決めたものであり、判定はエントロピーのビット数の推定であって国勢調査ではありません。

つまり「あなたのブラウザは唯一無二」とは、そのデータセットの中で、今日、その探針の組において唯一無二という意味です。サイトがあなたの名前を導けるという意味ではなく、永続的な性質でもありません。ブラウザの更新で、あなたが何も触らなくても値は動きえます。

テストは測定器として使うもので、最適化する得点ではありません。報告された値を記録し、一つだけ変えて、同じ項目を比べてください。ブラウザ側で何も変わっていないのに読み取りが動いたなら、その変化はあなたではなく標本のノイズです。

ステップ 4:本当に自分のものと言える特徴を変える

これで具体的な行に手を打てます。言語リスト、タイムゾーン、地域の書式は設定であり、それらを自分が名乗る場所に合わせるのは小細工ではなく一貫した振る舞いです。文脈ごとに別のブラウザプロファイルを使えばサイトのデータとログインが分かれ、ステップ 1 の認識にはどんな指紋対策拡張よりも確実に対処できます。

強化系の拡張を足すという定番の助言には慎重になってください。どれも観察可能な表面を変え、珍しい設定の組み合わせはあなたをありふれた存在ではなく希少な存在にしえます。ページが欠落として検出できるAPIを塞ぐものもあれば、特徴的な当て布の痕跡を残すものもあります。拡張の人気は識別されにくさを下げる証拠ではありません。

これを本気で扱うブラウザは、構造的に違うことをします。標準化です。Tor Browserは全員が同じ値を報告することを目指し、Firefoxは実際の値ではなく小さな集合からの標準化された値を報告する保護モードを備え、Safariはサイトが読めるものを制限します。これは一貫して適用される設計判断であり、W3Cの指紋に関するガイダンスは、この問題で標準化が利用者ごとのランダム化に勝る理由を説明しています。

ステップ 5:本当に必要だった層を決める

「私を隠して」には三つの別物が束ねられています。ネットワーク経路、ブラウザの観察可能な表面、そしてあなたのアカウントです。VPNが扱うのは一つ目です。二つ目には触れず、三つ目には役立ちません。ログインは最も直接的な識別子であり、出口を変えても生き残ります。

目的が「サイトに二つの訪問が関連していると分からせない」ことなら、ブラウザの層も要ります。文脈ごとのきれいなプロファイル、一貫した設定、共有ログインなし、ということです。目的が「サイトにあなたが誰かをまったく分からせない」ことなら、それは脅威モデルの話であり、経路とブラウザ水準の標準化を束ねるTor Browserが一貫した選択で、トンネルの後ろの普通のブラウザではありません。

目的が「サイトに別の都市を見せ、プロバイダには何も見せない」ことだけなら、トンネルだけで本当に足り、指紋テストの結果はその目的には無関係です。ここでの失望の多くは、一つの層を買って三つを期待することから来ます。

手順を誠実に保つ順序は次のとおりです:

  • トンネルを責める前に、きれいなプロファイルとログインなしで認識を再現する。
  • 出口アドレスが変わったことを確認し、どのブラウザ値が変わらなかったかを記録する。
  • 見出しの得点ではなく、同じテスト項目を一つの変更の前後で比べる。
  • 拡張を足す前に、タイムゾーンと言語を自分の物語に合わせる。
  • 目的に合う層を選ぶ。ネットワーク、ブラウザの表面、アカウントのいずれか。

関連記事