使用小程序查出行轨迹,其中原理是什么?

程序员考拉

共 1481字,需浏览 3分钟

 ·

2021-01-25 07:03

公众号关注 “GitHub今日热榜
设为 “星标”,带你挖掘更多开发神器!





作为专门研究GPS定位的小编,知道是基于手机基站定位,因为我们GPS定位里面都包含这一技术,就是通过LAC(Location Area Code位置区域码),基站CID(CELLID,Cell Identity,基站编号)来定位的技术。


一般GPS定位器会在GPS信号无效的环境(比如室内)切换到基站定位。基站定位的缺点是精度不高,在城市基站密集的地方,可以在精确到50-100米,在农村或者山区,基站少,定位精度有可能是几公里。


所以就基站出现了如下的笑话:



郊区基站位置偏差比较大造成的“跨省疫情“


基站定位有几种方式:COO(单基站),AOA(双基站),TOA/DTOA(三基站),基于信号强度(三基站),还有多基站定位的,多基站算法比较复杂,精度高但成本也高,这个要单独研究的话,需要另外写一篇文章。


这里我们主要分析这次疫情使用的方法,单基站定位。


先了解一下手机通讯大致原理。


手机通讯,无论是短信,上网,通话,都是通过基站--》网络交换--》基站的大致通路,原理框图如下。



手机一开机,就会首先搜索附近的基站,搜索到最强信号的基站后(就像搜索WIFI一样),网络侧会记住你手机是登录的那个基站(CID号),基站的位置是固定的,在网络侧都有数据库保存所有基站的位置信息,每个基站的覆盖半径是固定的,查你手机的位置就在这个范围以内(其实返回的是你附近信号最强基站的位置),这个就是单基站定位COO(Cell of Origin)。


基站会组网成蜂窝状,如下图:



我们移动的时候,会不停的切换基站,手机总是会选择一个信号最强的基站。


所以在火车上,大家发现手机耗电很快,因为手机要不停的搜索切换基站。


但这个位置在网络侧不会长久保存(临时保存在VLR中),手机移动后,登记的基站会不停变化。那么14天或者30天的轨迹是怎么得到的呢?


首先,通话记录会有位置信息


达盟GPS小编查的通话详单记录:可以看到每次通话记录都有通话地点。



我们知道,手机可以查历史详单,历史详单每家运行商甚至每个地区都不太一样,有的可以保存3个月,有的可以保存6个月,甚至1年。


查历史详单的时候,大家可能没有注意到,其实是会记录每次通话的位置的。这个其实就是根据基站CID记录的你当时通话的位置,把这些历史位置连在一起,就是你最近15天或者30天的活动轨迹了,理论上可以查更久的轨迹(电话详单保存的最长时间)。而且在运营商的数据库里面的数据,比我们用户查到的数据更详细。每条通话记录都包含LAC,CID等更多信息。


那么有人说,我若是去了外地,但没有通话,那能查到吗?


其实还有一个详单,大家注意到了吗?


上网记录也有详单,而且也有位置信息


相信现在的人,即使不通电话,也都离不开微信,离不开上网,所以你的轨迹都被保存在网络上了,运营商只要想调取,你的轨迹就出来了!


所以,你想作弊是没有办法的,要老实交代都去了哪里,因为证据都保存在运营商的数据库里面了O(∩_∩)O哈哈~。


会不会有人用手机定位查你的隐私呢?


其实这个必须需要自己的手机验证,所以普通用户只能自己查自己








关注GitHub今日热榜,专注挖掘好用的开发工具,致力于分享优质高效的工具、资源、插件等,助力开发者成长!







点个在看 你最好看









浏览 80
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报