一种移动应用中定位数据真伪辨别的方法和系统

文档序号:25993156发布日期:2021-07-23 21:06阅读:来源:国知局

技术特征:

1.一种基于wifi信息的移动应用中定位数据真伪辨别的方法,其特征在于,包括如下步骤:

步骤1,为所有基准数据计算rss概率分布;

步骤2,训练数据特征计算;对于每一份待计算特征的训练数据,执行如下步骤:

201,找出所有与待计算训练数据的定位坐标距离在设定范围内的基准数据;

202,统计201中基准数据中各wifi信号的rss值与待计算训练数据的rss值相同的概率;

203,选取训练数据中每个wifi的rss值、训练数据定位与基准数据中位置的距离、每一基准数据中取训练数据中wifi的rss值的概率作为训练数据特征作为训练数据特征;

步骤3,模型训练,执行如下步骤:

301,随机挑选部分真实wifi+gps轨迹数据进行伪造,伪造结果作为负样本;

302,正负样本计算出的特征向量输入到xgboost中训练,得到分类器模型;

步骤4,用户在上传定位进行证明时,服务器收集这一定位以及发送证明请求之前上传的定位与wifi数据,组成待判别轨迹;执行如下步骤:

401,判断wifi指纹是否为虚构数据;

402,判断wifi指纹和gps经纬度是否为重放数据;

403,计算出待判别轨迹中每个点基于基准数据的特征向量,使用分类器模型预测伪造的概率,最终综合各个点的结果判断轨迹是否为伪造数据。

2.根据权利要求1所述的基于wifi信息的移动应用中定位数据真伪辨别的方法,其特征在于,所述步骤1中,对于每一份待计算的基准数据,执行如下步骤:

101,找出所有与待计算基准数据的定位坐标距离在设定范围内的其它基准数据;

102,统计同一wifi信号在各基准数据中的rss值;

103,根据待计算数据与设定范围内的其它基准数据的距离,结合赋予待计算基准数据自身的权重,计算处于待计算数据的定位位置时对各个wifi路由器接收到不同rss值的概率。

3.根据权利要求1所述的基于wifi信息的移动应用中定位数据真伪辨别的方法,其特征在于,选取一部分gps+wifi指纹的历史数据用于基准数据的计算,基准数据的作用是描述在某一个地点可以接收到每个wifi信号的不同rss值的概率,并用于后续为待预测的gps+wifi指纹数据计算特征向量。

4.根据权利要求1所述的基于wifi信息的移动应用中定位数据真伪辨别的方法,其特征在于,所述步骤1中,设对于一个位于位置l0的基准数据,位置l0点中某一个wifi信号w的rss值为r0,同时在以位置l0点为圆心、半径为r的圆形区域内,存在n0份其它的基准数据也观测到了w的rss值为r0;而这个圆形区域中共有n个数据点中包含了w的rss值,第i个点与位置l0的距离为di;对于某个信号强度观测值rssk,n个数据点里有nk个点的观测值为该值;设待计算基准数据本身的权重为w,其它基准数据的总权重为1-w,其中每个基准数据的局部权重为与待计算数据距离的倒数;那么,对于在位置l0观测到w的各个rss值的概率可以由如下公式计算得到:

5.根据权利要求1所述的基于wifi信息的移动应用中定位数据真伪辨别的方法,其特征在于,所述步骤2中,对于一份采集自位置l0的wifi指纹(r1,r2,...,rn),选取距离l0最近的k份基准数据用于特征计算,设其中第j个基准数据的位置为lj,并用distance(li,lj)表示位置li到位置lj的距离;则特征向量的具体结构如下所示:

feature=(rpd1,rpd2,…,rpdn)

rpdi=(ri,pdi1,pdi2,…,pdik)

pdij=(p(rssi=ri|location=lj),distance(l0,lj))。

6.根据权利要求1所述的基于wifi信息的移动应用中定位数据真伪辨别的方法,其特征在于,所述步骤3中,使用xgboost进行定位数据的训练与预测,其中输入为特征向量,输出为数据的可信程度、取值范围[0,1]。

7.根据权利要求1所述的基于wifi信息的移动应用中定位数据真伪辨别的方法,其特征在于,所述步骤3中轨迹数据伪造,使用真实的包含wifi和gps数据的轨迹来生成伪造轨迹;生成伪造轨迹的方法为,对于真实轨迹中每一个点的经纬度数据,为其在x轴和y轴上分别添加一个取值范围在[-1,1]的随机偏移,单位为米;对于每一个wifi指纹数据,为每个rss值添加一个随机取自集合{-1,0,1}的偏移。

