基于WiFi指纹室内定位的轻量级隐私保护系统及方法与流程

文档序号:18740237发布日期:2019-09-21 01:41阅读:282来源:国知局
基于WiFi指纹室内定位的轻量级隐私保护系统及方法与流程

本发明涉及室内定位中的隐私保护技术领域,特别是涉及一种基于WiFi指纹室内定位的轻量级隐私保护系统及方法。



背景技术:

作为物联网的支持技术,室内定位被广泛应用于室内环境中,例如导航,跟踪和监控,并且吸引了越来越多的商业和学术研究。随着室内定位服务日益普及,人们对定位精确度和隐私保护程度的要求也越来越高。常见的定位技术,即基于WiFi指纹的定位技术极其缺乏安全性考虑,用户的位置隐私和定位服务器的数据隐私在某种程度上均会发生泄露。

目前,只有少部分研究关注室内定位中的隐私问题,主要集中在改进加密算法来保护用户的位置数据,但是现有工作所采用的加密算法均导致了大量的计算开销和通信开销,较难应用于计算资源有限的终端设备。除此之外,还有一部分研究工作主要关注用户的位置隐私保护,而无法保证甚至忽视了服务器的数据隐私,具体体现在定位过程中向用户公开了参考点的位置坐标,这就使得恶意用户能够根据公开的位置坐标重新构建相似甚至相同的指纹数据库,从而导致指纹数据库信息被窃取,造成服务提供商的经济损失。



技术实现要素:

本发明的目的是:以较低的成本保护用户的位置隐私和服务器的数据隐私,同时实现室内定位。

为了达到上述目的,本发明的技术方案是提供了一种基于WiFi指纹室内定位的轻量级隐私保护系统,其特征在于,包括:

指纹收集模块,在各个参考点收集每个接入点的信号特征参数,将参考点编号、参考点地理坐标以及接收信号强度向量共同作为该参考点的位置指纹,存入WiFi指纹数据库;

信号测量模块,基于待定位用户所采集到的当前位置关于每个接入点的接收信号强度值,将参与后续距离计算的有用数据加密,并将加密后的有用数据发送给距离计算模块;

距离计算模块,根据Paillier同态加密性质,在信号空间比较待定位用户与WiFi指纹数据库中任意两个指纹的距离,并在密文空间构建距离比较矩阵;

计算加密位置模块,将距离比较矩阵发送给待定位用户,得到待定位用户返回的信号空间中与其最近的k个指纹索引值,根据k个指纹索引值找到对应的k个加密距离,即待定位用户与某个位置指纹在信号空间中的距离,最后采用最小二乘法来估计待定位用户所在的具体位置,并向待定位用户发送加密的位置;

位置解密模块,用于对计算加密位置模块发送的加密的位置进行解密,在用户端得到最终定位结果。

本发明的另一个技术方案是提供了一种基于WiFi指纹室内定位的轻量级隐私保护方法,其特征在于,包括以下步骤:

步骤1、指纹收集模块在各个采样点收集每个接入点的接收信号强度值,以<i,(xi,yi),Vi>的形式存储在WiFi指纹数据库中,其中,Vi=(vi,1,vi,2,...,vi,t,...,vi,n)是第i个采样点的位置指纹,是N维特征向量,vi,t表示在第i个采样点(xi,yi)上接收到的来自第t个接入点的WiFi信号强度;

步骤2、待定位用户请求室内定位服务时,信号测量模块测量所在位置对每个接入点的接收信号强度值,记为Vo=(vo,1,vo,2,...,vo,t,...,vo,n),其中vo,t表示用户在位置(xo,yo)处接收到的来自第t个接入点的信号强度值;

步骤3、用户产生密钥对(PKc,PRc),利用密钥对(PKc,PRc)对和进行加密,并将加密后的数据连同公钥PRc发送给距离计算模块,其中,·表示密文空间,PKc表示私钥,由用户自己保存;

步骤4、距离计算模块利用接收到的两项加密数据,结合数据库中的指纹数据,计算信号空间中待定位用户与数据库中任意两个指纹之间的距离差,将待定位用户与数据库中第i个位置指纹Vi在信号空间的距离记为待定位用户与数据库中第j个位置指纹Vj在信号空间的距离记为则待定位用户与位置指纹Vi及位置指纹Vj的距离差记为式中,表示加密运算,的计算公式为:

