iPhone の位置情報データに関する調査と、その活用方法
「私たちはあなたの住まいを知っている」。少なくとも、iPhone と iPad 向けの最新の iOS 4 に、iPhone の電源を入れている限り、その居場所の詳細を継続的に記録する追跡の仕組みがあることが発覚して、Apple はそう言えることになりました。この情報は iPhone 本体に保存されるだけでなく、iTunes で iPhone を同期した際に作成されるバックアップにも自動的に含まれます。
デジタルフォレンジックの世界では数か月前から知られていましたが、セキュリティ研究者の Pete Warden と Alasdair Allan のレポートをきっかけに一般にも知られるようになり、匿名性がまた少し小さくなったというニュースに反応して、ブログ記事やツイートが相次ぎ、インターネット上で大騒ぎになっています。しかし、このニュースは本当にそれほど深刻なのでしょうか。一般的な iPhone ユーザーは、どの程度心配すべきなのでしょうか。
iPhone や iPad は、どんな位置情報データを追跡しているのか?
この問題について調査を行った結果、iTunes バックアップファイルに含まれる位置情報データは、状況によっては懸念を引き起こすのに十分なものだと考えています。約 1 年分の位置情報データが入った iPhone を分析しました。大まかに言えば、このデータを使って、ある日にユーザーがおおよそどこにいたかを知ることができます。たとえば、ユーザーが今年の前半にモルディブへ休暇に出かけたときには、iPhone の位置情報のポイントがロンドンからモルディブへ飛ぶのがわかります。ただし、もっと具体的な場所まで絞り込むのは、それほど簡単ではありません。

Google Earth で表示した iPhone の位置情報追跡データ
このデータは携帯電話の基地局(アメリカの方々には「セルフォンタワー」)から得られているようなので、位置情報のポイントの精度はかなりばらつきます。都市部(または携帯電話の基地局が多い地域)では、通常、ユーザーを数百メートル以内の精度で追跡できます。田舎では状況が異なります。ある例では、ユーザーは 1 日ポーツマスにいたのですが、位置情報のプロットでは、その日のユーザーはポーツマス、サウサンプトン、ワイト島のあちこちにいることになっていました。さらに、Apple は何らかの理由で、このデータをリアルタイムでは保存しないことにしたようです。代わりに、位置情報はまとめられて、通常は 1 日に 1 回か 2 回、iPhone に記録されます。
そのため、3 つか 4 つの異なる場所が同じ日付/時刻で記録されることがあり、ユーザーが同時に複数の場所にいるように見えることがあります。それでも、ユーザーが何をしていたかの大まかな全体像を示すのに十分なデータがあることは明らかです。警察や治安機関は、より正確な位置情報データを得るために携帯電話事業者へ召喚状を出すという多額の費用をかけることなく、アリバイの立証や反証にこのデータを非常に有用だと感じるかもしれません。

iPhone Backup Extractor の無料の KML エクスポートオプション
iPhone をお持ちで、この iPhone にあなたについてどんな情報が表示されるのか気になる場合のために、iPhone Backup Extractor を更新し、位置情報データを CSV 形式(Excel での表示に適しています)または KML 形式(無料のソフトウェア Google Earth を使って地図上で表示できます)に抽出できるようにしました。
これは多くの人に懸念を与えている問題だと認識しているため、この機能を、制限なしで当社ソフトウェアの無料版に組み込むことにしました。ソフトウェアは当社のサイトからダウンロードできます。
consolidated.db:位置情報データの追跡
iOS では、consolidated.db ファイルに、携帯電話、GPS、Wi-Fi の位置情報データが保存されます。デバイスに何が保存されているのかをユーザーが知ることができるようにすることは、決して悪い考えではなく、私たちにとって重要な原則でもあり、これを明るみに出すことは悪いことではありません。
Apple は、デバイスとバックアップに、緯度経度の座標とタイムスタンプ以上のものを保存しています。その中の各テーブルに何が含まれているかを、以下に簡単にまとめます。
CellLocation(またはCdmaCellLocation):タイムスタンプ(時刻と日付)、緯度、経度、水平精度、高度(未設定)、垂直精度(未設定)、速度(未設定)CellLocationHarvest:携帯電話事業者(Orange、T-Mobile、O2、Vodafone)、タイムスタンプ(時刻と日付)、緯度、経度、水平精度、高度、垂直精度、速度、進行方向(方角)、信頼度(精度の割合)LocationHarvest:tripID、タイムスタンプ(時刻と日付)、緯度、経度、水平精度、高度、垂直精度、速度、進行方向(方角)、信頼度(精度の割合)WifiLocation:Wi-Fi の MAC アドレス、時刻/日付、緯度、経度、水平精度、高度、垂直精度、速度(未設定)、方向(未設定)、信頼度(精度の割合)
このデータベースには、保存されている携帯電話の位置情報だけでなく、興味深いものが含まれています。保存されているデータは、携帯電話や電波に特有のものではありません。3G と Wi-Fi の位置情報が多く、GPS を使った場合も位置情報が記録されます。たとえば、移動中に 3G、BT OpenZone、または同様の Wi-Fi 接続を使うと、オンにしていれば App での GPS の利用が有効になり、そのためあなたの位置情報が保存されます。接続した Wi-Fi ルーターの詳細も consolidation.db ファイルに保存されます。
このデータの精度は、携帯電話の基地局や GPS による三角測量の精度次第です。私の iPhone に保存されているデータを見ると、移動中の iPhone の位置の三角測量はあまり正確ではありませんが、それでも実際の位置から 1 マイルほどの範囲内に収まっています。GPS の位置情報は、ぴったりとはいかないまでも数メートル以内に収まっているようなので、データの違いを読み解かない限り、当たり外れがあるかもしれません。精度は、場所がどれだけ人里離れているかによっても大きく変わります。市街地ほど基地局が密集しているため、これらの測定値はより正確になります。
位置情報データを保存している consolidated.db ファイルはどこにあり、その内容はどうやって見ればよいのか?
iPhone Backup Extractor を使えば、consolidated.db を見つけるのは簡単です。

iPhone Backup Extractor で consolidated.db を抽出する
consolidated.db データベースファイルは、バックアップ内でも iPhone 上でも /Library/Caches/locationd に保存されています。Apple は、iTunes と同期した後のバックアップファイルを、16 進数でエンコードされた SHA1 ハッシュで保存しているため、このファイルに最も簡単にアクセスする方法は「Expert mode」を使うことです。手順は次のとおりです。
- iPhone Backup Extractor を開きます
- 「Expert mode」ボタンをクリックします
- 次のフォルダに移動します:
Library→Caches→locationd consolidation.dbファイルの横のボックスにチェックを入れます- 「Extract selected」ボタンをクリックし、ファイルの保存先を選択します
- consolidation.db ファイルは、この保存先の次のフォルダに保存されます:
\Library\Caches\locationd
データベースファイルを表示するには、次のいずれかのアプリケーションが必要です。どちらも無料で、前述のテーブルを表示すれば、専門的な知識がほとんどなくても位置情報データを確認できるはずです。

SQLite Manager で開いた iPhone の consolidated.db
データベース内で位置情報の参照ポイントを見つけたら、Google マップ を使ってその場所をプロットできます。「緯度, 経度」で検索すると、入力した場所が見つかります。





