HTML5のBattery Status APIでユーザー追跡の可能性が指摘される

2015年8月10日 12:42

印刷

記事提供元:スラド

HTML5のBattery Status APIで取得したデータを利用して、Webサイトがユーザーを特定する可能性が指摘されている(論文: PDFThe Guardianの記事Mashableの記事V3.co.ukの記事)。

Battery Status APIは、Webサイトがモバイルデバイスやノートパソコンのバッテリー状態を把握し、必要に応じて低消費電力モードと高パフォーマンスモードに切り替えられるようにするためのもの。現在のところ、Battery Status APIはChromeおよびOpera、Firefoxで利用できる。W3Cではプライバシーへの影響は少ないとして、ユーザーの承認を得ることなく呼び出せるようにしている。

Battery Status APIでは充電中かどうか、バッテリー残り時間/充電完了までの残り時間(秒)、バッテリー残量レベル(0.0~1.0)といった情報のほか、充電状態の変化などのイベントが利用できる。研究チームがFirefoxを使用して検証した環境では、残り時間と残量の組み合わせは14,172,310通りとなり、充電時間を加えるとその2倍になるという。そのため、取得した情報がユーザーを識別するフィンガープリントとして使われる可能性もある。

(続く...)
バッテリー残り時間はPCの動作状況によって変化するため、長期間にわたってユーザーを追跡することは困難とみられる。ただし、情報は30秒に1回しか更新されないので、あるWebサイトを訪れた直後にプライベートブラウズモードで同じサイトを再度訪れた場合など、ユーザーが特定される可能性がある。サードパーティーのスクリプトを複数のWebサイトに配置すれば、ユーザー情報をサイト間でリンクさせることも可能だ。また、NAT越しにアクセスする企業ユーザーの場合にも、バッテリーの情報をもとにして識別が可能になる。

なお、WindowsやMac OS X上のFirefoxで返されるバッテリー残量レベルは小数点以下2桁となっている。一方、UPowerからバッテリー残量を取得するLinux上のFirefoxでは64ビットの倍精度浮動小数点数が返されるため、この値からバッテリーの容量を推定することも可能だという。仕様上のバッテリー容量は同じようなものが多いが、使用期間や使用状況によってバッテリー容量の減少度が異なるため、より正確にユーザーを特定することが可能となる。

研究チームではBattery Status APIで取得可能なバッテリー残量レベルの精度を下げることや、APIの使用にユーザーの承認を必要にするなどの対策を提案している。 スラドのコメントを読む | ITセクション | セキュリティ | 電力 | インターネット | デベロッパー | プライバシ

 関連ストーリー:
Google、Flash広告を自動的にHTML5ベースに変換する試みを開始 2015年02月28日
Androidスマートフォンの位置をバッテリの残量変化から特定する技術 2015年02月26日
W3Cで「HTML5 Japanese Community Group」が設立される 2015年01月23日
W3CがHTML5を勧告 2014年10月30日
HTML5 の Web ストレージ API に HDD の空き容量を簡単に埋められるバグ 2013年03月04日

※この記事はスラドから提供を受けて配信しています。

関連記事