基于云服务器及区块链的医疗数据共享方法、装置及系统制造方法及图纸

技术编号:23099497 阅读:60 留言:0更新日期:2020-01-14 20:40
本发明专利技术实施例提供基于云服务器及区块链的医疗数据共享方法、装置及系统,包括:区块链获取基于包含目标关键词信息的搜索请求所转换的搜索陷门,并根据搜索陷门及所存储的一次加密关键词信息,确定与目标关键词信息对应的目标对象信息,使访问者发送访问加密信息至目标对象信息示出的目标对象,并且使目标对象能够基于访问者的访问加密信息及目标对象的对象加密信息,生成重加密信息;以及云服务器获取重加密信息,并根据重加密信息及所存储的一次加密病历信息,重加密一次加密病历信息,以使得访问者能够根据访问加密信息及对象加密信息,进行重加密的解密后,继续进行一次加密的解密以获取病历信息。本发明专利技术可以实现电子病历信息的安全共享。

Medical data sharing method, device and system based on ECs and blockchain

【技术实现步骤摘要】
基于云服务器及区块链的医疗数据共享方法、装置及系统
本专利技术涉及计算机
,具体地涉及一种基于云服务器及区块链的医疗数据共享方法、装置及系统。
技术介绍
随着信息技术和互联网技术的高速发展,电子医疗记录成为传统的纸质医疗记录的替代品,解决了纸质医疗记录易丢失、不易长期保存、不易携带的问题。电子医疗记录能够为疾病的研究提供大量的可靠的数据,为病人不能清晰记住病史或无法描述具体的病症提供帮助。目前,随着云计算技术的发展和应用,给电子病历信息的共享带来极大便利的同时,也带来很多潜在的危险。第一,数据安全和隐私保护问题。电子医疗记录包含患者的医疗数据和个人隐私信息是极具价值的,数据存放在第三方集中式数据库中面临被窃取、泄露、篡改和滥用等风险,还面临单点失败问题。第二,数据分散和信息孤岛问题。医疗数据基本由各区域医院单独保存,这种存储方式使得医疗信息系统的孤岛现象十分严重,导致信息存储的不确定性和数据库的资源无法联通整合,大大降低医疗信息共享的效率。第三,资源共享的可持续发展性较差。由于涉及到数据共享的利益争夺,医院和医疗研究所、诊所等第三方机构不能共享数据,无法在患者授权共享的前提下进行大数据分析和提供个性化服务,缺少可持续发展模式。
技术实现思路
本专利技术实施例的目的是提供一种基于云服务器及区块链的医疗数据共享方法、装置及系统,该基于云服务器及区块链的医疗数据共享方法、装置及系统可以实现电子病历信息的安全共享。为了实现上述目的,本专利技术实施例提供一种基于云服务器及区块链的医疗数据共享方法,该共享方法包括:通过云服务器存储对象的一次加密病历信息,并且通过区块链存储每一病历信息对应的一次加密关键词信息及对象信息;所述区块链获取基于包含目标关键词信息的搜索请求所转换的搜索陷门,并根据所述搜索陷门及所存储的所述一次加密关键词信息,确定与所述目标关键词信息对应的目标对象信息,使访问者发送访问加密信息至所述目标对象信息示出的目标对象,并且使所述目标对象能够基于所述访问者的访问加密信息及所述目标对象的对象加密信息,生成重加密信息;以及所述云服务器获取所述重加密信息,并根据所述重加密信息及所存储的目标对象的一次加密病历信息,重加密所述目标对象的一次加密病历信息,以使得所述访问者能够根据所述访问加密信息及所述对象加密信息,进行重加密的解密后,继续进行一次加密的解密以获取所述目标对象的病历信息。优选地,在所述通过云服务器存储对象的一次加密病历信息,并且通过区块链存储每一病历信息对应的一次加密关键词信息及对象信息之前,该医疗数据共享方法包括:一次加密所述病历信息,包括:获取对象的病历信息m∈{0,1}*;基于生成者选取的随机数通过下述公式一次加密所述病历信息后得到一次加密病历信息Cm,其中所述为非零整数,q为生成者选取的素数:c4=r(H3(m)P1+P2);c5=r(H3(c1)P1+H3(c1||c2||c4)P2+P3);c6=rP;其中所述P为循环群G1的椭圆曲线上的生成元,所述为预设定的双线性对G1×G1→G2,所述G1为加法循环群,所述G2为乘法循环群,所述H3为Hash函数所述wi为第i个对象的关键词信息,所述pki为对象公钥Yi,所述xk为共享系统私钥,P1为基于生成者选取的g1通过公式g1P计算后的结果,P2为基于生成者选取的g2通过公式g2P计算后的结果,P3为基于生成者选取的g3通过公式g3P计算后的结果,且所述g1、g2、Cm=(c1,c2,c3,c4,c5,c6);和/或一次加密所述关键词信息,包括:获取生成者选取的病历信息m∈{0,1}*对应的关键词集合W=(w1,w2,...,wn)及u、v,其中所述u、通过如下公式一次加密所述关键词集合得到一次加密关键词信息Cw:A=vP;B=uXk=uxkP;Ci=vhi+ufi;其中hi=H1(wi),fi=H2(wiAB),所述H1为Hash函数{0,1}*→G1,所述H2为Hash函数{0,1}*×G1×G1→G1,所述Xk为共享系统私钥xk对应的共享系统公钥;Cw=(A,B,C1,C2…,Cn)。优选地,在所述区块链获取所述搜索陷门之前,该医疗数据共享方法还包括:将包含目标关键词信息的搜索请求转换为搜索陷门TQ,包括:所述生成者生成与所述搜索请求对应的目标关键词集Ω=(Ω1,…,Ωt);通过以下公式生成所述目标关键词集转换的搜索陷门TQ:TQ1=aP,其中所述a为随机数,且所述It为所述Ωt的标识信息。优选地,所述区块链根据所述搜索陷门及所存储的所述一次加密关键词信息,确定与所述目标关键词信息对应的目标对象信息包括:判断下述等式是否成立:若所述等式成立,确定所述等式中的目标关键词信息后,继续确定与所述目标关键词信息对应的目标对象信息。优选地,该医疗数据共享方法还包括:在所述目标对象基于所述访问者的访问加密信息及所述目标对象的对象加密信息,生成重加密信息之前,所述访问者将访问者身份及地址信息、所述共享系统公钥发送至所述目标对象后,接收到来自所述目标对象的授权信息,所述授权信息包括数据存储地址及索引信息Fi;所述访问者能够根据所述访问加密信息及所述对象加密信息,进行重加密的解密后,继续进行一次加密的解密以获取所述目标对象的病历信息:所述访问者能够根据所述访问加密信息、所述对象加密信息、以及所述数据存储地址及索引信息Fi,进行重加密的解密后,继续进行一次加密的解密以获取所述目标对象的病历信息。优选地,所述目标对象能够基于所述访问者的访问加密信息及所述目标对象的对象加密信息,生成重加密信息包括:通过下述公式生成重加密信息rk=(rk1,rk2);其中所述pkj为所述访问加密信息中的第j个访问者的访问公钥,所述xi为对象公钥Yi对应的随机选取的第i个对象私钥,且xi=ski,Yi=xiP。优选地,所述云服务器根据所述重加密信息及所存储的目标对象的一次加密病历信息,重加密所述目标对象的一次加密病历信息包括:所述云服务器判断第一等式是否成立,其中所述第一等式被配置为若所述第一等式成立,则继续判断第二等式是否成立,其中所述第二等式被配置为若所述第二等式成立,通过下述公式重加密所述目标对象的一次加密病历信息C′m:c′4=c4=r(aH3(m)+b);c′5=c5=r(aH3(c1)+bH3(c1||c2||c4)+P3);c′6=c6=rP;C′m=(c′1,c′2,c′3,c′4,c′5,c′6);其中所述Fi为一次加密病历信息的存储地址及索引信息。另外,本专利技术还提供一种基于云服务器及区块链的医疗数据共享装置,该共享装置包括:云服务器,用于存储对象的一次加密病历信息;区块链,用于存储每一病历信息对应的一次加密关键词信息及对象信息;所述区块链,还用于获取基于包含目标关键词信息的搜索请求所转换的搜索陷门,并根据所述搜索陷门及所存储的所述一次加密关键词信息,确定与所述目标关键词信息对应的目标对象信息,使所述访问者发送访问加密信息至所述目标对象信息示出的目标对象,并且使所述目标对象能够基于所述访问者的访问加密信息及所述目标对象的对象加本文档来自技高网...

