利索能及
我要发布
收藏
专利号: 2022104475860
申请人: 南通大学
专利类型:发明专利
专利状态:已下证
更新日期:2026-05-14
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种车联网稀疏用户环境下LBS隐私保护方法,其特征在于,包括如下步骤:S1、系统初始化,完成系统参数初始化、RSU初始化和车辆离线注册,本阶段是由TA生成相关的系统参数,利用RSA算法和paillier算法分别生成系统公私钥和同态密钥,发布系统参数;为RSU的注册身份,并颁发公钥证书;使用同态算法加密车辆的真实身份,存储车辆的真实身份信息,以实现恶意车辆的身份追溯;

S2、车辆Vi驶入RSUi的覆盖范围内,首先接收RSUi在其覆盖范围内广播的Hello报文,通过Hello报文中携带的证书验证RSUi身份的合法性、获得RSUi公钥,为后续安全数据传输做准备,请求位置服务时,车辆首先触发稀疏环境检测算法,判断自身所处是否为稀疏环境,若车辆处于稀疏环境,则需要生成一组虚拟用户,虚拟用户包含一组假名及其对应的虚拟地址,车辆将虚拟用户与真实用户LBS请求进行混合,并发送至RSUi,RSUi将虚拟用户身份递交TA验证合法性,决定是否为车辆转发相应的LBS请求;

所述S2步骤具体包括以下步骤:

S21、RSUi在其覆盖域内广播Hello报文:Hello报文具体包含:

① 表示TA为RSUi颁发的证书;

②TS为当前时间戳;

③ 为RSUi使用自身私钥对消息的数字签名;

S22、车辆验证RSUi身份

车辆Vi接收到RSUi广播的Hello报文,验证RSUi身份的合法性:车辆Vi首先检验该Hello包的时效性,若时间差|T‑TS|≤Δt验证通过,则解密签名字段若解密结果与Hello报文中数据的哈希值一致,说明该Hello报文非伪造,随后,利用TA的公钥验证RSUi的证书,从证书中获得RSUi的公钥;

S23、稀疏环境检测

车辆Vi完成对RSUi的认证后,车辆触发稀疏环境检测算法,假设Vi通信覆盖范围内现有N辆车,Vi隐私保护需求为K,将参数K输入稀疏环境检测算法:

1)确定空间因子A,车辆通过GPS获取当前所在位置的二维坐标locu=(lux,luy),以该点为圆心,以车辆单位时间Δt内的最大距离rmax为半径,构成最大匿名区域Amax,Amax为虚拟地址生成区域,A∈Amax;

2)确定虚拟用户生成数量,当前区域A(A∈Amax)中共有N个车辆用户,隐私因子K表示请求服务车辆的隐私需求,通过比较参数K和N,确定是否需要生成虚拟用户以及生成虚拟用户的数量;

①当K≤N时,表明当前现有的用户数量满足隐私保护需求,无需生成虚拟用户,直接执行k匿名算法;

②当K>N时,表明该车辆处于稀疏用户环境,需要生成P=K‑N个虚拟用户,执行S24;

S24、车辆假名生成

车辆首先为生成假名选择随机数集合

其中P=K–N,使用同态加密公钥PH及参数n,对 中的随机数 执行同态加密paillier.Enc(.)算法:并将本次加密使用的随机数集合r2j存储在车辆内存的防篡改存储器中;

车辆执行paillier.Enc(.)算法,将 r1、r2j作为输入,计算假名:车辆对加密结果 执行hash运算,得假名

使用同样方法生成其他P‑1个假名,在假名生成过程中,将加密 时产生的一组随 机数{r21 ,... ,r2p}存入车辆的防篡改存储器中,得假 名集合S25、虚拟地址生成

车辆调用虚拟地址生成算法,输入需要产生虚拟地址的个数P‑1,rmin,rmax,为Vi生成P‑1个虚拟地址存入虚拟地址集合S26、LBS混合请求集生成

车辆将自身真实地址与上一步所生成的P‑1个虚拟地址进行混淆:在 集合中,随机选择第j(1≤j≤P)个假名元素,将其与真实地址构 绑定,形成LBS请求其中身份认证请求① 为车辆唯一身份标识的哈希值,用于查询车辆的加密身份;

②r1为利用同态加密车辆唯一身份标识时返回的随机数;

③ 表示用于生成假名 所使用的随机数;

④r2j表示同态加密 时返回的随机数;

⑤ 表示使用同态加密算法生成的第j个假名元素;

⑥ 表示车辆的真实地址;

⑦SearchLBS表示车辆请求的位置服务查询内容;

车辆为本假名生成对称会话密钥 加密以上字段,形成LBS请求 以保证消息的保密性,同时,采用相同办法,为其余的P‑1个假名和生成地址进行绑定,构成LBS混合请求集,车辆需要记录真实地址所对应的假名 用于最后筛选出自身真实所需的LBS结果;

S27、Vi→RSUi:

车辆向RSU发送LBS请求 及会话密钥 时间戳TS,会话密钥 和时间戳TS使用RSUi的公钥加密, 由对称密钥加密,车辆使用同样的方法向RSU发送另外P‑1个LBS请求;S3、LBS服务隐私保护过程中,车辆Vi向代理RSUi发送LBS请求报文,RSUi收到此请求报文后,将其中的身份认证信息 转发至TA,以验证车辆假名生成的合法性,抵御非法车辆的拒绝服务攻击,TA收到RSUi转发的 调用假名认证算法,验证车辆假名的合法性,并返回认证结果,若认证通过,RSUi从车辆上传的LBS混合请求集中选取地址与服务类型字段值,向LBS服务器转发服务请求,LBS服务器将服务请求结果集发送给RSUi,RSUi将结果集转发至车辆,车辆从结果集中筛选出自己所需要的位置服务结果,并丢弃其他位置服务结果。

2.根据权利要求1所述的车联网稀疏用户环境下LBS隐私保护方法,其特征在于,所述步骤S1具体包括以下步骤:S11、系统参数初始化

1)同态加密算法初始化

TA运行算法paillier.Setup(.)和paillier.KeyGen(.),生成同态加密算法使用的公、私钥对PH={n,g}、SH=λ;

2)TA公私钥初始化

为了产生TA公私钥密钥对,选择RSA算法,初始化过程如下:选择大素数p、q,计算:m=p‑1×q,φ(m)=(p‑1)(q‑1),选择随数e,满足e与φ(m)互素;计算d=e modφ(m),私钥为SKTA={d,m|,公钥为PKTA={e,m},此密钥对用于保证数据的机密性和完整性;

3)TA公布系统参数{PKTA,PH},其中同态公钥PH用于加密车辆的真实身份,公钥PKTA用于验证TA签发证书的合法性;

S12、RSU初始化

TA利用RSA算法为RSU分配公私钥对:选择大素数pR,qR,计算nR=pR×qR,φ(nR)=(pR‑1)‑1(qR‑1),选择与φ(nR)互素的随机数eR,并计算dR=eR modφ(nR),得RSU公私钥对:PKR={eR,nR},SKR={dR,nR},TA为RSU分配唯一身份标识IDR,为RSU签发证书CertR,证书中包含IDR、PKR、时间戳、CA的签名信息;

S13、TA根据车辆Vi提交的信息为车辆分配身份标识,为保护车辆真实身份隐私信息,使用paillier.Enc(.)算法对身份标识进行同态加密。

3.根据权利要求2所述的车联网稀疏用户环境下LBS隐私保护方法,其特征在于,所述步骤S13中,车辆真实身份标识进行同态加密具体包括如下步骤:S131、TA为合法车辆Vi生成唯一身份标识 计算身份标识的哈希值 建立身份数据表,表中以 为外键,建立其与唯一身份标识、时间戳的映射关系;同时,建立外键 与车辆信息相对应的车辆信息表,以实现恶意车辆的身份追溯;

S132、TA使用paillier.Enc(.)加密算法,生成车辆Vi的加密身份将生成的加密身份信息 存放至加密身份表中,构成 字段与加密身份 的键值对,随后,TA将本次加密使用的随机数r1存入车辆的防篡改存储器中。

4.根据权利要求1所述的车联网稀疏用户环境下LBS隐私保护方法,其特征在于,所述步骤S25中,对车辆Vi虚拟地址生成过程具体包括如下步骤:S251、根据稀疏用户环境判断算法得知,车辆用户处于稀疏环境,且需要生成P‑1=K–N‑1个虚拟位置;

S252、以该车辆坐标locu=(lux,luy)为圆心,车辆单位时间Δt内的最大距离rmax为半径,构成最大范围Amax为虚拟地址生成区域;

S253、为了将P个虚拟位置均匀分布在Amax区域中,选取最小半径rmin,构成最小匿名空间Amin,将Amax区域划分为Amin和Amin∩Amax两部分,设置分布系数d,使得产生的虚拟地址分布在Amin和环形区域Amin∩Amax中;

若第i个位置满足

i%d==0

则执行S254,在该区域的区域Amin内生成虚拟位置;否则执行S255,在环形区域Amin∩Amax中生成虚拟地址;

S254、在Amin内生成虚拟位置,计算:

θ=2π×random(0,1)

x=rmin·radom(0,1)·cosθ

y=rmin·radom(0,1)·sinθ

其中random(0,1)表示在(0,1)选择的随机数,保证坐标点x、y处于最小半径rmin构成的圆内,得虚拟地址loci(x,y),计算若结果满足0

S255、在环形区域中生成虚拟地址,计算:

a=rmin/rmax

x=rmax·radom(0,a)·cosθ

y=rmax·radom(0,a)·sinθ

其中rmax·random(0,a)保证点x、y处于Amin∩Amax构成的环内,形成虚拟地址loci(x,y),计算若结果满足条件rmin≤distance(loci,locu)≤rmax,则表明虚拟地址在环形范围内,将其存入虚拟地址集合PseuLoc。

5.根据权利要求1所述的车联网稀疏用户环境下LBS隐私保护方法,其特征在于,所述S3步骤具体包括以下步骤:S31、RSUi获取LBS请求内容

RSUi收到请求消息后,使用私钥解密报文:

RSUi获得临时会话密钥、时间戳,并检测时间戳的有效性,RSUi利用会话密钥 解密 消息,获得 RSUi通过有线介质向TA传输 申请对假名的合法性认证;

S32、车辆假名合法性验证

TA使用私钥解密 获得 的值,根据此值,检索加密身份标,获得车辆加密身份 调用假名认证算法,对假名进行验证:

输入假名随机数集 中的元素 r1、r2j

①执行paillier.Enc(.)算法,对随机数集Noncepseu进行同态加密:②将查询获得的加密身份 与加密结果 分别做同态乘法运算并取hash值:

将计算结果与 进行比较:

a)若两者相等,根据同态加密的性质,且由于随机数r1,r2i仅车辆Vi知晓,故车辆Vi为合法车辆,假名认证成功,TA向RSUi返回认证成功的结果;

b)若结果不等,TA返回认证失败结果,RSUi丢弃LBS请求包,并向车辆Vi返回失败消息:其中,“ERROR”表明假名认证失败;TS为时间戳,使用共享密钥加密,车辆收到该反馈消息后,使用会话密钥解密,需要再次发送请求包以重新请求位置服务;

S33、RSUi转发LBS请求

RSUi收到认证成功消息后,缓存该车辆对称密钥与假名、地址的映射关系,由映射关系可知,对于TA验证结果的返回值,RSUi仅能知道该假名和地址来自于合法用户,但无法把假名和车辆真实身份进行关联,制造了多个不同用户同时请求LBS的场景,实现了用户和地址的混淆,达到LBS双重匿名效果,同时,为进一步削弱假名的关联性,为表中的每一组连接生成时间戳,用于对超时的假名定时进行失效处理;

经过混淆,RSUi无法辨别在请求集中的真实与虚拟地址,通过有线介质向LBS转发所有服务请求,此请求只包含地址和服务查询内容两个字段,即隐匿了身份敏感信息,因为当前处于稀疏用户环境下,为了达到身份和地址混淆增加的服务请求并不会导致通信资源被过度占用;

S34、RSUi→Vi:

LBS接收服务请求集,获取相应的LBS查询内容,进行相应的服务响应,返回服务结果RSUi根据服务结果中的地址信息,通过称密钥与假名、地址的映射关系找到对应的假名和对称密钥,形成服务结果:使用对称密钥加密返回给车辆Vi;

S35、车辆获取LBS服务

车辆解密收到RSUi返回的LBS服务结果集,验证消息的时效性和完整性后,排除混淆假名,选出真实假名 获得真实地址对应的LBS服务结果,将其余返回结果丢弃。