一种排除曾匹配司机的隐私保护网约车方法与系统

文档序号:26006301发布日期:2021-07-23 21:24阅读:190来源:国知局
一种排除曾匹配司机的隐私保护网约车方法与系统

本发明涉及一种排除曾匹配司机的隐私保护网约车方法与系统,属于车联网、隐私保护以及可搜索加密技术领域。



背景技术:

在当今世界,网约车服务是最受欢迎的应用之一,每月能让7800万人享受乘车服务便利。网约车服务的便捷性和普遍性使其成为智能交通系统的重要组成部分。网约车服务涉及三个实体:乘客、司机以及网约车服务提供商。因此,提供优质可靠的网约车服务尤为重要。

为了完成用户匹配,乘客必须上传他们敏感的位置信息到网约车服务提供商。这就产生了隐私风险,因为用户的位置信息透露出他们的位置高度相关活动,这些活动包括商务会议、青少年聚会、政治集会等。除此之外,由于乘客经常从同一地点叫车,可能与某一司机频繁匹配。这种频繁配对会产生严重的后果,特别是司机恶作剧甚至恶意的时候。首先,司机会知道乘客的家庭住址和出发时间。其次,在他们到达乘客的目的地后,如果司机看到乘客走进了哪个建筑或机构的话,将获得乘客的工作地址和工作类型。因此,在隐私保护方面,在网约车服务中保护用户的位置信息和排除曾匹配恶意司机,尤为重要。

现有的网约车隐私保护方案中,在保护用户位置信息不向第三方泄露的方案并不多。而保护用户位置信息技术的方案没有能够解决排除曾匹配恶意司机问题。



技术实现要素:

本发明是为了解决上述现有技术存在的不足之处,提出一种排除曾匹配司机的隐私保护网约车方法与系统,以期在网约车服务过程中完好保护用户位置信息,并解决潜在曾匹配恶意司机带来的安全威胁,从而保护用户的隐私问题,保证网约车服务的安全性以及机密性。

本发明为达到上述发明目的采用如下技术方案:

本发明一种排除曾匹配司机的隐私保护网约车系统的特点包括:多个乘客模块、多个司机模块、一个网约车服务商模块以及一个认证机构模块;

所述乘客模块包括:乘客注册单元、请求生成单元、请求传送单元和服务接收单元;

所述司机模块包括:司机注册单元、请求响应单元、响应传送单元和服务提供单元;

所述网约车服务商模块包括:网约车服务商注册单元、身份验证单元、服务匹配单元和匹配结果传送单元;

所述认证机构模块包括:系统初始化单元和实体注册单元;

所述系统初始化单元用于生成空间编码映射函数、空间编码组合函数、双元组数组集合、哈希函数和随机函数,并公示至系统内所有单元;

所述实体注册单元接收乘客注册单元提交的注册信息后,生成乘客证书和乘客公私钥对,并将乘客证书和乘客私钥发送至乘客注册单元,将乘客公钥公示至系统内所有单元;

所述实体注册单元接收司机注册单元提交的注册信息后,生成司机证书和司机公私钥对,并将司机证书和司机私钥发送至司机注册单元,将司机公钥公示至系统内所有单元;

所述实体注册单元接收网约车服务商注册单元提交的注册信息后,生成网约车服务商公私钥对,并将网约车服务商私钥发送至网约车服务商注册单元,将网约车服务商公钥公示至系统内所有单元;

所述网约车服务商注册单元向实体注册单元完成注册后,接收所述实体注册单元提交的网约车服务商私钥,并发送至身份验证单元;

所述请求生成单元获取系统初始化单元公示的信息后,计算出乘客当前位置所在区域,并生成排除曾匹配司机后的准许集合,从而共同组合成字符串集合后,插入至所述双元组数组集合,并将插入后的双元组数组集合发送至请求传送单元;

所述乘客注册单元向实体注册单元完成注册后,接收所述实体注册单元提交的乘客证书和乘客私钥,并发送至请求传送单元;

