一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种具有前向隐私的多用户隐私保护电子病历查询方法与流程

2022-03-05 10:31:39 来源:中国专利 TAG:


1.本发明涉及一种具有前向隐私的多用户隐私保护电子病历查询方法,属于可搜索加密技术领域。


背景技术:

2.近年来,物联网和云计算技术的应用给传统医疗行业带来了巨大改变。在医疗系统中,传统的纸质病历正在转变为数字化的电子病历,电子医疗模式正在兴起。由于电子医疗具有高效且灵活的特性,许多患者选择在电子医疗系统中接受医疗服务。但是对于第一次在系统中注册的患者来说,由于缺乏经验,如何选择合适的医疗服务是一个很大的挑战。获得一些与患者症状关键字组合一致且服务评分较高的电子病历进行参考是一种有效的解决方法。具体来说,医疗服务机构将电子病历外包给云服务器以构建一个电子病历查询系统,患者提交自己的查询请求得到症状关键字组合一致且服务评分较高的电子病历进行参考。在上述过程中,如何保证电子病历和患者信息的隐私性是不得不考虑的。
3.可搜索加密是一类在不泄露敏感数据隐私的情况下实现加密数据搜索的技术。现有可搜索加密技术大多为单用户场景设计,并不适用于通常具有多个用户的电子病历查询系统。许多现有支持多用户场景的可搜索加密技术采用公钥加密算法进行设计,对于数据规模较大的电子病历查询系统来说效率较低。另外一些效率较高的多用户可搜索加密技术并不具有前向隐私性,这会在系统的更新过程中导致一定程度的隐私信息泄露。
4.上述已有的可搜索加密技术虽然可以保证其应用场景中电子病历和患者信息的隐私性,然而,这些工作并不能在保证高效率和前向隐私性的前提下帮助患者在多用户电子病历查询系统中得到症状关键字组合一致且服务评分较高的电子病历。本发明的目的是致力于解决上述可搜索加密技术缺陷,提出一种具有前向隐私的多用户隐私保护电子病历查询方法。


技术实现要素:

5.本发明的目的在于解决现有可搜索加密技术无法在保证高效率和前向隐私性的前提下帮助患者在多用户电子病历查询系统中得到症状关键字组合一致且服务评分较高的电子病历,提出了一种具有前向隐私的多用户隐私保护电子病历查询方法。
6.为了达到上述目的,本发明采取如下技术方案。
7.所述隐私保护电子病历查询方法依托于多用户电子病历查询系统,包括医疗服务机构、患者、物联网网关及云服务器;医疗服务机构将加密数据上传至云服务器,之后通过安全信道分别向物联网网关和云服务器发送查询密钥及重加密密钥,患者通过安全信道将便携式传感器收集到的症状信息发送至物联网网关,物联网网关向云服务器发送加密的查询请求并将收到的加密的电子病历解密后通过安全信道传输至患者,云服务器查询与患者症状关键字组合一致且服务评分较高的加密的电子病历并发送至物联网网关;
8.其中,加密数据包括加密的电子病历、加密的索引向量、服务评分以及桶集合;加
密的查询请求包括加密的查询向量以及查询向量的桶位置。
9.所述隐私保护电子病历查询方法,包括初始化、患者注册、生成加密数据并发送、生成加密的查询请求并发送、数据查询、患者撤销、加密数据添加及加密数据删除,具体包括如下步骤:
10.步骤1:初始化,具体为:医疗服务机构生成主密钥并存储,包括如下子步骤:
11.步骤1.1:医疗服务机构随机生成主密钥;
12.其中,主密钥由以下内容组成:一个用于拆分的n 2维二进制向量,两个用于加密的n 2阶可逆矩阵m1和m2,n为症状关键字字典的大小;一个二进制字符串sk1,用于加密电子病历的对称密钥sk2;一个伪随机函数f();一个密钥哈希函数;
13.步骤1.2:医疗服务机构存储主密钥;
14.步骤2:患者注册,具体为:在收到患者的注册信息后,医疗服务机构基于主密钥生成查询密钥及重加密密钥,并通过安全信道将查询密钥及重加密密钥分别发送至物联网网关和云服务器,包括如下子步骤:
15.步骤2.1:在收到患者i的注册信息后,医疗服务机构随机生成可逆阵,基于主密钥生成查询密钥及重加密密钥,具体包括如下子步骤:
16.步骤2.1.1:医疗服务机构随机生成两个n 2阶可逆矩阵a
i,1
和b
i,1