8.根据权利要求1所述的基于wifi信息的移动应用中定位数据真伪辨别的方法,其特征在于,所述步骤4中,用户在启动移动应用后,应用就会启动一个后台服务间隔上传gps定位与扫描到的wifi指纹数据。当用户使用需要验证定位的功能时,服务器端会收集这一段时间的轨迹数据并汇总,用于后续的轨迹分析。

9.根据权利要求1所述的基于wifi信息的移动应用中定位数据真伪辨别的方法,其特征在于,所述步骤4中,判断轨迹是否为虚构:通过比对用户上传的轨迹数据中的wifi信息与历史数据中这一区域的wifi信息,查看每一信号的bssid和ssid,判断用户是否因为没有实际前往该区域而虚构了不存在的wifi信号;

判断轨迹是否为重放:通过比对用户上传的轨迹数据与用户所有的历史数据,查看是否存在一条历史轨迹中每一个点的gps信息与对应的wifi信息与此次上传数据相同,来判断用户是否没有前往定位地点而是重放了一条历史轨迹数据;

判断轨迹是否为伪造:将用户上传的轨迹中每一个点包含的gps数据与wifi数据基于基准数据计算出特征向量,输入到训练出的分类器模型,得到每一个点的可信程度;设置p为每个点的可信度阈值,t为每条轨迹的可信度阈值,那么设一条轨迹经过特征生成与分类,得到了一个概率集合l;

l=(p1,p2,…,pn)

其中pi表示轨迹中第i个点数据的可信程度,那么仅当满足下面条件时才认为轨迹为真实数据;

count(i|pi≥p)为统计整条轨迹中分类器输出的概率值pi大于阈值p的轨迹点的个数。

10.一种基于wifi信息的移动应用中定位数据真伪辨别的系统,其特征在于,包括如下模块:

基准数据计算模块,用于为所有基准数据计算rss概率分布;对于每一份待计算的基准数据,找出所有与待计算基准数据的定位坐标距离在设定范围内的其它基准数据;统计同一wifi信号在各基准数据中的rss值;根据与基准数据的距离结合权重计算不同rss值的概率;

训练数据特征计算模块,对于每一份待计算特征的训练数据,找出所有与待计算训练数据的定位坐标距离在设定范围内的基准数据;统计基准数据中各wifi信号的rss值与待计算训练数据的rss值相同的概率;选取训练数据中每个wifi的rss值、训练数据定位与基准数据中位置的距离、每一基准数据中取训练数据中wifi的rss值的概率作为训练数据特征;

分类器模型训练模块,随机挑选一半的真实wifi+gps轨迹数据进行伪造,伪造结果作为负样本;正负样本计算出的特征向量输入到xgboost中训练,得到分类器模型;

用户数据上传与轨迹分析模块,用户在上传定位进行证明时,服务器收集这一定位以及发送证明请求之前上传的定位与wifi数据,组成待判别轨迹;分析待判别轨迹是否为伪造轨迹;比对数据库判断wifi指纹是否为虚构数据;比对数据库判断wifi指纹和gps经纬度是否为重放数据;计算出待判别轨迹中每个点基于基准数据的特征向量,使用分类器模型预测伪造的概率,最终综合各个点的结果判断轨迹是否为伪造数据。


技术总结
本发明公开一种移动应用中定位数据真伪辨别的方法和系统,首先从数据库中找出与用户上传定位距离较近的历史上传数据;对于每份历史数据,再在数据库中查询与它距离在一定范围内的其它历史数据并统计它们共同接收到的WiFi信号的信号强度,结合它们距离关系赋予权重计算出在这份历史数据包含的GPS坐标位置处这些WiFi信号强度的概率分布;对于上传数据,根据其中每个WiFi信号的强度去这些历史数据中统计对应的概率,并结合与这些历史数据的距离最终得到一份特征向量;将特征向量用于XGBoost模型进行训练与预测,对真伪数据的辨别取得了较好的效果。本发明中使用的数据很难被伪造,并且对重放数据能进行识别。

技术研发人员:夏中舟;华景煜;杨华明;仲盛
受保护的技术使用者:南京大学
技术研发日:2021.05.11
技术公布日:2021.07.23
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1