所述请求传送单元使用接收到所述请求生成单元、所述乘客注册单元发送的信息后,使用公示的网约车服务商公钥生成请求密文,并使用乘客私钥生成请求数字签名,从而将请求密文、请求数字签名和乘客证书发送至身份验证单元;

所述身份验证单元接收到所述请求传送单元发送的请求密文、请求数字签名和乘客证书后,利用所述网约车服务商私钥验证所述请求数字签名,若验证通过,则解密所述请求密文,并将请求解密结果发送至服务匹配单元,若验证不通过,则丢弃当前请求密文,并等待接收下一个;

所述司机注册单元向实体注册单元完成注册后,接收所述实体注册单元提交的司机证书和司机私钥,并发送至响应传送单元;

所述响应生成单元获取系统初始化单元公示的信息后,计算出司机当前位置所在区域,并生成请求响应,从而将请求响应发送至响应传送单元;

所述响应传送单元使用接收到所述响应生成单元、所述司机注册单元的信息后,使用公示的网约车服务商公钥生成响应密文,并使用司机私钥生成响应数字签名,从而将响应密文、响应数字签名和司机证书发送至身份验证单元;

所述身份验证单元接收到所述响应传送单元发送的响应密文、响应数字签名和司机证书后,利用所述网约车服务商私钥验证响应数字签名,若验证通过,则解密响应密文,并将响应解密结果发送至服务匹配单元,若验证不通过,则丢弃当前响应密文,并等待接收下一个;

所述服务匹配单元接收到所述身份验证单元发送的请求解密结果和响应解密结果后,产生匹配结果,并将匹配结果发送至匹配结果传送单元;

所述匹配结果传送单元接收所述服务匹配单元发送的匹配结果后,生成认证码,并使用公示的乘客公钥生成乘客匹配密文,使用网约车服务商私钥签名生成乘客匹配数字签名,从而将乘客匹配密文和乘客匹配数字签名发送至接收服务单元;

所述匹配结果传送单元使用公示的司机公钥生成司机匹配密文,使用网约车服务商私钥签名生成司机匹配数字签名,从而将司机匹配密文和司机匹配数字签名发送至提供服务单元;

所述接收服务单元接收匹配结果传送单元发送的乘客匹配密文和乘客匹配数字签名后,使用公示的网约车服务商公钥验证乘客匹配数字签名,若验证通过,则使用乘客私钥解密乘客匹配密文,得到匹配结果和认证码,从而使用认证码接收匹配司机提供的网约车服务;否则,丢弃匹配结果传送单元发送的信息,并等待接收下一个;

所述提供服务单元接收匹配结果传送单元发送的司机匹配密文和司机匹配数字签名后,使用公示的网约车服务商公钥验证司机匹配数字签名,若验证通过,则使用司机私钥解密司机匹配密文,得到匹配结果和认证码,从而使用认证码为匹配乘客提供网约车服务;否则,丢弃匹配结果传送单元发送的信息,并等待接收下一个。

本发明一种排除曾匹配司机的隐私保护网约车方法的特点是应用于多个乘客r、多个司机d、一个网约车服务商rhsp和一个认证机构所构成的网约车服务环境中;并按如下步骤进行:

步骤一、系统初始化:

步骤1.1、所述认证机构选择t个空间编码映射函数f1,f2,...,fi,...,fj,...,ft,选择空间编码组合和函数为gi,j=and(fi,fj)和空间编码组合或函数为hi,j=or(gi,gj);其中,ft表示第t个空间编码映射函数;其中,fi表示第i个空间编码映射函数,fj表示第j个空间编码映射函数;and(·)表示空间编码和函数;gi和gj表示选择两组不同空间编码映射函数后使用空间编码和函数的结果;or(·)表示空间编码组合或函数;i和j的范围为1……t;

