ITmedia NEWS > セキュリティ >
連載
» 2020年01月09日 07時00分 公開

ITりてらしぃのすゝめ:「クッキー」から始めるプライバシーの旅 (1/2)

Webブラウザの「クッキー」という仕組み。リクナビの内定辞退率の予測にまつわる問題でやり玉に上がりましたが、そもそもどんな仕組みなのでしょうか。クッキーの理解から、プライバシーを考えていきます。

[宮田健,ITmedia]

 私見ですが、日本ではどうも「プライバシー」に対するこだわりが薄い気がします。プライバシーの話をすると、「自分の個人情報が漏れたところで、何の問題もないよ?」や、「悪いことをしていなければ問題はない」と返されます。人は生活をする上で、さまざまな「情報」を作り出します。例えば購入したもの、歩いた場所や食べたもの。その一部は自らが写真などの形でSNSに投稿し、公開状態にしていたりもするでしょう。その感覚の延長線上に、そういった「プライバシーなんてそこまで気にするもの?」という考え方があるのかもしれません。

 果たしてこのような情報に無頓着でいいのでしょうか。今回は多くの方がおそらくよく知らないまま利用している、Webブラウザのとある機能から、パーソナルデータとプライバシーについて考えてみましょう。

毎日食べているけど目に見えない? 「クッキー」とは何か

割ると中から「メッセージ」が出てくる「フォーチュンクッキー」 

 Webブラウザにおける「クッキー」というものを聞いたことがありますか? これは「あなたがあなたであることを示す仕組み」です。より正確に述べると、Webサイトが閲覧者のWebブラウザを通じ、閲覧者のデバイスに保存する小さなテキストファイルのことを指しています。

 普段何げなく利用しているWebブラウザは、例えばあるページのボタンを押して次のページに遷移したとしても、その前後関係を把握しているわけではありません。例えば、

ユーザー 「私はアリスです。このページを見せてください」

Webサーバ 「はい、どうぞ」

ユーザー 「では、この服を買いたいと思います」

Webサーバ 「あなたはいったい誰ですか?」

 ……と、大変空気の読めないやりとりをしているのです。こうならぬよう、WebブラウザやWebアプリの方で状態を管理する必要があります。クッキーとは、その状態を管理するための仕組みだと考えてください。

 Webサーバに初めてアクセスしたとき、Webサーバはクッキーに記録すべき情報をWebブラウザに送信し、Webブラウザはユーザーのデバイスにそれを記録します。2回目以降、WebサーバにアクセスするときにWebブラウザ側がクッキーを持っていたら、そのクッキー情報とともにリクエストを送ります。これにより、Webサーバ側はどのWebブラウザがアクセスしてきたのかが分かるので、利用者の状態を管理できるのです。先ほどのやりとりを再度考えると、下記のようになるでしょう。

ユーザー 「私はアリスです。このページを見せてください」

Webサーバ 「はい、どうぞ。これ、あなたのクッキーです」

ユーザー 「では、この服を買いたいと思います。もらったクッキーはこれですよ」

Webサーバ 「クッキーの情報を見るとあなたはアリスのようですね。ではレジへどうぞ」

 これはインターネットのwebブラウジングにおいて、基本的な動作の一つとして長年利用されてきています。おそらく、多くの方は意識することすらないでしょう。「そんなの当たり前でしょ?」ということが、こうやって実現されているのです。

クッキーでできてしまうこと

 このクッキーという仕組みは、「セッション」を管理するためにもつかわれます。セッションはあなたをあなたと認識するための、サーバ側に保存される仕組みです。IDとパスワードそのものをクッキーに記録してしまうと盗聴される可能性があるので、通常は有効期限を設定した、ワンタイムな文字列をセッションIDとして保存します。これがあるからこそ、ページ遷移するたびにパスワードを入れるといったことは不要になるわけです。

 このような利用用途があるため、クッキーというファイルそのものは利用者以外から見られては困ります。そのため、クッキーは生成元のWebサーバのみが閲覧できる仕組みになっています(Same-Origin Policy)。そのサービスにおいて、利用者がどのページを見たかということを固有のセッションIDでひも付けられますが、そのサービスの運営者ならばログでも管理できるので、この点にあまり意味はありません。別のサービスを閲覧した場合、当然セッションIDは異なりますので、サービスを横断しての履歴管理はできません。これは当たり前ですね。

 しかし、実はこれを「横断」でやってしまうことができてしまいます。例えば多くのWebサイトには、「横断的に表示されるもの」がたくさんあります。例えば「広告」や「SNSボタン」がそうでしょう。これらのボタンは今の見ているサーバからではなく、広告配信サーバやSNSを提供するサーバから表示されていますので、そのサーバが発行するクッキーが利用されます。

 もし同じWebブラウザを利用し、別のサイトを見た場合に同じ広告が張り付けられていたとしたら、クッキーの利用で「同じユーザーである」ということが判別できるわけです。例えば「マンション」と検索すると、いろいろな他のサイトでもマンションの広告が表示されるのは、こういった仕組みを利用しているからです。このような“利用者のトラッキング”が可能なものを、今見ているサイト以外のクッキーということで「サードパーティークッキー」などと呼んでいます。

 サードパーティークッキーの利用方法を含め、クッキーそのものが脅威であるとか、これはスパイウェアの一種だということではありません。これは仕様通りの動きではありますが、昨今プライバシーの観点から厳しく見られているのも確かです。以前も紹介しましたが、SafariやFirefoxなど、最新のブラウザではトラッキング目的のクッキーやサードパーティークッキーをブロックするなどの機能を備えたものが増え、利用者側である程度の制限を加えることも可能です。

       1|2 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.