17.步骤2.1.2:医疗服务机构基于主密钥计算可逆阵和可逆阵
18.步骤2.1.3:医疗服务机构基于主密钥生成查询密钥及重加密密钥;
19.步骤2.2:医疗服务机构通过安全信道将查询密钥及重加密密钥分别发送至物联网网关和云服务器;
20.步骤3:生成加密数据并发送,具体为:医疗服务机构从电子病历提取症状关键字组合和服务评分,对电子病历进行脱敏及加密处理得到加密的电子病历,构造索引向量并生成加密的索引向量;初始化一个桶集合,计算电子病历的桶位置并将电子病历的编号存入对应的桶中,利用加密的索引向量、加密的电子病历、服务评分以及桶集合构造加密数据并发送至云服务器,包括如下子步骤:
21.步骤3.1:医疗服务机构从电子病历中提取症状关键字组合和服务评分;
22.其中,关键字组合是一个二进制字符串,记为:x
j,1
x
j,2

x
j,n
,服务评分是一个正整数;下标j为电子病历的编号,x
j,t
是一个二进制数,x
j,t
=1时表示包含症状关键字字典中第t个关键字,x
j,t
=0时表示不包含症状关键字字典中第t个关键字,t=1,2,

,n;
23.步骤3.2:医疗服务机构对电子病历进行脱敏处理,得到脱敏后的电子病历;
24.步骤3.3:医疗服务机构基于aes算法使用对称密钥sk2加密脱敏后的电子病历得到加密的电子病历;
25.步骤3.4:医疗服务机构构造n 2维索引向量ij;
26.其中,ij=(x
j,1
,x
j,2
,

,x
j,n
,-1,f(sk1,j));
27.其中,x
j,1
x
j,2

x
j,n
是关键字组合;f是一个伪随机函数;sk1是一个二进制字符串,j为电子病历的编号;
28.步骤3.5:医疗服务机构使用二进制向量以及可逆矩阵m1、m2对索引向量ij进行加
密得到加密的索引向量,具体包括如下子步骤:
29.步骤3.5.1:医疗服务机构生成非0随机整数βj;
30.步骤3.5.2:医疗服务机构将索引向量ij修改为向量
31.其中,符号
·
表示两数相乘;
32.步骤3.5.3:医疗服务机构使用二进制向量将向量拆分为两个向量i
j,a
和i
j,b

33.具体拆分过程为:二进制向量中的第p项为0时,当二进制向量中的第p项为1时,随机拆分为p=1,2,