步骤1.2、所述认证机构设定不可分辨布隆过滤器ibf参数:设定每个乘客和每个司机的二进制表示长度为w;选择一个含有m对双元组的数组集合b;选择u个不同的哈希函数h1,h2,...,hu和一个随机哈希函数h;其中,hu表示第u个哈希函数;

步骤1.3、所述认证机构公示公共参数集合pp={f1,f2,...,ft,ibf,w,b,h1,h2,...,hu,h};

步骤二、实体注册:

步骤2.1、所述认证机构定期产生u+1个密钥sk=(k1,k2,...,kv,...,ku+1),其中,kv表示第v个密钥;第i个乘客ri以个人身份向认证机构注册,认证机构为第i个乘客ri产生乘客证书cti={cti1,cti2,...,ctiv}和乘客ri的公钥和乘客ri的私钥并将集合发送给第i个乘客ri;其中,ctiv是第v个乘客ri的乘客证书;

步骤2.2、第j个司机dj以车牌身份向认证机构注册,认证机构为第j个司机dj产生司机证书ctj={ctj1,ctj2,...,ctjv}和司机dj的公钥和司机dj的私钥并将集合发送给第j个司机dj,其中,ctjv是第v个司机dj的司机证书;

步骤2.3、网约车服务商rhsp以服务商身份向认证机构注册,认证机构产生一个网约车服务商rhsp的公钥私钥对(pk,sk),并将网约车服务商rhsp的私钥sk发送给网约车服务商rhsp;将所述第i个乘客ri的公钥所述第j个司机的公钥和所述网约车服务商rhsp公钥pk进行公示;

步骤三、服务请求:

步骤3.1、第i个乘客ri从t个所述空间编码映射函数f1,f2,...,ft中第一次随机选择一组4个空间编码映射函数,并使用相应的空间编码组合和函数,计算第i个乘客ri当前所在位置一fli1;

步骤3.2、第i个乘客ri重复执行步骤3.1三次,从而选取三组不同的空间编码映射函数,并得到第i个乘客ri当前所在位置二fli2、第i个乘客ri当前所在位置三fli3、第i个乘客ri当前所在位置四fli4,再使用空间编码组合或函数hi,j=or(gi,gj),计算h1,2=or(fl1,fl2)及h3,4=or(fl3,fl4),再计算出第i个乘客ri当前所在位置区域fai=or(h1,2,h3,4);

步骤3.3、第i个乘客ri分别将第i个乘客ri当前所在位置一fli1转换为第一字符串stri1,将第i个乘客ri当前所在位置二fli2转换为第二字符串stri2,将第i个乘客ri当前所在位置三fli3转换为第三字符串stri3,将第i个乘客ri当前所在位置四fli4转换为第四字符串stri4,再使用无前缀编码方式将第i个乘客ri当前所在位置区域fai和四个字符串stri1,stri2,stri3,stri4组合成第i个乘客ri字符串集合qi;

步骤3.4、第i个乘客ri选出曾匹配司机并排除后,使用前缀编码方式产生新的司机集合si,再使用字符串连接方式处理所述第i个乘客ri字符串集合qi与所述新的司机集合si,从而得到乘客ri请求参数集合qi′;

步骤3.5、第i个乘客ri激活所述不可分辨布隆过滤器ibf:随机产生一个包含n个数的随机数集合rn,并通过使用u个不同的哈希函数h1,h2,...,hu、所述随机哈希函数h和u+1个所述密钥sk=(k1,k2,...,ku+1),将所述乘客ri请求参数集合qi′中的每个元素分别与所述随机数集合rn中的任意一个随机数组合后插入到所述含有m对双元组的数组集合b中,从而得到激活后的不可分辨布隆过滤器ibf;

步骤3.6、第i个乘客ri使用所述网约车服务商rhsp的公钥pk加密所述新的不可分辨布隆过滤器ibf和所述随机数集合rn并生成第i个乘客ri密文ci,再使用所述第i个乘客ri的私钥对所诉第i个乘客ri密文ci进行签名得到第i个乘客ri数字签名ci;