步骤5、距离计算模块构造距离比较矩阵P:

步骤6、距离计算模块将P发送给用户,用户解密找出k个最近距离的索引值,记为μ1,μ2,...,μk,满足且i≠μ1,μ2,...,μk;

步骤7、用户将索引值[μ1,μ2,...,μk]发送给计算加密位置模块,计算加密位置模块在密文空间找出索引值所对应的加密距离使用这k个最近距离的索引值来估计用户的具体位置。

由于采用了上述的技术方案,本发明与现有的技术相比,具有以下的优点和积极效果:本发明把室内定位中的隐私保护问题建模成最小均方误差问题,根据用户采集到的接收信号的强度值,在密文空间中直接计算用户的位置,利用超定线性方程组的空间结构,提出了一个密文空间中的轻量级解决方案,同时考虑了用户的位置隐私和服务器的数据隐私。

附图说明

图1是实施例的工作环境的示意图;

图2是实施例的用户端的组成结构的示意图;

图3是实施例的定位服务器的组成结构的示意图;

图4是实施例中基于WiFi指纹室内定位的轻量级隐私保护系统实现的方法流程图;

图5是实施例中基于WiFi指纹室内定位的轻量级隐私保护系统实现的模块示意图。

具体实施方式

下面结合具体实施例,进一步阐述本发明。应理解,这些实施例仅用于说明本发明而不用于限制本发明的范围。此外应理解,在阅读了本发明讲授的内容之后,本领域技术人员可以对本发明作各种改动或修改,这些等价形式同样落于本申请所附权利要求书所限定的范围。

图1示出了本发明一个实施例中的工作环境示意图。如图1所示,其工作环境涉及用户端101及定位服务器端102。服务提供商线下收集指纹,将指纹数据库存放在定位服务器端102,用户端101在向定位服务器102请求位置服务时,将加密的接收信号强度发送给定位服务器102,定位服务器102端进行定位计算后,将加密的位置数据发送给用户端101,用户端101解密位置完成定位。

用户端101在一个实施例中的结构示意图如图2所示,包括处理器、供电模块、存储介质、内存和通信接口。其中,存储介质存储有操作系统、数据库和一种用户信号测量加密装置的计算机应用程序;该计算机应用程序由处理器执行;通信接口主要用于用户端101和定位服务器端102之间的网络通信。图2中示出的结构,仅仅是与实施例方案相关的部分结构的框图,并不构成对本实施例方案所应用于其上的服务器的限定,具体的服务器可以包括比图中所示更多或更少的不见,或者组合某些部件,或者具有不同的部件布置。

图3示出了一个实施例中的定位服务器端102的结构示意图。定位服务器端102结构包括处理器、供电模块、存储介质、内存和通信接口。存储介质存储有操作系统、数据库和一种计算距离估计位置的计算机应用程序。处理器执行该程序,求解最小均方误差,进而得到最优的位置结果。

图4示出了一个实施例中的基于WiFi指纹室内定位的轻量级隐私保护系统实现的方法流程图。如图4所示,该实施例中的基于WiFi指纹室内定位的轻量级隐私保护系统实现的方法包括:

步骤S401:建立WiFi指纹数据库;

步骤S402:获取待定位用户的接收信号强度,用户产生密钥对,加密参与位置计算的有用数据,发送给定位服务器;

步骤S403:定位服务器比较待定位用户与数据库中每个指纹在信号空间的距离,在密文空间构建距离比较矩阵;

步骤S404:定位服务器找出信号空间中与待定位用户最近的k个指纹数据,在密文空间估计待定位用户的具体位置,向用户发送加密的位置数据;

步骤S405:待定位用户解密位置数据,得到最终定位结果。