【技术保护点】
1.一种基于云服务器及区块链的医疗数据共享方法,其特征在于,该共享方法包括:/n通过云服务器存储对象的一次加密病历信息,并且通过区块链存储每一病历信息对应的一次加密关键词信息及对象信息;/n所述区块链获取基于包含目标关键词信息的搜索请求所转换的搜索陷门,并根据所述搜索陷门及所存储的所述一次加密关键词信息,确定与所述目标关键词信息对应的目标对象信息,使访问者发送访问加密信息至所述目标对象信息示出的目标对象,并且使所述目标对象能够基于所述访问者的访问加密信息及所述目标对象的对象加密信息,生成重加密信息;以及/n所述云服务器获取所述重加密信息,并根据所述重加密信息及所存储的目标对象的一次加密病历信息,重加密所述目标对象的一次加密病历信息,以使得所述访问者能够根据所述访问加密信息及所述对象加密信息,进行重加密的解密后,继续进行一次加密的解密以获取所述目标对象的病历信息。/n

【技术特征摘要】
1.一种基于云服务器及区块链的医疗数据共享方法,其特征在于,该共享方法包括:
通过云服务器存储对象的一次加密病历信息,并且通过区块链存储每一病历信息对应的一次加密关键词信息及对象信息;
所述区块链获取基于包含目标关键词信息的搜索请求所转换的搜索陷门,并根据所述搜索陷门及所存储的所述一次加密关键词信息,确定与所述目标关键词信息对应的目标对象信息,使访问者发送访问加密信息至所述目标对象信息示出的目标对象,并且使所述目标对象能够基于所述访问者的访问加密信息及所述目标对象的对象加密信息,生成重加密信息;以及
所述云服务器获取所述重加密信息,并根据所述重加密信息及所存储的目标对象的一次加密病历信息,重加密所述目标对象的一次加密病历信息,以使得所述访问者能够根据所述访问加密信息及所述对象加密信息,进行重加密的解密后,继续进行一次加密的解密以获取所述目标对象的病历信息。


2.根据权利要求1所述的基于云服务器及区块链的医疗数据共享方法,其特征在于,在所述通过云服务器存储对象的一次加密病历信息,并且通过区块链存储每一病历信息对应的一次加密关键词信息及对象信息之前,该医疗数据共享方法包括:
一次加密所述病历信息,包括:
获取对象的病历信息m∈{0,1}*;
基于生成者选取的随机数通过下述公式一次加密所述病历信息后得到一次加密病历信息Cm,其中所述为非零整数,q为生成者选取的素数:












c4=r(H3(m)P1+P2);
c5=r(H3(c1)P1+H3(c1||c2||c4)P2+P3);
c6=rP;
Cm=(c1,c2,c3,c4,c5,c6);
其中所述P为循环群G1的椭圆曲线上的生成元,所述为预设定的双线性对G1×G1→G2,所述G1为加法循环群,所述G2为乘法循环群,所述H3为Hash函数所述wi为第i个对象的关键词信息,所述pki为对象公钥Yi,所述xk为共享系统私钥,P1为基于生成者选取的g1通过公式g1P计算后的结果,P2为基于生成者选取的g2通过公式g2P计算后的结果,P3为基于生成者选取的g3通过公式g3P计算后的结果,且所述g1、g2、和/或
一次加密所述关键词信息,包括:
获取生成者选取的病历信息m∈{0,1}*对应的关键词集合W=(w1,w2,...,wn)及u、v,其中所述u、
通过如下公式一次加密所述关键词集合得到一次加密关键词信息Cw:
A=vP;
B=uXk=uxkP;
Ci=vhi+ufi;
其中hi=H1(wi),fi=H2(wiAB),所述H1为Hash函数{0,1}*→G1,所述H2为Hash函数{0,1}*×G1×G1→G1,所述Xk为共享系统私钥xk对应的共享系统公钥;
Cw=(A,B,C1,C2…,Cn)。


3.根据权利要求2所述的基于云服务器及区块链的医疗数据共享方法,其特征在于,在所述区块链获取所述搜索陷门之前,该医疗数据共享方法还包括:
将包含目标关键词信息的搜索请求转换为搜索陷门TQ,包括:
所述生成者生成与所述搜索请求对应的目标关键词集Ω=(Ω1,…,Ωt);
通过以下公式生成所述目标关键词集转换的搜索陷门TQ:







其中所述a为随机数,且所述It为所述Ωt的标识信息。


4.根据权利要求3所述的基于云服务器及区块链的医疗数据共享方法,其特征在于,所述区块链根据所述搜索陷门及所存储的所述一次加密关键词信息,确定与所述目标关键词信息对应的目标对象信息包括:
判断下述等式是否成立:



若所述等式成立,确定所述等式中的目标关键词信息后,继续确定与所述目标关键词信息对应的目标对象信息。


5...

【专利技术属性】
技术研发人员:张爱清徐治翟从鸿叶新荣谢小娟
申请(专利权)人:安徽师范大学
类型:发明
国别省市:安徽;34

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1