※日経ソフトウエア 2019年3月号の記事を再構成

インターネット上のトラッキング技術「ブラウザーフィンガープリント」を3日間にわたって解説する。初回はWebサイトやネット広告にもはや欠かせない「Cookie(クッキー)」について改めて解説する。インターネット利用の利便性を高める半面、盗用されると不正利用につながる恐れもある。

Cookieはネット利用者を識別する技術 (c)Shutterstock

 Webブラウザーを使ってネットを閲覧しているとき、あなたはWebサイトやWeb広告からあなた自身を追跡(トラッキング)されている。そうすることで、ネット通販での買い物や、適切なレコメンデーション広告を、Webブラウザーはインターネット側から受け取っているのだ。そうした、ユーザーをトラッキングする技術として使われているのが、Cookieだ。

 しかし今、Cookieではない新しい技術が台頭してきているのをご存じだろうか。それが「ブラウザーフィンガープリント」だ。

 本稿では本日から3回にわたり、ネット上であなたをトラッキングする技術「ブラウザーフィンガープリント」について詳しく解説する。今回はCookieについておさらいし、次回はCookieとネット広告の関係、最後にブラウザーフィンガープリントの詳細を解説する。

 さて、なぜ「Cookie」に代わって「ブラウザーフィンガープリント」への移行が進んでいるのか? それはあのGDPR(EU一般データ保護規則)も絡んでいる。そのあたりの「事情」も解説する。

Cookieが果たす役割

 世の中で一般的に使われているWebブラウザーは、すべてCookieの機能を持っている。また、今では、Cookieが発行されないWebページはないといっても過言ではないだろう。Cookieは、ログインを伴うようなWebサイトでは、ほぼ利用されている技術だ(図1)。

図1●Cookieの基本的な仕組み

 本稿のメインの話題となるフィンガープリントを解説する前に、Cookieについておさらいしよう。初めてCookieについて知る人も、わかりやすく説明するのでお読みいただきたい。

 Cookieとは、WebブラウザーとWebサーバー間での状態を管理するためにWebブラウザーに実装されている技術だ。

 さっそく難しい言葉が出てきた。「WebブラウザーとWebサーバー間での状態を管理する」というのはどういうことだろうか。

 インターネットのWebページを閲覧するための通信プロトコルである「HTTP」は“ステートレスなプロトコル”だ。ステートレスなプロトコル、とはどういう意味かというと、「WebブラウザーとWebサーバー間での通信がどのような状態なのかを共有することができない」ということなのだ。

 例えば、通販サイトで買い物をすることを考えてみよう。あなたはWebブラウザーで通販サイトのWebサーバーにアクセスする。品物を選択し、買い物かごに入れ、レジに進んで決済する。このとき、「品物の選択」「買い物かご」「レジ」は別々のWebページに遷移していく。つまり、通販サイトで買い物をする画面の“状態”が異なっている。

 何気なくWebブラウザーで見ているこの“状態”だが、実はHTTPというプロトコルだけでは、この「WebブラウザーとWebサーバー間での状態を管理する」ことはできないのだ。つまりHTTPだけだと、「品物を選択する」と「買い物かごに入れる」が、同じユーザーの通信だとはわからなくなってしまう。これでは買い物はおぼつかない。

 そこでCookieの出番がやってくる。Cookie自体は、とても小さなデータだ。そのデータにはユーザーを識別する情報が入っている。Webブラウザーに実装されているCookieは、HTTP通信するたびにWebブラウザーとWebサーバー間でやり取りされる。やり取りされる通信ごとに、“通信の状態”が記録され、その情報もやり取りされる。つまり、「品物を選択する」と「買い物かごに入れる」が、同じユーザーの通信だとわかるようにしているのだ。

店舗デジタル化市場にマイクロソフトが本腰、日本独自支援を発表
ネット広告配信事業者はCookieをいかに利用しているか