,n 2;
34.步骤3.5.4:医疗服务机构使用向量i
j,a
、i
j,b
以及可逆矩阵m1、m2得到加密的索引向量
35.步骤3.6:医疗服务机构初始化一个桶集合v;
36.其中,桶集合v由m个桶组成,每个桶是一个空集,用于存储电子病历的编号;
37.步骤3.7:医疗服务机构使用密钥哈希函数计算电子病历的桶位置lj;
38.步骤3.8:医疗服务机构将电子病历的编号存入对应的桶中;
39.步骤3.9:医疗服务机构利用加密的索引向量、加密的电子病历、服务评分以及桶集合v构造加密数据;
40.步骤3.10:医疗服务机构将加密数据发送至云服务器;
41.步骤4:生成加密的查询请求并发送,具体为:患者通过便携式传感器收集自身的症状信息,并通过安全信道将症状信息发送至物联网网关;物联网网关从患者的症状信息中提取症状关键字组合,构造查询向量并生成加密的查询向量,之后计算查询向量的桶位置,利用加密的查询向量以及查询向量的桶位置构造加密的查询请求并发送至云服务器,包括如下子步骤:
42.步骤4.1:患者i通过便携式传感器收集自身的症状信息;
43.步骤4.2:患者i通过安全信道将症状信息发送至物联网网关;
44.步骤4.3:物联网网关从患者i的症状信息中提取症状关键字组合;
45.步骤4.4:物联网网关构造n 2维查询向量;
46.步骤4.5:物联网网关使用二进制向量以及可逆矩阵a
i,1
、b
i,1
对查询向量进行加密得到加密的查询向量,具体包括如下子步骤:
47.步骤4.5.1:物联网网关生成随机数αi;
48.其中,αi为非0整数;
49.步骤4.5.2:物联网网关将查询向量修改为向量
50.其中,
51.步骤4.5.3:物联网网关使用二进制向量将向量拆分为两个向量q
i,a
和q
i,b

