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

一种匿名性和不可跟踪性的在线健康信息获取方法与流程

2022-03-09 04:33:27 来源:中国专利 TAG:


1.本发明属于信息安全技术及在线健康咨询领域,具体涉及一种匿名性和不可跟踪性的在线健康信息获取方法。


背景技术:

2.电子健康已成为一个新兴行业。“电子健康”是指通过互联网技术、移动媒体等途径获取的电子健康信息和服务。这些服务允许患者使用互联网,例如通过博客、论坛、在线社区、医患交流系统和其他先进系统获得健康支持。全世界有超过5000个与医疗保健相关的应用程序或软件。在线健康咨询是目前最受欢迎和发展迅速的在线健康服务之一。在线咨询用户数量不断增长。中国每月有超过25万次健康咨询。
3.然而,由于在线健康咨询的过程中需要传输大量的敏感的健康数据。目前,个人医疗信息泄露事件越来越多,同时健康app种类不断增多和逐渐细化。因此,安全性和隐私保护仍然是在线健康咨询面临的重要挑战。由于患者的健康信息是敏感的,而通信通道是不安全的,因此必须保护它们免受未经授权的实体的侵害。如何为病人提供健康信息的机密性、匿名性和不可跟踪性,访问控制病人的健康信息,是一个需要解决的关键问题。


技术实现要素:

4.针对上述技术的不足,本发明提出了一种匿名性和不可跟踪性的在线健康信息获取方法。
5.本发明的具体技术方案是:
6.本发明包括以下步骤:
7.步骤1.系统初始化:
8.可信中心生成系统参数,生成主公钥和主密钥;
9.步骤2.注册阶段:
10.医生注册身份信息id
dl
,可信中心验证身份信息有效后,将第一公钥和第一私钥通过安全信道发送给医生;
11.病人注册身份信息id
pti
,可信中心验证身份信息有效后,为病人选择n个不可链接的伪随机身份信息pidj,计算第二公钥和第二私钥后得到公钥集和私钥集;
12.步骤3.健康信息产生:
13.病人选择一个有效伪身份信息以及相应的第二私钥,计算得到会话秘钥,使用该会话秘钥产生第一密文c1和签名σ
pti
;并将{t
pti-new

pti
,c1,pidj,id
dl
}发送给可信中心,其中t
pti-new
是当前的时间戳;
14.步骤4.健康信息获取:
15.可信中心将接收到的信息进行时间戳和签名的有效验证,然后将{t
pti-new

pti
,c1,pidj,id
dl
}发送给相应的医生;医生进行解密后,进行分析诊断;
16.步骤5.健康结果反馈:
17.医生将认证信息和第二密文反馈给病人;病人验证信息后,解密得到健康结果。
18.本发明的有益效果是:为病人提供健康信息的机密性、匿名性和不可跟踪性。
附图说明
19.图1是本发明的流程图。
具体实施方式
20.如图1所示,一种匿名性和不可跟踪性的在线看病方法包括以下步骤:
21.步骤1:系统初始化
22.可信中心产生两个q阶循环群g1,g2,双线性映射e:g1*g1→
g2,p是g1的生成元,然后随机选择(代表1到q-1内的整数)作为主密钥,进而计算主公钥p
pub
=sp,以及两个安全的无碰撞加密散列函数h1(.):{0,1}
*

g1,可信中心公布系统参数{g1,g2,e,q,p,p
pub
,h1(.),h2(.)},然后将主密钥s秘密保存。
23.步骤2:注册阶段
24.首先是医生注册,医生d
l
提交身份信息id
dl
给可信中心,可信中心首先验证医生提交的身份信息是否有效,如果信息有效就计算医生的第一公钥q
dl
=h1(id
dl
)和第一私钥d
dl
=sh1(id
dl
)。然后将{q
dl
,d
dl
}通过安全信道发送给医生d
l

25.病人注册,病人pti提交他的真实身份信息id
pti
给可信中心,可信中心首先检查病人提交信息的有效性,然后为pti选择n个不可链接的伪随机身份信息:pid
pti
={pid0,...,pidj,pid
j 1
,...,pid
n-1
}。
26.对于每一个伪随机身份信息pidj,可信中心计算相应的第二公钥qj=h1(pidj),和相应的第二私钥dj=sh1(pidj)。并得到一个第二公钥集:
27.pub
pti
={q0,...,q
j-1
,qj,q
j 1
,...,q
n-1
}
28.和一个第二私钥集:
29.pri
pti
={d0,...,d
j-1
,dj,d
j 1
,...,d
n-1
}
30.通过这些伪随机身份信息,病人pti可以不断改变他的id,从而实现远程健康监控系统通信过程中的匿名性和不可追溯性。可信中心还将pid
pti
={pid0,...,pidj,pid
j 1
,...,pid
n-1
}发送给相应的医生d
l
。另外只有pidj过期之后才可以使用pid
j 1

31.步骤3:健康信息产生
32.病人pti选择一个未使用的有效伪身份信息pidj和相应的第二私钥dj。使用这个私钥,pti计算一个会话秘钥:
[0033][0034]
此会话秘钥共享。病人使用会话秘钥根据基于有效伪身份信息pidj的加密产生第一密文:
[0035]
c1=e
skpti
(m||t
pti-new
)
[0036]
其中,e
skpti
代表利用会话秘钥sk
pti-dl
进行的加密算法;m是被加密的健康信息,t
pti-new
是当前的时间戳,用来抵抗重放攻击。然后产生签名σ
pti
=h2(c1||pidj)dj。最后将
{t
pti-new

pti
,c1,pidj,id
dl
}发送给可信中心。
[0037]
步骤4:健康信息获取
[0038]
当可信中心收到信息{t
pti-new

pti
,c1,pidj,id
dl
}后,首先检查时间戳是否满足:
[0039]
t
pti-last-t
pti-new
≤δt
[0040]
其中,t
pti-last
是接收消息的最后一次时间,δt是连续收集健康信息之间的固定时间间隔.这可能有助于抵抗重放攻击。可信中心利用公共参数和接收到的值,通过计e(σ
pti
,p)=e(h2(c1||pidj)
·
h1(pidj),p
pub
)来检测签名的有效性。如果签名有效,则将信息{t
pti-new

pti
,c1,pidj,id
dl
}发送给相应的医生d
l

[0041]
医生d
l
计算会话秘钥sk
dl-pti
=e(d
dl
,h1(pidj))=e(q
dl
,qj)s进行解密:
[0042]
{m||t
pti-new
}=d
skdl-pti
(c1)
[0043]
其中,sk
dl-pti
=sk
pti-dl
;d
skdl-pti
代表利用会话秘钥sk
dl-pti
进行的解密算法。
[0044]
因此d
l
现在可以分析被加密的健康信息m,并给出必要和及时的医疗建议。通过检查t
pti-new
,d
l
能够判断信息何时由pti发送。这可以帮助医生获得来病人的数据并以此为病人的健康状况做出诊断。
[0045]
步骤5:健康结果反馈
[0046]
为了将健康结果m
result
反馈给病人pti,医生d
l
计算认证信息auth=h2(sk
dl-pti
||pidj||id
dl
),并且使用sk
dl-pti
计算第二密文:
[0047]
c2=e
skdl-pti
(m
result
||t
dl'
)
[0048]
其中,e
skdl-pti
代表利用会话秘钥sk
dl-pti
进行的加密算法,t
dl'
是当期的时间戳。并将{auth,c2,t
dl'
}发送给病人pti。病人pti收到{auth,c2,t
dl'
}后计算验证信息:
[0049]
veri=h2(sk
dl-pti
||pidj||id
dl
)
[0050]
然后检查veri=auth是否成立,如果等式成立,pti认为消息来自合法的d
l
,并且他/她已经建立了一个安全通道。这可以保护病人免受可能危及生命的虚假医疗建议的伤害。病人pti解密c2,得到:{m
result
||t
dl'
}=d
skpti-dl
(c2),其中d
skpti-dl
代表利用会话秘钥sk
dl-pti
进行的解密算法。
再多了解一些

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

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

相关文献