re: Speculation
The way I see it, trying to do "GPS" this way would be like trying to do regular GPS if the speed of light varied radically and randomly with time.
Yeah, kinda. I was able to read the patent thanks to Mary Anne (though reading a patent isn't necessarily something to be thankful for), and it addresses the variability question: Ping multiple times and take the minimum value. The patent talks about pinging continuously and refining the fix over time.
I'm way out of my depth here, but doesn't this assume that the computer responds instantly to requests?
The time for a computer to respond to an incoming ping request is many orders of magnitude faster than network latency times--microseconds versus milliseconds. It's small to begin with, but things like that can be calibrated. For example, if you're using a Web page to anchor the target computer for pinging, script on the page can run a loop several thousand times and measure the elapsed time to derive processor clock speed.
Couldn't a clever computer operator rig his browser to throw "delays" into its interaction with the internet, so requests from his computer might be held for a fraction of a second longer than normal? And couldn't those delays be programmed to randomly change?
My first response was to optimistically agree, but upon further reflection it may not be so easy to fool this system. First, it seeks the minimum, so random delays shouldn't be very effective. Second, you're being triangulated by multiple beacons, all of which will experience the same average delay time; and thus I think that what matters is where the vectors cross, not their length. It's all based on relative latencies.
There may be simpler countermeasures, such as simply disabling ping responses on your computer. Many firewalls already do this, and the network software could be made to allow ping to be shut off inside the computer. That'd eliminate the primary technology envisioned by the patent, but it would still be possible to measure the latency of other kinds of packets.
(I should mention, in case you didn't already know, that ping is a special service that "listens" on a standard port on all network-attached computers and is essentially a transponder for ping requests. While the ping-responder service could be shut down, other ports and services would still have to be available to use the network at all, and any packets transmitted over any service could be measured for latency.)
To speculate some more: If you shut off ping and force Big Brother to rely on measuring the latency of other packets (e.g., actual Web [HTTP] data packets), then you might be able to route your data requests through a large number of proxies, distributing individual requests through different proxies. This would present the surveillance system with what amounts to a number of false "echoes" at many different locations. Even a single proxy would provide some protection, though traffic analysis of the proxy might eventually enable them to connect your computer with the proxy. The more proxies, the harder the traffic analysis becomes.
Bottom line, I'd say that this is a pretty strong technique. Not irresistable, but it would take some effort and resources to fool it.
I don't buy for a minute that a patent filed by the NSA would be all about helping advertisers geolocate their victims, though that would be offensive enough. Like most techniques to help law enforcement, I have mixed feelings--such things can be used for good, or they can be abused for bad. My generally dim view is that it's one more nail in privacy's coffin.