52.具体拆分过程为:对于二进制向量中的第p项等于1时,具体拆分过程为:对于二进制向量中的第p项等于1时,当二进制向量中的第p项等于0时,随机拆分为
53.步骤4.5.4:物联网网关使用向量q
i,a
、q
i,b
以及可逆矩阵a
i,1
、b
i,1
得到加密的查询向量
54.其中,为一个有序对,记为:
55.步骤4.6:物联网网关使用密钥哈希函数计算查询向量的桶位置;
56.步骤4.7:物联网网关利用加密的查询向量以及查询向量的桶位置构造加密的查询请求;
57.步骤4.8:物联网网关将加密的查询请求发送至云服务器;
58.步骤5:数据查询,具体为:在收到加密的查询请求后,云服务器对加密的查询向量进行重加密得到转换后的查询向量;云服务器使用转换后的查询向量查询与患者症状关键字组合一致且服务评分较高的加密的电子病历并发送至物联网网关;物联网网关将收到的加密的电子病历解密后通过安全信道传输至患者,包括如下子步骤:
59.步骤5.1:在收到加密的查询请求后,云服务器使用重加密密钥对加密的查询向量进行重加密得到转换后的查询向量,具体重加密过程如下:
[0060][0061]
步骤5.2:云服务器使用转换后的查询向量查询与患者症状关键字组合一致且服务评分较高的加密的电子病历,具体包括如下子步骤:
[0062]
步骤5.2.1:云服务器初始化一个空集sti;
[0063]
步骤5.2.2:云服务器使用转换后的查询向量与每个对应电子病历的编号位于桶中的加密的索引向量进行匹配得到匹配结果y
i,j
,具体匹配过程如下:
[0064][0065]
其中,符号
°
表示两个有序对对应位置元素进行内积运算;
[0066]
步骤5.2.3:云服务器更新集合sti;
[0067]
步骤5.2.4:云服务器将更新后的集合sti发送至物联网网关;
[0068]
步骤5.2.5:物联网网关初始化一个空集idi;
[0069]
步骤5.2.6:物联网网关将满足一定条件的电子病历的编号j添加进集合idi,具体判断条件如下:
[0070]yi,j
=αi·
f(sk1,j)
[0071]
若该等式成立则意味着患者i与编号为j的电子病历具有相同的症状关键字组合;
[0072]
步骤5.2.7:物联网网关设定一个正整数值k;
[0073]
步骤5.2.8:物联网网关将集合idi中对应服务评分前k高的电子病历的编号发送至云服务器;
[0074]
步骤5.3:云服务器将步骤5.2.8中电子病历的编号j对应加密的电子病历发送至物联网网关;
[0075]
步骤5.4:物联网网关基于aes算法使用对称密钥sk2将收到的加密的电子病历解密;
[0076]
步骤5.5:物联网网关通过安全信道将解密后的电子病历发送至患者;
[0077]
步骤6:患者撤销,具体为:医疗服务机构向云服务器发送患者的撤销信息,云服务器将对应的重加密密钥删除,包括如下子步骤:
[0078]
步骤6.1:对于需要被撤销查询权限的患者i,医疗服务机构向云服务器发送其撤销信息;
[0079]
步骤6.2:云服务器删除对应的重加密密钥;
[0080]
若重加密密钥被删除,则加密的查询向量不能被重加密得到转换后的查询向量由此患者i无法查询到电子病历;
[0081]
步骤7:加密数据添加,具体为:医疗服务机构生成更新数据并发送至云服务器,云服务器将电子病历的编号存入电子病历的桶位置对应的桶中,包括如下子步骤:
[0082]
步骤7.1:对于需要被添加的电子病历的编号为j的电子病历,医疗服务机构生成更新数据;
[0083]
步骤7.2:医疗服务机构将更新数据发送至云服务器;
[0084]
步骤7.3:云服务器将电子病历的编号j存入对应的桶中;
[0085]
步骤8:加密数据删除,具体为:医疗服务机构将被删除电子病历的编号发送至云服务器,云服务器删除对应加密的电子病历、加密的索引向量以及服务评分,并从电子病历的桶位置对应的桶中删除对应电子病历的编号,包括如下子步骤:
[0086]
步骤8.1:对于需要被删除的电子病历的编号为j的电子病历,医疗服务机构将电子病历的编号j发送至云服务器;
[0087]
步骤8.2:云服务器删除对应加密的电子病历、加密的索引向量以及服务评分;
[0088]
步骤8.3:云服务器从对应的桶中删除电子病历的编号j;
[0089]
至此,经过步骤1到步骤8,完成了一种具有前向隐私的多用户隐私保护电子病历查询方法。
[0090]
有益效果
[0091]
本发明一种具有前向隐私的多用户隐私保护电子病历查询方法,与现有可搜索加
密技术相比,具有如下有益效果:
[0092]
1.现有可搜索加密技术大多为单用户场景设计,并不适用于通常具有多个用户的电子病历查询系统;本发明采用基于矩阵的代理重加密方法实现灵活的患者注册和患者撤销,为每个患者提供不同的查询密钥,帮助患者在多用户电子病历查询系统中得到症状关键字组合一致且服务评分较高的电子病历;
[0093]
2.许多现有支持多用户场景的可搜索加密技术采用公钥加密算法进行设计,对于数据规模较大的电子病历查询系统来说效率较低;本发明采用桶结构以及非对称内积计算加密算法进行隐私保护电子病历查询,与现有多用户可搜索加密技术相比,效率上有很大的提升;
[0094]
3.一些效率较高的多用户可搜索加密技术并不具有前向隐私性,这会在系统的更新过程中导致一定程度的隐私信息泄露;本发明采用伪随机函数实现了前向隐私,云服务器无法得知新添加电子病历中包含的症状关键字组合,从而进一步保证电子病历和患者信息的隐私性。
附图说明
[0095]
图1是本发明一种具有前向隐私的多用户隐私保护电子病历查询方法的系统模型图;
[0096]
图2是本发明一种具有前向隐私的多用户隐私保护电子病历查询方法的数据查询性能的仿真结果图。
具体实施方式
[0097]
下面结合附图和实施例对本发明一种具有前向隐私的多用户隐私保护电子病历查询方法做进一步说明和详细描述。
[0098]
实施例1
[0099]
本实施例详细阐述了本发明一种具有前向隐私的多用户隐私保护电子病历查询方法具体实施时的一个典型执行过程。
[0100]
假设某电子病历查询系统拥有10000个电子病历,分别从00001编号至10000,每个电子病历包含个人信息、症状关键字组合、医疗服务信息以及服务评分;其中,个人信息包含该电子病历对应患者的姓名、年龄和联系方式,症状关键字组合由该电子病历对应患者的症状关键字组成,医疗服务信息包含就诊科室、主治医师和治疗情况,服务评分为该电子病历对应患者对医疗服务的评价;该系统中症状关键字字典大小为n=4,包含的症状关键字从前往后依次为:咳嗽、发烧、感冒以及头痛;
[0101]
假设一名具有发烧和头痛症状的患者i首次注册在本实施例中的电子病历查询系统,其采用本发明所述方法执行具有前向隐私的多用户隐私保护电子病历查询的操作,具体包括如下步骤:
[0102]
步骤1:初始化,具体为:医疗服务机构生成主密钥并存储,包括如下子步骤:
[0103]
步骤1.1:医疗服务机构随机生成主密钥msk={s,m1,m2,sk1,sk2,f,h};其中,6维二进制向量s=(1,0,0,0,0,1),6阶可逆矩阵m1=[1,1,0,0,0,0;0,1,0,0,0,0;0,0,1,0,0,0;0,0,0,1,0,0;0,0,0,0,1,0;0,0,0,0,0,1],6阶可逆矩阵m2=[1,0,0,0,0,0;1,1,0,0,0,
0;0,0,1,0,0,0;0,0,0,1,0,0;0,0,0,0,1,0;0,0,0,0,0,1],长度为4比特的二进制字符串sk1=0010,对称密钥sk2="feerwfpui89bnw2g",伪随机函数f:{0,1}4×
{0,1}
*

