To catch up: last week, a couple O’Reilly analysts discovered a database file on the iPhone that appears to track the location of the phone, over time. They also released a companion program to view the data, on any computer used to sync an iPhone.
My life, according to my iPhone
(Note: I intentionally reset my iPhone and removed my backups so I could “start clean” in May 2010. This is unfortunate, but I think the following map would have rendered exactly the same since I’ve repeated road trips and routes over the past few years.)
- Proud to say that I practically own the majority of the I-70 corridor.
- There is an interestingly large “dead spot” in coverage over Eastern Montana, Wyoming, and South Dakota, along I-90.
- I’ve never stepped foot in New Mexico, so I don’t know why it placed points there.
- I believe I’ve travelled south of the 37th parallel within the United States a mere handful of times in my life, and this map is slightly representative of that fact. Connecting flights make up the bulk of my experience through the Southwestern United States.
For fun, here’s a map of my trip to the New Jersey / New York City area last June.
We need to go deeper
Unimpressed with the granularity of iPhoneTracker’s maps at high-zoom (example), I decided to take apart the data myself. (Python’s native sqlite3 support helped. I’ll likely publish some source code when I follow-up on this.)
Here’s a very rough map of every point my iPhone stored in the Spokane area: blue points from the “CellLocation” table (likely AT&T cell signal transmitters), red points from the “WifiLocation” table (likely a list of every access point seen).
And, for good measure, a detail view of Downtown Spokane:
The above images are fairly rough: I’m not filtering duplicate MAC addresses, nor am I taking into account the accuracy of any of the data points. I do no date filtering or time-based analysis — it’s just a mass of points. But, I think visualizing the density of information stored on my device is interesting nonetheless. There are at least 10,000 data points in the above maps, dating as far back as the end of June last year.
As an en masse set of points, the data isn’t nearly as damning as the “location tracking log” moniker would suggest — there are no telltale “dense spots” to give away locations I frequent. But, as I said, it’s a rough view of the data and not representative of an actual attempt to run forensics.
Where can I go from here?
- With the higher granularity in the raw data: how precise can I guesstimate my whereabouts at any given moment in time solely on the nearby Wifi locations? Can I pull together an accurate location track such as this one, detailing the movements of German politician, Malte Spitz? (See also: the corresponding report published by Zeit Online and this perspective from the EFF.)
- Noticed that MAC addresses are part of the data stored for WifiLocation. Could be interesting to see what manufacturers make the most common routers/access points.