根据本实施例的方案,用户端101采集完所在位置的接收信号强度数据后,根据欧几里得距离计算公式,用户将参与距离计算的数据信息加密并发送给定位服务器端102;定位服务器端102按照Paillier同态加密性质,在信号空间比较用户与数据库中任意两个指纹之间的距离,并在密文空间构建距离比较矩阵;定位服务器端102将密文空间中的比较矩阵发送给用户,目的是找到信号空间中与目标用户最近的k个指纹;定位服务器利用这k个指纹的数据,在密文空间估计用户的具体位置,将计算结果返回给用户;用户解密位置,完成定位。

本实施例的方案首次同时考虑用户端和服务器端的轻量级室内定位隐私保护方案,突破了现有隐私保护技术研究的局限性,以此推动室内定位中隐私保护相关理论体系和技术的不断丰富和完善。本发明对进一步降低室内定位中用户位置和服务器数据的隐私泄露风险、减少由定位算法所产生的计算通信开销以及促进室内定位技术更加广泛的应用具有十分现实的理论意义和应用价值。

本实施例将定位算法建模为利用最小二乘法来求解超定线性方程组,具体算法如下:服务提供商线下在各个采样点(xi,yi)收集每个接入点AP的接收信号强度值,以<i,(xi,yi),Vi>的形式存储在指纹数据库D中,其中Vi=(vi,1,vi,2,...,vi,t,...,vi,n)是N维特征向量,vi,t表示在位置(xi,yi)上接收到的来自接入点APt的WiFi信号强度;用户请求室内定位服务时,首先测量所在位置对每个接入点的接收信号强度值,记为Vo=(vo,1,vo,2,...,vo,t,...,vo,n),其中vo,t表示用户在位置(xo,yo)处接收到的来自接入点APt的信号强度值,之后,用户产生密钥对(PKc,PRc)。我们将用户与数据库中第i个指纹在信号空间的距离计算记为根据欧几里得距离计算公式有:因此用户只需将和两项发送给服务器端(·表示密文空间),同时还要发送公钥PRc。服务器端利用接收到的两项加密数据,结合数据库中的指纹数据,计算信号空间中待定位用户与数据库中任意两个指纹之间的距离差,记为(表示加密运算),并构造距离比较矩阵P,具体如下:

服务器将P发送给用户,用户解密找出k个最近距离的索引值,记为μ1,μ2,...,μk,满足且i≠μ1,μ2,...,μk。用户将索引值[μ1,μ2,...,μk]发送给服务器,服务器在密文空间找出索引值所对应的加密距离使用这k个最近的距离值来估计用户的具体位置。

不考虑由多路径和反射等产生的噪声,则用户接收到的来自接入点的WiFi接收信号强度值和用户与接入点之间的地理距离满足以下条件:

其中,xo,j是待定位用户与第j个指纹在地理空间的距离,且i∈(1,2,...,k)。因此,我们将问题转化为求解最小均方误差问题,即求解以下公式:

我们进一步将公式(2)转化为以下超定线性方程组:

通过消项合并,上述方程可以转换为AXo=b,其中Xo=(xo,1,xo,2,...,xo,j,...,xo,n)T,记A=A1-A2,则A1、A2和b可以表示为如下形式:

由此,为了解决问题(3),我们将问题转化为矩阵运算,即计算

基于与上述方法相同的思想,本发明实施例还提供一种基于WiFi指纹室内定位的轻量级隐私保护系统的数据模块。图5示出了一个实施例中的基于WiFi指纹室内定位的轻量级隐私保护系统的模块示意图,其数据模块包括:

指纹收集模块501,用于建立WiFi指纹数据库;

信号测量模块502,用于获取待定位用户位置信息,加密有用数据;

距离计算模块503,根据Paillier同态加密性质,在信号空间比较待定位用户与数据库中任意两个指纹的距离,并在密文空间构建距离比较矩阵;

计算加密位置模块504,通过将比较矩阵发送给用户,得到用户返回的信号空间中与其最近的k个指纹索引值,定位服务器根据k个索引找到对应的k个加密距离,即用户与某个指纹在信号空间中的距离,将定位算法建模为利用最小二乘法来求解超定线性方程组,以此估计用户所在的具体位置,并向用户发送加密的位置;

位置解密模块505,在用户接收到由定位服务器发送的密文位置信息后,利用私钥进行解密,在用户端得到最终定位结果。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1