{0,1}4,密钥哈希函数h:{0,1}
*
×
{0,1}4→
{0,1}4;
[0104]
步骤1.2:医疗服务机构存储主密钥msk;
[0105]
步骤2:患者注册,具体为:对应图1医疗服务机构接收注册信息、发送查询密钥以及发送重加密密钥,在收到患者的注册信息后,医疗服务机构基于主密钥生成查询密钥及重加密密钥,并通过安全信道将查询密钥及重加密密钥分别发送至物联网网关和云服务器,包括如下子步骤:
[0106]
步骤2.1:在收到患者i的注册信息后,医疗服务机构基于主密钥msk生成查询密钥及重加密密钥,具体包括如下子步骤:
[0107]
步骤2.1.1:医疗服务机构随机生成6阶可逆矩阵a
i,1
=[1,-1,0,0,0,0;0,1,0,0,0,0;0,0,1,0,0,0;0,0,0,1,0,0;0,0,0,0,1,0;0,0,0,0,0,1]和6阶可逆矩阵b
i,1
=[1,0,0,0,0,0;-1,1,0,0,0,0;0,0,1,0,0,0;0,0,0,1,0,0;0,0,0,0,1,0;0,0,0,0,0,1];
[0108]
步骤2.1.2:医疗服务机构基于主密钥msk计算务机构基于主密钥msk计算
[0109]
步骤2.1.3:医疗服务机构基于主密钥msk生成查询密钥ski={s,a
i,1
,b
i,1
,sk1,sk2,f,h}及重加密密钥rki={a
i,2
,b
i,2
};
[0110]
步骤2.2:医疗服务机构通过安全信道将查询密钥ski及重加密密钥rki分别发送至物联网网关和云服务器;
[0111]
步骤3:生成加密数据并发送,具体为:对应图1医疗服务机构发送加密数据,医疗服务机构从电子病历提取症状关键字组合和服务评分,对电子病历进行脱敏及加密处理得到加密的电子病历,构造索引向量并生成加密的索引向量;初始化一个桶集合,计算电子病历的桶位置并将电子病历的编号存入对应的桶中,利用加密的索引向量、加密的电子病历、服务评分以及桶集合构造加密数据并发送至云服务器,包括如下子步骤:
[0112]
步骤3.1:医疗服务机构从电子病历中提取症状关键字组合τj=x
j,1
x
j,2
x
j,3
x
j,4
和服务评分ωj;编号02021的电子病历提取的症状关键字组合τ
02021
=0101,服务评分ω
02021
=9,该电子病历对应患者的症状关键字为发烧和头痛,对医疗服务的评价为9分;类似这种方法可以得到其余电子病历对应的症状关键字组合和服务评分;
[0113]
步骤3.2:医疗服务机构对电子病历进行脱敏处理,即删除各个电子病历的个人信息及症状关键字组合部分;
[0114]
步骤3.3:医疗服务机构基于a e s算法使用对称密钥sk2="feerwfpui89 bnw2g"加密脱敏后的电子病历得到加密的电子病历cj;
[0115]
步骤3.4:医疗服务机构构造6维索引向量ij=(x
j,1
,x
j,2
,x
j,3
,x
j,4
,-1,f(0010,j));编号02021的电子病历对应的索引向量i
02021
=(0,1,0,1,-1,f(0010,02021));类似这
种方法可以得到其余电子病历对应的索引向量;
[0116]
步骤3.5:医疗服务机构使用二进制向量s以及可逆矩阵m1、m2对索引向量ij进行加密得到加密的索引向量,具体包括如下子步骤:
[0117]
步骤3.5.1:医疗服务机构生成随机数βj;编号02021的电子病历对应的随机数β
02021
=3;
[0118]
步骤3.5.2:医疗服务机构将索引向量ij修改为向量修改为向量编号02021的电子病历对应的向量编号02021的电子病历对应的向量类似这种方法可以得到其余电子病历对应的向量
[0119]
步骤3.5.3:医疗服务机构使用二进制向量s将向量拆分为两个向量i
j,a
和i
j,b

[0120]
具体拆分过程为:对于向量s中的第p项s[p],当s[p]=0时,具体拆分过程为:对于向量s中的第p项s[p],当s[p]=0时,当s[p]=1时,随机拆分为p=1,2,

,6;
[0121]
因此向量被拆分为i
02021,a
=(-1,3,0,3,-3,0)和i
02021,b
=(1,3,0,3,-3,f(0010,02021));类似这种方法可以得到其余向量拆分后的向量;
[0122]
步骤3.5.4:医疗服务机构使用向量i
j,a
、i
j,b
以及可逆矩阵m1、m2得到加密的索引向量编号02021的电子病历对应的加密的索引向量类似这种方法可以得到其余电子病历对应的加密的索引向量;
[0123]
步骤3.6:医疗服务机构初始化一个桶集合v={v1,v2,

,v
10
};其中每个桶是一个空集,用于存储电子病历的编号;
[0124]
步骤3.7:医疗服务机构使用密钥哈希函数h计算电子病历的桶位置lj=h(τj,0010);编号02021的电子病历对应的桶位置l
02021
=h(0101,0010)=3;类似这种方法可以得到其余电子病历对应的桶位置;
[0125]
步骤3.8:医疗服务机构将电子病历的编号j存入对应的桶中;因此编号02021存入桶v3中;类似这种方法可以将其余电子病历的编号存入对应的桶中;
[0126]
步骤3.9:医疗服务机构利用加密的索引向量、加密的电子病历cj、服务评分ωj以及桶集合v构造加密数据
[0127]
步骤3.10:医疗服务机构将加密数据edj发送至云服务器;
[0128]
步骤4:生成加密的查询请求并发送,具体为:对应图1患者发送症状信息以及物联网网关发送加密的查询请求,患者通过便携式传感器收集自身的症状信息,并通过安全信道将症状信息发送至物联网网关;物联网网关从患者的症状信息中提取症状关键字组合,
构造查询向量并生成加密的查询向量,之后计算查询向量的桶位置,利用加密的查询向量以及查询向量的桶位置构造加密的查询请求并发送至云服务器,包括如下子步骤:
[0129]
步骤4.1:患者i通过便携式传感器收集自身的症状信息;
[0130]
步骤4.2:患者i通过安全信道将症状信息发送至物联网网关;
[0131]
步骤4.3:物联网网关从患者i的症状信息中提取症状关键字组合τi=0101;
[0132]
步骤4.4:物联网网关构造6维查询向量qi=(23,22,21,20,22 20,1)=(8,4,2,1,5,1);
[0133]
步骤4.5:物联网网关使用二进制向量s以及可逆矩阵a
i,1
、b
i,1
对查询向量qi进行加密得到加密的查询向量,具体包括如下子步骤:
[0134]
步骤4.5.1:物联网网关生成随机数αi=2;
[0135]
步骤4.5.2:物联网网关将查询向量qi修改为向量修改为向量
[0136]
步骤4.5.3:物联网网关使用二进制向量s将向量拆分为两个向量q
i,a
和q
i,b

[0137]
具体拆分过程为:对于向量s中的第p项s[p],当s[p]=1时,具体拆分过程为:对于向量s中的第p项s[p],当s[p]=1时,当s[p]=0时,随机拆分为
[0138]
因此向量被拆分为和q
i,b
=(16,3,4,0,3,2);
[0139]
步骤4.5.4:物联网网关使用向量q
i,a
、q
i,b
以及可逆矩阵a
i,1
、b
i,1
得到加密的查询向量
[0140]
步骤4.6:物联网网关使用密钥哈希函数h计算查询向量的桶位置l
ii
=h(0101,0010)=3;
[0141]
步骤4.7:物联网网关利用加密的查询向量以及查询向量的桶位置li构造加密的查询请求
[0142]
步骤4.8:物联网网关将加密的查询请求tdi发送至云服务器;
[0143]
步骤5:数据查询,具体为:对应图1云服务器发送加密的电子病历以及物联网网关发送电子病历,在收到加密的查询请求后,云服务器对加密的查询向量进行重加密得到转换后的查询向量;云服务器使用转换后的查询向量查询与患者症状关键字组合一致且服务评分较高的加密的电子病历并发送至物联网网关;物联网网关将收到的加密的电子病历解密后通过安全信道传输至患者,包括如下子步骤:
[0144]
步骤5.1:在收到加密的查询请求tdi后,云服务器使用重加密密钥rki对加密的查询向量进行重加密得到转换后的查询向量进行重加密得到转换后的查询向量
[0145]
步骤5.2:云服务器使用转换后的查询向量查询与患者症状关键字组合一致且服务评分较高的加密的电子病历cj,具体包括如下子步骤:
[0146]
步骤5.2.1:云服务器初始化一个空集sti;
[0147]
步骤5.2.2:云服务器使用转换后的查询向量与每个对应电子病历的编号j位于桶v3中的加密的索引向量进行匹配得到匹配结果对于桶中编号02021,匹配结果编号02021,匹配结果类似这种方法可以得到桶v3中其他电子病历的编号对应的匹配结果;
[0148]
步骤5.2.3:云服务器更新集合sti=sti∪{(j,y
i,j
,ωj)};
[0149]
步骤5.2.4:云服务器将更新后的集合sti发送至物联网网关;
[0150]
步骤5.2.5:物联网网关初始化一个空集idi;
[0151]
步骤5.2.6:物联网网关将满足条件y
i,j
=2
·
f(0010,j)的电子病历的编号j添加进集合idi;对于编号02021,其匹配结果y
i,02021
=2
·
f(0010,02021),因此被添加进集合idi;类似这种方法可以得到最终的集合idi;
[0152]
步骤5.2.7:物联网网关设定值k=5;
[0153]
步骤5.2.8:物联网网关将集合idi中对应服务评分前5高的电子病历的编号j发送至云服务器;
[0154]
步骤5.3:云服务器将步骤5.2.8中电子病历的编号j对应加密的电子病历cj发送至物联网网关;
[0155]
步骤5.4:物联网网关基于aes算法使用对称密钥sk2将收到的加密的电子病历cj解密;
[0156]
步骤5.5:物联网网关通过安全信道将解密后的电子病历发送至患者;
[0157]
步骤6:患者撤销,具体为:医疗服务机构向云服务器发送患者的撤销信息,云服务器将对应的重加密密钥删除,包括如下子步骤:
[0158]
步骤6.1:对于需要被撤销查询权限的患者i,医疗服务机构向云服务器发送其撤销信息;
[0159]
步骤6.2:云服务器删除对应的重加密密钥rki;
[0160]
步骤7:加密数据添加,具体为:医疗服务机构生成更新数据并发送至云服务器,云服务器将电子病历的编号存入电子病历的桶位置对应的桶中,包括如下子步骤:
[0161]
步骤7.1:对于需要被添加的电子病历的编号为02021的电子病历,医疗服务机构生成更新数据
[0162]
步骤7.2:医疗服务机构将更新数据ud
02021
发送至云服务器;
[0163]
步骤7.3:云服务器将电子病历的编号02021存入对应的桶v3中;
[0164]
步骤8:加密数据删除,具体为:医疗服务机构将被删除电子病历的编号发送至云服务器,云服务器删除对应加密的电子病历、加密的索引向量以及服务评分,并从电子病历的桶位置对应的桶中删除对应电子病历的编号,包括如下子步骤:
[0165]
步骤8.1:对于需要被删除的电子病历的编号为02021的电子病历,医疗服务机构将电子病历的编号02021发送至云服务器;
[0166]
步骤8.2:云服务器删除对应加密的电子病历c
02021
、加密的索引向量以及服务评分ω
02021

[0167]
步骤8.3:云服务器从对应的桶v3中删除电子病历的编号02021;
[0168]
通过上述步骤,患者i完成了具有前向隐私的多用户隐私保护电子病历查询的操作;
[0169]
在所述方法的患者注册阶段、生成加密的查询请求并发送阶段、数据查询阶段以及患者撤销阶段,通过“基于主密钥生成查询密钥及重加密密钥”、“使用二进制向量s以及可逆矩阵a
i,1
、b
i,1
对查询向量qi进行加密得到加密的查询向量”、“对加密的查询向量进行重加密得到转换后的查询向量”以及“医疗服务机构向云服务器发送患者的撤销信息,云服务器将对应的重加密密钥删除”采用基于矩阵的代理重加密方法实现灵活的患者注册和患者撤销;本发明有益效果1可证;
[0170]
在所述方法的数据查询阶段,通过“使用转换后的查询向量与每个对应电子病历的编号j位于桶中的加密的索引向量进行匹配”采用桶结构以及非对称内积计算加密算法进行隐私保护电子病历查询,效率上有很大提升;图2为本发明的数据查询性能的仿真结果图,横坐标是电子病历的数量,纵坐标是查询时间,坐标点用圆点表示的曲线表示本发明数据查询性能,设定症状关键字字典的大小为20;从横坐标10000到100000对应的纵坐标值可以看出,采用桶结构以及非对称内积计算加密算法进行隐私保护电子病历查询的性能优势非常明显;本发明有益效果2可证;
[0171]
在所述方法的数据查询阶段,通过“将满足一定条件的电子病历的编号j添加进集合id
i”采用伪随机函数实现了前向隐私,云服务器在没有字符串sk1、伪随机函数f以及随机数αi的前提下无法得知条件“y
i,j
=αi·
f(sk1,j)”的判断结果,因此无法推断出新添加电子病历中包含的症状关键字组合,从而进一步保证电子病历和患者信息的隐私性;本发明有益效果3可证;
[0172]
以上所述为本发明的较佳实施例而已,本发明不应该局限于该实施例和附图所公开的内容。凡是不脱离本发明所公开的精神下完成的等效或修改,都落入本发明保护的范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献