步骤3.7、第i个乘客ri将所述第i个乘客ri密文ci、所述第i个乘客ri数字签名ci和所述第i个乘客ri证书cti进行组合后得到服务请求集合indexi发送给网约车服务商rhsp;

步骤四、请求响应:

步骤4.1、第j个司机dj从t个所述空间编码映射函数f1,f2,...,ft中第一次随机选择一组4个空间编码映射函数,并使用相应的空间编码组合和函数,计算第j个司机dj当前所在位置一flj1;

步骤4.2、第j个司机dj重复执行步骤4.1三次,从而选取三组不同的空间编码映射函数,并得到第j个司机dj当前所在位置二flj2、第j个司机dj当前所在位置三flj3、第j个司机dj当前所在位置四flj4,再使用空间编码组合或函数hi,j=or(gi,gj),计算hj1,2=or(flj1,flj2)及hj3,4=or(flj3,flj4),再计算出第j个司机dj当前所在位置区域faj=or(hj1,2,hj3,4);

步骤4.3、第j个司机dj分别将第j个司机dj当前所在位置一flj1转换为第一字符串strj1,将第j个司机dj当前所在位置二flj2转换为第二字符串strj2,将第j个司机dj当前所在位置三flj3转换为第三字符串strj3,将第j个司机dj当前所在位置四flj4转换为第四字符串strj4,再使用无前缀编码方式将所述第j个司机dj当前所在位置区域faj和四个字符串strj1,strj2,strj3,strj4组合成第j个司机dj字符串集合qj;

步骤4.4、第j个司机dj使用前缀编码方式产生自身身份集合sj,使用字符串连接方式处理所述第j个司机dj字符串集合qj与所述司机集合sj,得到第j个司机dj响应参数集合qj′;

步骤4.5、第j个司机dj使用所述u个不同的哈希函数h1,h2,...,hu、所述随机哈希函数h和所述u+1个密钥sk=(k1,k2,...,ku+1)运算所述第j个司机dj响应参数集合qj′中的每个元素qj,得到运算结果rpj;

步骤4.6、第j个司机dj使用所述网约车服务商rhsp公钥pk加密所述运算结果rpj生成第j个司机dj密文cj,并所述第j个司机dj私钥对所诉第j个司机dj密文cj签名得到第j个司机dj数字签名cj;

步骤4.7、第j个司机dj将所述第j个司机dj密文cj、所述第j个司机dj数字签名cj和所述第j个司机dj证书ctj的服务响应集合tokenj发送给网约车服务商rhsp;

步骤五、请求匹配:

步骤5.1、网约车服务商rhsp接收到所述服务请求集合indexi和所述服务响应集合tokenj后,使用所述第i个乘客ri的公钥验证所述第i个乘客ri数字签名ci,并使用所述第j个司机dj的公钥验证所述第j个司机dj数字签名cj;如果均证成功,则入步骤5.2,否则丢弃当前接收的信息,并等待接收下一条;

步骤5.2、网约车服务商rhsp使用所述网约车服务商rhsp的私钥sk解密所述第i个乘客ri密文ci和所述第j个司机dj密文cj,得到所述新的不可分辨布隆过滤器ibf、所述随机数集合rn和所述运算结果rpj,从而使用所述新的数组集合bi、所述随机数集合rn和所述运算结果rpj产生匹配结果g;

步骤5.3、网约车服务商rhsp产生一个第i个乘客ri和第j个司机dj的认证码auij,并使用所述第i个乘客ri的公钥加密所述匹配结果g、使用所述乘客证书cti和所述认证码auij得到乘客密文再使用所述网约车服务商rhsp的私钥sk对乘客密文签名得到乘客数字签名σi,将所述乘客密文和所述乘客数字签名σi进行组合后得到的集合mri发送给第i个乘客ri;

步骤5.4、网约车服务商rhsp使用所述第j个司机dj的公钥加密所述匹配结果g、并使用所述第j个司机证书ctj和所述认证码auij得到司机密文再使用所述网约车服务商rhsp的私钥sk对司机密文签名得到司机数字签名σj,将所述司机密文和所述司机数字签名σj进行组合后得到的集合mdj发送给第j个司机dj;

步骤六、请求服务:

步骤6.1、第j个司机dj接收到所述集合mdj后,使用所述网约车服务商rhsp的公钥pk验证所述司机数字签名σj,若验证通过,则使用所述第j个司机dj的私钥解密所述司机密文得到所述匹配结果g和所述认证码auij,从而通过所述匹配结果g和所述认证码auij与第i个乘客ri建立联系,以提供网约车服务;

步骤6.2、第i个乘客ri接收到所述集合mri,使用所述网约车服务商rhsp的公钥pk验证所述数字签名σi,若验证通过,则使用所述第i个乘客ri的私钥解密所述乘客密文得到所述匹配结果g和所述认证码auij,从而通过所述匹配结果g和所述认证码auij与第j个司机dj建立联系,以接收网约车服务。

与现有技术相比,本发明的有益效果在于:

1、本发明使用匿名证书方法确保了乘客方与司机方在向网约车服务商上传或请求数据时确保身份匿名性,防止个人信息被网约车服务商知晓,提高了安全性;

2、本发明使用空间编码方法确保了乘客方与司机方在向网约车服务商上传或请求数据时确保位置信息隐秘性,无法被网约车服务商还原出原始位置信息,防止个人位置信息的泄露,提高了机密性;

3、本发明通过结合对称加密、非对称加密以及属性加密等加密算法确保了在加密态下进行数据传输和数据匹配,无法被网约车服务商还原出原始信息,提高了数据机密性;

4、本发明使用不可分辨布鲁过滤器确保了乘客的身份无法区分性,保证了网约车服务商在服务匹配阶段的乘客身份匿名性,防止个人真实信息被网约车服务商知晓,提高了安全性;

5、本发明使用前缀族编码方法以及前缀族串接方法有效保障了整体系统的功能完整性以及面对数据泄露问题时的可溯源性。

附图说明

图1是本发明排除曾匹配司机的隐私保护网约车系统的流程图;

图2是本发明排除曾匹配司机的隐私保护网约车系统的结构图。

具体实施方式

本实施例中,一种排除曾匹配司机的隐私保护网约车系统,如图2所示,包括:多个乘客模块、多个司机模块、一个网约车服务商模块以及一个分认证机构模块;

乘客模块包括:乘客注册单元、请求生成单元、请求传送单元和接收服务单元;

司机模块包括:司机注册单元、请求响应单元、响应传送单元和提供服务单元;

网约车服务商模块包括:网约车服务商注册单元、身份验证单元、服务匹配单元和匹配结果传送单元;

认证机构模块包括:系统初始化单元和实体注册单元;

系统初始化单元用于生成空间编码映射函数、空间编码组合函数、双元组数组集合、哈希函数和随机函数,并公示至系统内所有单元;

实体注册单元接收乘客注册单元注册后,生成乘客证书和乘客公私钥对,并将乘客证书和乘客私钥发送至乘客注册单元,将乘客公钥公示至系统内所有单元。

实体注册单元接收司机注册单元注册后,生成司机证书和司机公私钥对,并将司机证书和司机私钥发送至司机注册单元,将司机公钥公示至系统内所有单元。

实体注册单元接收网约车服务商注册单元注册后,网约车服务商公私钥对,并将网约车服务商私钥发送至网约车服务商注册单元,将网约车服务商公钥公示至系统内所有单元;

网约车服务商注册单元向实体注册单元注册后,接收网约车服务商私钥,并发送至身份验证单元;

请求生成单元接收系统初始化单元公示的信息后,计算出乘客当前位置所在区域,生成排除曾匹配司机后的准许集合,组合成字符串集合,插入至双元组数组集合,并将双元组数组集合发送至请求传送单元;

乘客注册单元向实体注册单元注册后,接收乘客证书和乘客私钥,并发送至请求传送单元;

请求传送单元使用接收到请求生成单元、乘客注册单元的信息后,使用公示的网约车服务商公钥生成请求密文,使用乘客私钥生成请求数字签名,并将请求密文、请求数字签名和乘客证书发送至身份验证单元;

身份验证单元接收到请求传送单元发送的请求密文、请求数字签名和乘客证书后,验证请求数字签名,验证通过,解密请求密文,并将请求解密结果发送至服务匹配单元,验证不通过,则丢弃当前请求,等待接收下一个;

司机注册单元向实体注册单元注册后,接收司机证书和司机私钥,并发送至响应传送单元;

响应生成单元接收系统初始化单元公示的信息后,计算出司机当前位置所在区域,生成请求响应,并将请求响应发送至请求传送单元;

响应传送单元使用接收到响应生成单元、司机注册单元的信息后,使用公示的网约车服务商公钥生成响应密文,使用司机私钥生成响应数字签名,并将响应密文、响应数字签名和司机证书发送至身份验证单元;

身份验证单元接收到响应传送单元发送的响应密文、响应数字签名和司机证书后,验证响应数字签名,验证通过,解密响应密文,并将响应解密结果发送至服务匹配单元,验证不通过,则丢弃当前响应,等待接收下一个;

服务匹配单元接收到身份验证单元发送的请求解密结果和响应解密结果后,产生匹配结果,并将匹配结果发送至匹配结果传送单元;

匹配结果传送单元接收服务匹配单元发送的匹配结果后,生成认证码,使用公示的乘客公钥生成乘客匹配密文,使用网约车服务商私钥签名生成乘客匹配数字签名,将乘客匹配密文和乘客匹配数字签名发送至接收服务单元;

匹配结果传送单元使用公示的司机公钥生成司机匹配密文,使用网约车服务商私钥签名生成司机匹配数字签名,将司机匹配密文和司机匹配数字签名发送至提供服务单元;

接收服务单元接收匹配结果传送单元发送的乘客匹配密文和乘客匹配数字签名后,使用公示的网约车服务商公钥验证乘客匹配数字签名,使用乘客私钥解密乘客匹配密文,得到匹配结果和认证码,使用认证码接收匹配司机提供的网约车服务;

提供服务单元接收匹配结果传送单元发送的司机匹配密文和司机匹配数字签名后,使用公示的网约车服务商公钥验证司机匹配数字签名,使用司机私钥解密司机匹配密文,得到匹配结果和认证码,使用认证码为匹配乘客提供网约车服务。

本实施例中,一种排除曾匹配司机的隐私保护网约车方法,是应用于多个乘客r、多个司机d、一个网约车服务商rhsp和一个认证机构所构成的网约车服务环境中;如图1所示,总共分为乘客注册、司机注册、服务商注册、服务请求、服务响应以及匹配结果;具体的说,是按如下步骤进行:

步骤一、系统初始化:

步骤1.1、认证机构选择t个空间编码映射函数f1,f2,...,ft,其中d是间隔长度,t个向量等分整个2π空间,选择空间编码组合和函数为gi,j=and(fi,fj)和空间编码组合或函数为hi,j=or(gi,gj),其中,ft表示第t个空间编码映射函数;其中,fi表示第i个空间编码映射函数,fj表示第j个空间编码映射函数;and(·)表示空间编码和函数;gi和gj表示选择两组不同空间编码映射函数后使用空间编码和函数的结果;or(·)表示空间编码组合或函数;i和j的范围为1……t;

步骤1.2、认证机构设定不可分辨布隆过滤器ibf参数:设定乘客和司机身份二进制表示长度w,为了初始化indistinguishablebloomfilter(ibf),选择一个含有m对双元组的数组集合b,选择u个不同的哈希函数h1,h2,...,hu和一个随机哈希函数h,其中,hu表示第u个哈希函数;

步骤1.3、认证机构公示公共参数集合pp={f1,f2,...,ft,w,b,h1,h2,...,hu,h};

步骤二、实体注册:

步骤2.1、认证机构定期产生u+1个密钥sk=(k1,k2,...,ku+1)。其中,kv表示第v个密钥;乘客ri以个人身份使用智能手机等设备向认证机构注册,认证机构产生新的乘客证书cti={cti1,cti2,...,ctiv}和一个乘客ri公钥私钥对并将集合发送给乘客ri;其中,ctiv是第v个乘客ri的乘客证书;

步骤2.2、司机dj以车牌身份向认证机构注册,认证机构产生新的司机证书ctj={ctj1,ctj2,...,ctjv}和一个司机dj公钥私钥对并将集合发送给司机dj,其中,ctjv是第v个司机dj的司机证书;这些证书cti={cti1,cti2,...,ctiv}和ctj={ctj1,ctj2,...,ctjv}相当于在本系统中所使用的用户假名。

步骤2.3、网约车服务商rhsp以服务商身份向认证机构注册,认证机构产生一个网约车服务商rhsp公钥私钥对(pk,sk),并将网约车服务商rhsp私钥sk发送给网约车服务商rhsp。公示乘客ri公钥司机dj公钥和网约车服务商rhsp公钥pk至整个系统。

步骤三、服务请求:

步骤3.1、乘客ri当前所在位置为pli,从t个空间编码映射函数f1,f2,...,ft中随机选择4个空间编码映射函数f1,f2,f3,f4,使用空间编码组合函数gi,j=and(fi,fj),计算当前所在位置fli1,其中,fli1为

步骤3.2、乘客ri选取三组不同的空间编码映射函数,重复步骤3.1三次,得到当前所在fli2,fli3,fli4,使用空间编码组合函数hi,j=or(gi,gj),计算当前所在位置区域fai,其中,fai为fai=or(fli1,fli2,fli3,fli4)。

步骤3.3、乘客ri分别将当前所在位置fli1,fli2,fli3,fli4转换为字符串stri1,stri2,stri3,stri4,其中,再使用无前缀编码方式将当前所在位置区域fai和字符串stri1,stri2,stri3,stri4组合成字符串集合qi,其中qi={00||stri1,01||stri2,10||stri3,11||stri4}。

步骤3.4、乘客ri排除曾匹配司机n,所有司机总数为n,则准许匹配司机范围为[1,n-1]∪[n+1,n],使用前缀编码方式将其转化,产生新的司机集合si={pi},使用字符串连接方式处理字符串集合qi与司机集合si,得到集合qi′。假设排除司机n=9,n=16,

则si={00***,01000,0101*,011**,10000},

qi′={00||stri1||00***,01||stri2||00***,10||stri3||00***,11||stri4||00***,...,11||stir4||10000}。

步骤3.5、乘客ri激活所述不可分辨布隆过滤器ibf:随机产生一个随机数集合rn,通过使用u个不同的哈希函数h1,h2,...,hu、随机函数h和u+1个密钥sk=(k1,k2,...,ku+1),将集合qi′中的每个元素qi与随机数集合rn中的随机数ri插入到含有m对双元组的数组集合b中,插入方法为:对于所有i∈[1,|qi′|],j∈[1,u],得到新的数组集合bi。

步骤3.6、乘客ri使用网约车服务商rhsp公钥pk加密数组集合bi和随机数集合rn生成密文ci,并使用乘客ri私钥对所诉密文ci签名得到数字签名ci。

步骤3.7、乘客ri将所诉密文ci、数字签名ci和乘客证书cti的集合indexi发送给网约车服务商rhsp。

步骤四、请求响应:

步骤4.1、司机dj当前所在位置为plj,从t个空间编码映射函数f1,f2,...,ft中随机选择4个空间编码映射函数f1,f2,f3,f4,使用空间编码组合函数gi,j=and(fi,fj),计算当前所在位置flj1,其中,flj1为

步骤4.2、司机dj选取三组不同的空间编码映射函数,重复步骤4.1三次,得到当前所在flj1,flj2,flj3,flj4,使用空间编码组合函数hi,j=or(gi,gj),计算当前所在位置区域faj,其中faj为faj=or(flj1,flj2,flj3,flj4)。

步骤4.3、司机dj分别将当前所在位置flj1,flj2,flj3,flj4转换为字符串strj1,strj2,strj3,strj4,其中再使用无前缀编码方式将当前所在位置区域faj和字符串strj1,strj2,strj3,strj4组合成字符串集合qj,其中,qj={00||strj1,01||strj2,10||strj3,11||strj4}。

步骤4.4、司机dj使用前缀编码方式产生自身身份集合sj,sj={pre1,pre2,...,prew},使用字符串连接方式处理字符串集合qj与司机集合sj,得到集合qj′,其中qj′为:qj′={00||strj1||pre1,01||strj2||pre1,10||strj3||pre1,11||strj4||pre1,...,11||strj4||prew}

步骤4.5、司机dj使用u个不同的哈希函数h1,h2,...,hu、随机函数h和u+1个密钥sk=(k1,k2,...,ku+1)运算集合qj′中的每个元素qj,得到运算结果rpj,其中

步骤4.6、司机dj使用网约车服务商rhsp公钥pk加密运算结果rpj生成密文cj,并司机dj私钥对所诉密文cj签名得到数字签名cj。

步骤4.7、司机dj将所诉密文cj、数字签名cj和司机证书ctj的集合tokenj发送给网约车服务商rhsp。

步骤五、请求匹配:

步骤5.1、网约车服务商rhsp接收到indexi和tokenj后,使用乘客ri公钥验证数字签名ci,使用司机dj公钥验证数字签名cj,验证乘客证书cti和司机证书ctj。如果验证成功,进入步骤5.2,否则丢弃当前接收,等待接收下一条。

步骤5.2、网约车服务商rhsp使用网约车服务商rhsp私钥sk解密密文ci和密文cj,得到数组集合bi、随机数集合rn和运算结果rpj,使用数组集合bi、随机数集合rn和运算结果rpj产生匹配结果g,匹配方法如下:

其中代表tokenj中第j个指令对,检查indexi中是否存在j∈[1,u],

步骤5.3、网约车服务商rhsp产生一个认证码auij,使用乘客ri公钥加密匹配结果g、乘客证书cti和认证码auij得到密文使用网约车服务商rhsp私钥sk对密文签名得到数字签名σi,将密文和数字签名σi的集合mri发送给乘客ri,其中

步骤5.4、网约车服务商rhsp使用司机dj公钥加密匹配结果g、司机证书ctj和认证码auij得到密文使用网约车服务商rhsp私钥sk对密文签名得到数字签名σj,将密文和数字签名σj的集合mdj发送给司机dj,其中

步骤六、请求服务:

步骤6.1、司机dj接收到集合mdj,使用网约车服务商rhsp公钥pk验证数字签名σj,使用司机dj私钥解密密文得到匹配结果g和认证码auij。通过匹配结果g和认证码auij与乘客ri建立联系,提供网约车服务。

步骤6.2、乘客ri接收到集合mri,使用网约车服务商rhsp公钥pk验证数字签名σi,使用乘客ri私钥解密密文得到匹配结果g和认证码auij。通过匹配结果g和认证码auij与司机dj建立联系,接收网约车服务。

综上所述,本发明结合了可搜索加密技术以及密码学方案,实现了一种排除曾匹配司机的隐私保护网约车方法与系统,能够有效保护乘客的隐私、确保接受网约车服务过程安全可靠,并有效避免了恶意曾匹配司机的潜在危险,从而保护了网约车系统安全性、机密性与高效性。

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