2010-01-28

CookieもIPもなしで、ユーザーをトラックできるか

Panopticlick

異なるサイト間でユーザーを識別できる利点というのは、いくらでもある。たとえば広告だ。ユーザーが閲覧するサイトの傾向から、効果的な広告を表示させることができる。

プライバシーの問題はさておき、実際に利益になるなら、誰かがやる。

ユーザーをトラックングするにはどうすればいいか。これは、一般的には、CookieやIPアドレスが用いられる。これはつまり、そのユーザーであることを示す、十分にユニークなIDがあればいいのだ。

しかし、多くのユーザーのIPアドレスは、変動する。ユーザーはCookieを無効にしているかもしれないし、すぐに消すかもしれない。これらの古典的な方法以外に、ユーザーを特定する方法はないだろうか。

ブラウザは、実に多くの情報を送っている。たとえばユーザーエージェントだ。ユーザーエージェントは、もちろん完全にユニークなIDではない。しかし、同じユーザーエージェントを使っているユーザーが十分に少なければ、実用的なユニークIDとして機能するのではないか。

そのほかにも、ブラウザが送る情報の中に、IDとして使えそうなものは、たくさんある。一体、これらは実用的に使えるだろうか。

これを研究したのが、Panopticlickだ。アクセスすると、自分のブラウザが送っている情報の中で、とくにユーザーごとに変化する情報のエントロピーを推測してくれる。

ユーザーエージェント以外にも、実に様々な、ユーザーごとに変化する情報がある。たとえば、HTTP_ACCEPT ヘッダーだ。あるいは、ブラウザのプラグイン情報、タイムゾーン、スクリーンの解像度と色数。Flashを使えば、システムにインストールしているフォントまで調べることができる。

これだけの、ユーザーごとに変化する情報を組み合わせれば、たとえCookieを無効にしていて、IPをころころ変えるユーザーであっても、短期間の間ならば、トラックするのは可能かもしれない。

No comments: