Wi-Fi能够对用户进行定位。因为在Android、iOS和Windows Phone这些手机操作系统中内置了位置服务,由于每一个Wi-Fi热点都有一个独一无二的Mac地址,智能手机开启Wi-Fi后就会自动扫描附近热点并上传其位置信息,这样就建立了一个庞大的热点位置数据库。这个数据库是对用户进行定位的关键。
如果你的智能手机连接上了某个Wi-Fi热点,那么就可以调用数据库中附近所有热点的地理位置信息,而服务器会参考每个热点的信号强弱计算出设备的大致地理位置。
一、Wi-Fi定位的原理
具体来说,Wi-Fi能够定位,原理是这样的:
- 每一个无线AP(路由器)都有一个全球唯一的MAC地址,并且一般来说无线AP在一段时间内不会移动;
- 设备在开启Wi-Fi的情况下,即可扫描并收集周围的AP信号,无论是否加密,是否已连接,甚至信号强度不足以显示在无线信号列表中,都可以获取到AP广播出来的MAC地址;
- 设备将这些能够标示AP的数据发送到位置服务器,服务器检索出每一个AP的地理位置,并结合每个信号的强弱程度,计算出设备的地理位置并返回到用户设备;
- 位置服务商要不断更新、补充自己的数据库,以保证数据的准确性。
二、位置服务数据库的搭建
数据库中的数据主要来自于两个方面,一是用户提交的数据。Android手机用户在开启"使用无线网络定位"时会提示是否允许使用Google的定位服务,如果允许,用户的位置信息就被谷歌收集到。iPhone则会自动收集Wi-Fi的MAC地址、GPS位置信息、运营商基站编码等,并发送给苹果公司的服务器。
同时谷歌、Skyhook两家位置服务提供商也在主动搜集Wi-Fi等热点的位置信息。Google的街景拍摄车有一个重要的功能就是采集沿途的无线信号,并打上通过GPS定位出的坐标回传至服务器。Skyhook在美国及欧洲一些国家也是直接开着信号采集车采集AP和基站的信号数据。
三、如何防止被定位?
最直接的办法是关掉手机系统中的位置服务选项,以避免他人看到你的位置信息。
如果要杜绝位置服务商获取数据,难度就会比较高。用户需要不连接任何Wi-Fi热点,并且不使用相关的位置服务。也可以使用某些工具。例如谷歌曾发布一款选择退出工具,让无线路由器用户有效阻止谷歌搜集他们的数据。