CN104270448B - 可外包重构的电子医疗记录的秘密共享云存储方法 - Google Patents
可外包重构的电子医疗记录的秘密共享云存储方法 Download PDFInfo
- Publication number
- CN104270448B CN104270448B CN201410527837.1A CN201410527837A CN104270448B CN 104270448 B CN104270448 B CN 104270448B CN 201410527837 A CN201410527837 A CN 201410527837A CN 104270448 B CN104270448 B CN 104270448B
- Authority
- CN
- China
- Prior art keywords
- electronic medical
- medical record
- module
- share
- cloud service
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G06Q50/24—
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H10/00—ICT specially adapted for the handling or processing of patient-related medical or healthcare data
- G16H10/60—ICT specially adapted for the handling or processing of patient-related medical or healthcare data for patient-specific data, e.g. for electronic patient records
Landscapes
- Health & Medical Sciences (AREA)
- Engineering & Computer Science (AREA)
- Medical Informatics (AREA)
- Epidemiology (AREA)
- General Health & Medical Sciences (AREA)
- Primary Health Care (AREA)
- Public Health (AREA)
- Medical Treatment And Welfare Office Work (AREA)
- Storage Device Security (AREA)
Abstract
本发明提供了一种秘密共享云存储方法,其包括:预处理阶段、分发阶段、重构阶段、恢复与验证阶段。预处理阶段由HC‑A对电子医疗记录进行预处理,预处理的结果将被直接用于分发阶段;在分发阶段,HC‑A生成n个份额,分别分发给CP1,K,CPn;在重构阶段,CPre从CP1,K,CPn处得到不少于t个份额,恢复出电子医疗记录预处理之后的结果,并发送给HC‑B;恢复与验证阶段HC‑B恢复出电子医疗记录并验证其正确性。该方法在确保减小用户计算耗费的同时,也能确保存储电子医疗记录的云服务提供商和恢复电子医疗记录的云服务提供商均不能获得该记录。
Description
技术领域
本发明涉及云计算安全技术领域,尤其涉及一种适用于电子医疗记录的可外包重构秘密共享云存储方法。
背景技术
近年来,随着云计算领域技术的不断发展,以及云服务提供商的不断增多,云计算服务越来越深入地走进人们的生活。如今,医疗记录在不同医疗机构之间的交换非常不便,患者在不同医疗机构就诊往往需要携带实体病例。另外,医疗记录信息的交流不畅也给医疗研究带来了很多阻碍。利用云计算提供的便利条件,我们可以将医疗记录电子化,并存储在云中。在医疗系统中引入电子医疗记录(EHR)将会使得患者的医疗记录可以在被授权的前提下被多个医疗机构参考和使用,这不仅使得患者就医更加便利,而且将会促进规范化医疗系统的形成与建立。
考虑到医疗记录本身的隐私性,机密性和大数据性,将电子医疗系统与云计算服务相结合是非常好的选择。因为云计算可以为大量数据的存储和运算提供一个花费较低且位置无关的数据管理平台,应用于电子医疗系统中可以减轻医疗机构自身存储管理以及维护数据的负担。由于云中的数据被存储在不确定的物理地点,这会使得用户失去对数据的物理掌控,如果云服务提供商存在系统漏洞导致数据外流或者云服务提供商本身做出不诚实的行为对存储其上的数据进行越权访问或删改,都可能侵犯用户记录的隐私甚至造成用户数据的丢失。特别在医疗系统中,医疗记录的泄露或丢失往往会造成严重的后果,直接将不经处理的电子医疗记录存储于云服务器显然存在诸多安全隐患,所以将电子医疗记录和云计算的结合时需要充分考虑电子医疗记录的隐私性和机密性。
在一些电子医疗记录云存储方法中电子医疗记录被加密后存储在云服务器,但无论使用对称或是公钥体制对记录进行加密,都将涉及密钥管理以及客户端需要分配大量资源加解密记录的问题。另外,仅将加密后的医疗记录存储于特定的云服务器中,一旦该服务器失效或崩溃将会使得记录损坏甚至丢失,这对于医疗记录的存储是不能忍受的。为了解决单点失效的问题,一些电子医疗记录云存储方法使用秘密共享的思想,将加密的电子医疗记录的份额在多个云服务器中共享。设置门限值,使得电子医疗记录可以被门限值或更多个份额恢复,而少于门限值个份额则无法恢复出记录也无法得到记录的相关信息。秘密共享思想的引用使得电子医疗记录云存储的方法具有更好的鲁棒性。
现有的应用秘密共享技术的电子医疗记录云存储方法的问题是,电子医疗记录重构阶段需要客户端自己完成,云存储电子医疗记录秘密共享方法往往使用经典的Shamir(t,n)门限秘密共享算法,那么重构阶段需要应用拉格朗日插值公式进行运算。对于用户端来说,拉格朗日插值运算是一个比较耗时的操作,特别是考虑到同时可能有大量的电子医疗记录需要被恢复。为了减轻用户端的负担,我们将重构电子医疗记录的操作外包给另外一个云服务提供商去执行。同样考虑到电子医疗记录中所包含信息的敏感性,外包操作需要保证负责执行重构运算的云服务提供商不能获得记录的真实内容,而且用户可以验证重构出的电子医疗记录的真实性。为了达到这一目的,我们在共享开始阶段对电子医疗记录先进行一次预处理,用预处理的结果作为实际共享的信息,这个处理可以预防存储云服务器的合谋攻击,也使得执行恢复操作的云服务器不会获得记录的真实内容并保证恢复出的记录可以被用户验证。
发明内容
为了利用云计算存储和处理电子医疗记录,减轻客户端的数据处理压力,使得电子医疗记录可以被更加有效、便利、安全地获取,本专利提出了一种可以适用于电子医疗记录的、将秘密重构计算外包给云服务提供商的秘密共享云存储方法和使用该方法的秘密共享云存储系统。该方法在确保减小用户计算耗费的同时,也能确保存储电子医疗记录的云服务提供商和恢复电子医疗记录的云服务提供商均不能获得该记录。
为解决上述技术问题,本发明提供了一种将秘密重构计算外包给云服务提供商的秘密共享云存储系统,其包括电子医疗记录模块(EHR),生成电子医疗记录模块(HC-A),数个存储电子医疗记录份额的云服务模块(CP1,K,CPn),执行电子医疗记录外包重构的云服务模块(CPre),调阅电子医疗记录模块(HC-B)。
本发明还提供了一种使用上述秘密共享云存储系统的秘密共享云存储方法,其包括:
第一步,预处理,由生成电子医疗记录模块(HC-A)对电子医疗记录模块中电子医疗记录拥有者的电子医疗记录进行预处理,预处理的结果将被直接用于分发步骤;
第二步,分发,生成电子医疗记录模块(HC-A)生成n个份额,分别分发给数个存储电子医疗记录份额的云服务模块(CP1,K,CPn);
第三步,重构,执行电子医疗记录外包重构的云服务模块(CPre)从数个存储电子医疗记录份额的云服务模块(CP1,K,CPn)处得到不少于门限t个份额,恢复出电子医疗记录预处理之后的结果,并发送给调阅电子医疗记录模块(HC-B);
第四步,恢复与验证,调阅电子医疗记录模块(HC-B)恢复出电子医疗记录并验证其正确性。
所述第一步进一步具体为患者在生成电子医疗记录的医疗机构就诊结束,医疗机构生成相应的电子医疗记录(EHR),并对该记录进行预处理,医疗系统为该记录生成索引。
其中,所述第一步进一步具体包括:
a、令S表示生成的电子医疗记录,HC-A计算
b、生成电子医疗记录模块(HC-A)得到电子医疗记录的身份信息IDEHR=(idxEHR,H(S)),其中idxEHR是医疗系统为电子医疗记录EHR生成的索引,电子医疗记录的身份信息IDEHR将与索引idxEHR一起存储在医疗内部网络中,哈希函数满足:H(·):{0,1}*→Zp,Zp是阶数为素数p的整数群;
c、生成电子医疗记录模块(HC-A)定义电子医疗记录的访问结构,以及份额的存储结构,确定份额的数量n和门限t的值。
所述第二步进一步具体为生成电子医疗记录模块(HC-A)构造一个多项式,计算出份额并将份额分发给数个存储电子医疗记录份额的云服务模块(CP1,K,CPn),每一个云服务模块由一个云服务提供商提供。
其中,所述第二步进一步具体包括:
a、生成电子医疗记录模块(HC-A)选择一个随机多项式f(x)=a0+a1x+L+at-1xt-1modp,其中a0=S′,其它系数a1,K,at-1取自Zp;
b、生成电子医疗记录模块(HC-A)计算出份额si=f(xi),将份额与存储协议一起发送给存储电子医疗记录份额的云服务模块CPi,xi(i=1,K,n)为每个存储电子医疗记录份额的云服务模块CPi的提供商身份信息。
所述第三步进一步具体为调阅电子医疗记录模块(HC-B)登录医疗网络,通过调阅电子医疗记录模块(EHR)请求的验证后,将重构操作外包给执行电子医疗记录外包重构的云服务模块(CPre)执行,执行电子医疗记录外包重构的云服务模块(CPre)从存储电子医疗记录份额的云服务模块CPi(i=1,K,n)得到不少于t个份额,进行重构操作,得到S′,此处以调阅电子医疗记录模块(HC-B)需要重构电子医疗记录模块(EHR)为例,若该电子医疗记录模块(EHR)所有者需要重构电子医疗记录模块(EHR)也可将重构操作外包给CPre′执行,其它恢复过程相同。
其中,所述第三步进一步具体包括:
a、假设有m个存储份额的云服务提供商将份额发给执行重构操作的执行电子医疗记录外包重构的云服务模块CPre,不失一般性,我们假设提供份额的云服务提供商为{CP1,K,CPm}(m≥t)。行电子医疗记录外包重构的云服务模块CPre请求CP1,K,CPm发送电子医疗记录模块(EHR)份额,CP1,K,CPm将份额s1,K,sm发送给执行电子医疗记录外包重构的云服务模块CPre,
b、执行电子医疗记录外包重构的云服务模块CPre利用拉格朗日插值公式计算出S′:
并将其发送给调阅电子医疗记录模块(HC-B)。
所述第四步进一步具体为调阅电子医疗记录模块(HC-B)收到来自执行电子医疗记录外包重构的云服务模块CPre的S′,恢复出电子医疗记录,并验证其正确性。
其中,所述第四步进一步具体包括:
a、调阅电子医疗记录模块(HC-B)在医疗系统内部网络获得idxEHR和IDEHR=(idxEHR,H(S)),调阅电子医疗记录模块(HC-B)得到H(S)的值。
b、调阅电子医疗记录模块(HC-B)恢复电子医疗记录模块(EHR),
c、调阅电子医疗记录模块(HC-B)通过下面等式验证恢复的电子医疗记录模块(EHR)的正确性:验证等式通过,证明恢复出的电子医疗记录是正确的;否则,不正确。
本发明的有益效果:
(1)本发明中使用秘密共享的体制实现电子医疗记录的云存储,重构电子医疗记录的操作可以在保证记录信息机密性不被破坏的前提下,外包给另外一个云服务提供商执行,这极大减轻了客户端的数据处理压力。
(2)用户从外包云处得到恢复出得数据后,只需执行简单的操作即可得到真实的电子医疗记录信息,同时用户可以对恢复出得电子医疗记录进行验证,确保外包云没有对数据进行篡改。
(3)使用秘密共享的算法将电子医疗记录在多个云服务提供商中共享,并设置门限值t,不少于t个云服务提供商的份额可以恢复出电子医疗记录,避免了单点失效故障的发生,提高了系统的鲁棒性。
(4)大量的电子医疗记录可以安全、高效地存储在云服务中,客户端也只需执行高效、简单的操作即可恢复出记录信息。
附图说明
图1为电子医疗记录生成与使用的概念架构图;
图2为生成及存储电子医疗记录的示意图;
图3为恢复及验证电子医疗记录的示意图。
具体实施方式
考虑到真实的应用场景,我们假设医疗机构之间可以通过医疗系统网络互连,医疗记录的拥有者也可以通过身份验证的方式登陆医疗系统网络查看自己的记录。根据患者信息、就医时间、就医机构、就诊类型等信息,系统会自动为患者的每一份医疗记录生成一个索引idx,该索引能够唯一标识一份电子医疗记录,并可用于医疗系统内部的记录检索。为了减轻存储开支,医疗系统内部网络只需存储每份医疗记录的相关检索信息,医疗记录的内容则存储在云端。
一、本专利所应用的相关理论
1、哈希函数
设Zp是阶为p的整数群,存在一个抗碰撞的单项哈希函数H(·):{0,1}*→Zp,满足以下性质:
1)可计算性:对于任意字符串string∈{0,1}可以高效计算H(string)∈Zp。
2)单向性:已知y∈Zp,难以计算满足y=H(x)的x值。
3)抗碰撞性:已知x,难以找到x′使得H(x′)=H(x)。
2、拉格朗日插值公式
给定t个点(x1,y1),K,(xt,yt),能够通过下面的插值公式确定并唯一确定一个次数小于t且给定的t个点均在其上的多项式:
本发明提供了一种将秘密重构计算外包给云服务提供商的秘密共享云存储系统,其包括电子医疗记录模块(EHR),生成电子医疗记录模块(HC-A),数个存储电子医疗记录份额的云服务模块(CP1,K,CPn),执行电子医疗记录外包重构的云服务模块(CPre),调阅电子医疗记录模块(HC-B)。
本发明还提供了一种使用上述秘密共享云存储系统的秘密共享云存储方法,其包括:
第一步,预处理,由生成电子医疗记录模块(HC-A)对电子医疗记录模块中电子医疗记录拥有者的电子医疗记录进行预处理,预处理的结果将被直接用于分发步骤;
第二步,分发,生成电子医疗记录模块(HC-A)生成n个份额,分别分发给数个存储电子医疗记录份额的云服务模块(CP1,K,CPn);
第三步,重构,执行电子医疗记录外包重构的云服务模块(CPre)从数个存储电子医疗记录份额的云服务模块(CP1,K,CPn)处得到不少于门限t个份额,恢复出电子医疗记录预处理之后的结果,并发送给调阅电子医疗记录模块(HC-B);
第四步,恢复与验证,调阅电子医疗记录模块(HC-B)恢复出电子医疗记录并验证其正确性。
考虑到真实的应用场景,我们假设医疗机构之间可以通过医疗系统网络互连,医疗记录的拥有者也可以通过身份验证的方式登陆医疗系统网络查看自己的记录。根据患者信息、就医时间、就医机构、就诊类型等信息,系统会自动为患者的每一份医疗记录生成一个索引idx,该索引能够唯一标识一份电子医疗记录,并可用于医疗系统内部的记录检索。为了减轻存储开支,医疗系统内部网络只需存储每份医疗记录的相关检索信息,医疗记录的内容则存储在云端。
所述第一步进一步具体为患者在生成电子医疗记录的医疗机构就诊结束,医疗机构生成相应的电子医疗记录(EHR),并对该记录进行预处理,医疗系统为该记录生成索引,具体为,
a、令S表示生成的电子医疗记录,HC-A计算
b、生成电子医疗记录模块(HC-A)得到电子医疗记录的身份信息IDEHR=(idxEHR,H(S)),其中idxEHR是医疗系统为电子医疗记录EHR生成的索引,电子医疗记录的身份信息IDEHR将与索引idxEHR一起存储在医疗内部网络中,哈希函数满足:H(·):{0,1}*→Zp,Zp是阶数为素数p的整数群;
c、生成电子医疗记录模块(HC-A)定义电子医疗记录的访问结构,以及份额的存储结构,确定份额的数量n和门限t的值。
所述第二步进一步具体为生成电子医疗记录模块(HC-A)构造一个多项式,计算出份额并将份额分发给数个存储电子医疗记录份额的云服务模块(CP1,K,CPn),每一个云服务模块由一个云服务提供商提供,具体为
a、生成电子医疗记录模块(HC-A)选择一个随机多项式f(x)=a0+a1x+L+at-1xt-1modp,其中a0=S′,其它系数a1,K,at-1取自Zp;
b、生成电子医疗记录模块(HC-A)计算出份额si=f(xi),将份额与存储协议一起发送给存储电子医疗记录份额的云服务模块CPi,xi(i=1,K,n)为每个存储电子医疗记录份额的云服务模块CPi的提供商身份信息。
所述第三步进一步具体为调阅电子医疗记录模块(HC-B)登录医疗网络,通过调阅电子医疗记录模块(EHR)请求的验证后,将重构操作外包给执行电子医疗记录外包重构的云服务模块(CPre)执行,执行电子医疗记录外包重构的云服务模块(CPre)从存储电子医疗记录份额的云服务模块CPi(i=1,K,n)得到不少于t个份额,进行重构操作,得到S′,此处以调阅电子医疗记录模块(HC-B)需要重构电子医疗记录模块(EHR)为例,若该电子医疗记录模块(EHR)所有者需要重构电子医疗记录模块(EHR)也可将重构操作外包给CPre′执行,其它恢复过程相同,具体为:
a、假设有m个存储份额的云服务提供商将份额发给执行重构操作的执行电子医疗记录外包重构的云服务模块CPre,不失一般性,我们假设提供份额的云服务提供商为{CP1,K,CPm}(m≥t)。行电子医疗记录外包重构的云服务模块CPre请求CP1,K,CPm发送电子医疗记录模块(EHR)份额,CP1,K,CPm将份额s1,K,sm发送给执行电子医疗记录外包重构的云服务模块CPre。
执行电子医疗记录外包重构的云服务模块CPre利用拉格朗日插值公式计算出S′:
并将其发送给调阅电子医疗记录模块(HC-B)。
所述第四步进一步具体为调阅电子医疗记录模块(HC-B)收到来自执行电子医疗记录外包重构的云服务模块CPre的S′,恢复出电子医疗记录,并验证其正确性,具体为:
a、调阅电子医疗记录模块(HC-B)在医疗系统内部网络获得idxEHR和IDEHR=(idxEHR,H(S)),调阅电子医疗记录模块(HC-B)得到H(S)的值。
b、调阅电子医疗记录模块(HC-B)恢复电子医疗记录模块(EHR),
c、调阅电子医疗记录模块(HC-B)通过下面等式验证恢复的电子医疗记录模块(EHR)的正确性:验证等式通过,证明恢复出的电子医疗记录是正确的;否则,不正确。
以下采用实施例来详细说明本发明的实施方式,借此对本发明如何应用技术手段来解决技术问题,并达成技术效果的实现过程能充分理解并据以实施。
图1为电子医疗记录生成与使用的概念架构图。图中示意了由生成电子医疗记录模块(HC-A)生成的电子医疗记录存储在n个云服务器上,以医疗机构HC-B和电子医疗记录的拥有者为例,所有通过医疗系统验证属于该电子医疗记录访问结构的机构或个人都可以调阅该记录。首先生成电子医疗记录模块(HC-A)通过医疗系统网络将其生成的电子医疗记录的份额存储在n个云服务器上。当调阅电子医疗记录模块(HC-B)或者电子医疗记录拥有者需要调阅记录的时候,通过医疗系统寻找一个云服务提供商执行重构操作。执行重构操作的云服务器从存储份额的云服务器处获得足够多的份额(不少于门限值t个)就可以重构出S′,并将S′发送给调阅电子医疗记录模块(HC-B)或记录拥有者。调阅电子医疗记录模块(HC-B)或记录拥有者利用医疗系统中存储的idxEHR和IDEHR,进行简单的操作恢复出电子医疗记录。
图2为生成及存储电子医疗记录的示意图,示意了由生成电子医疗记录模块(HC-A)生成的电子医疗记录利用秘密共享方案被分成n个份额并被存储在n个云服务器的过程。首先生成电子医疗记录模块(HC-A)需要登录医疗系统,验证建立和存储电子医疗记录的权限,通过之后就生成电子医疗记录文档,此时系统会自动为该文档分配一个唯一检索值idxEHR,生成电子医疗记录模块(HC-A)生成IDEHR。之后生成电子医疗记录模块(HC-A)定义该电子医疗记录的访问结构和份额的存储结构,并与选定的云服务提供商进行通信。确定全部存储电子医疗记录份额的云服务提供商后,双方保存协议和相关参数(包括n、t、p、x1,K,xn等公共参数),生成电子医疗记录模块(HC-A)将计算出n个份额s1,K,sn对应发送给CP1,K,CPn。此时电子医疗记录完成了在云端存储的过程,生成电子医疗记录模块(HC-A)本地删除该记录的存储。
图3为恢复及验证电子医疗记录的示意图。图中示意了调阅电子医疗记录模块(HC-B)需要调阅电子医疗记录,并将重构操作外包给云服务提供商CPre执行,得到重构结果后恢复并验证记录的过程。首先HC-B需要登录医疗系统验证调阅电子医疗记录EHR的权限,通过后将重构操作外包给CPre执行。调阅电子医疗记录模块(HC-B)与CPre和CP1,K,CPm(m≥t)通信,确认协议后CP1,K,CPm将存储的电子医疗记录份额和相关参数信息一起发送给CPre。其中CP1,K,CPm是最初保存该电子医疗记录分额的n个云服务提供商中的m个云服务提供商,m不能小于门限值t。CPre收到m个份额后使用拉格朗日插值公式重构出预处理值S′并发送给调阅电子医疗记录模块(HC-B)。调阅电子医疗记录模块(HC-B)利用IDEHR和收到的S′恢复出电子医疗记录,并验证其的正确性,确保S′没有被CPre篡改。
三、本发明的实现过程
本专利中系统成员包括电子医疗记录(EHR)的拥有者,生成电子医疗记录的生成电子医疗记录模块(HC-A),存储电子医疗记录份额的云服务提供商CP1,K,CPn,执行电子医疗记录外包重构的云服务提供商CPre,调阅电子医疗记录的医疗机构(HC-B)等。
本专利提出的技术方案分为四个阶段:预处理阶段、分发阶段、重构阶段、恢复与验证阶段。预处理阶段由生成电子医疗记录模块(HC-A)对电子医疗记录进行预处理,预处理的结果将被直接用于分发阶段;在分发阶段,生成电子医疗记录模块(HC-A)生成n个份额,分别分发给CP1,K,CPn;在重构阶段,CPre从CP1,K,CPn处得到不少于t个份额,恢复出电子医疗记录预处理之后的结果,并发送给调阅电子医疗记录模块(HC-B);恢复与验证阶段调阅电子医疗记录模块(HC-B)恢复出电子医疗记录并验证其正确性。
考虑到真实的应用场景,我们假设医疗机构之间可以通过医疗系统网络互连,医疗记录的拥有者也可以通过身份验证的方式登陆医疗系统网络查看自己的记录。根据患者信息、就医时间、就医机构、就诊类型等信息,系统会自动为患者的每一份医疗记录生成一个索引idx,该索引能够唯一标识一份电子医疗记录,并可用于医疗系统内部的记录检索。生成电子医疗记录的医疗机构在系统为记录生成的索引基础上生成一个记录的身份信息,同样存储在医疗系统中,该身份信息将用于电子医疗记录恢复阶段的验证。为了减轻存储开支,医疗系统内部网络只需存储每份医疗记录的相关检索信息,即索引和身份信息,医疗记录的内容则存储在云端。
预处理阶段:生成电子医疗记录模块(HC-A)在患者就诊结束后,为本次医疗处理过程生成相应的电子医疗记录(EHR)。医疗系统根据患者信息、医疗机构HC-A信息、就诊时间和就诊类型等信息自动为该记录生成索引。生成电子医疗记录模块(HC-A)对电子医疗记录进行处理,得到记录的预处理结果,并根据记录的索引值生成该记录的身份信息。
生成电子医疗记录模块(HC-A)选取一个公开的大素数p,则Zp是阶数为p的整数群;选取一个抗碰撞的单向哈希函数:H(·):{0,1}*→Zp。
令S表示生成电子医疗记录模块(HC-A)生成的电子医疗记录,生成电子医疗记录模块(HC-A)计算该电子医疗记录的预处理值
生成电子医疗记录模块(HC-A)得到电子医疗记录的身份信息IDEHR=(idxEHR,H(S)),其中idxEHR是医疗系统为电子医疗记录模块(EHR)生成的索引。电子医疗记录的身份信息IDEHR将与索引idxEHR一起存储在医疗内部网络中。
生成电子医疗记录模块(HC-A)定义电子医疗记录的访问结构,以及份额的存储结构,确定t、n的值。
分发阶段:生成电子医疗记录模块(HC-A)构造一个秘密多项式,用云服务提供商的身份信息作为自变量,求出函数值作为该云服务提供商存储的份额值。HC-A计算出每个份额并将相应份额分发给存储电子医疗记录份额的云服务提供商CPi(i=1,K,n)。
生成电子医疗记录模块(HC-A)选择一个随机多项式f(x)=a0+a1x+L+at-1xt-1modp,使多项式的常数项为待存储的电子医疗记录的预处理结果a0=S′;多项式的其它系数a1,K,at-1随机选取自Zp。
每个存储电子医疗记录份额的云服务提供商CPi的身份信息用xi(i=1,K,n)表示。生成电子医疗记录模块(HC-A)计算份额si=f(xi),将份额与包含公共参数的存储协议一起发送给CPi。
重构阶段:调阅电子医疗记录模块(HC-B)登录医疗网络,通过调阅电子医疗记录EHR请求的验证后,将重构操作外包给云服务提供商CPre执行。CPre从CPi(i=1,K,n)得到不少于t个份额,进行重构操作,得到S′。此处以HC-B需要重构EHR为例,若该EHR所有者需要重构EHR也可将重构操作外包给CPre′执行,其它恢复过程相同。
假设有m个存储份额的云服务提供商将份额发给执行重构操作的CPre,不失一般性,我们假设提供份额的云服务提供商为{CP1,K,CPm}(m≥t)。CPre请求CP1,K,CPm发送EHR份额,CP1,K,CPm将份额s1,K,sm发送给CPre。
CPre利用拉格朗日插值公式计算出电子医疗记录的预处理值S′:
CPre将S′发送给HC-B。
恢复与验证阶段:调阅电子医疗记录模块(HC-B)收到外包云CPre发来的电子医疗记录的预处理结果S′后,利用存储在医疗系统中的该电子医疗记录的索引idxEHR和身份信息IDEHR恢复出电子医疗记录,并验证其正确性。
调阅电子医疗记录模块(HC-B)在医疗系统内部网络获得待恢复电子医疗记录的索引idxEHR和身份信息IDEHR=(idxEHR,H(S))后,得到电子医疗记录的哈希值H(S)。
用来自CPre的S′异或得到的哈希值H(S),调阅电子医疗记录模块(HC-B)可以恢复出电子医疗记录EHR:
调阅电子医疗记录模块(HC-B)通过计算下面等式验证恢复出的电子医疗记录是否正确:若等式成立,则证明恢复出的电子医疗记录是正确的;否则,不正确。
四、本发明的优势:
(1)本发明中使用秘密共享的体制实现电子医疗记录的云存储,重构电子医疗记录的操作可以在保证记录信息机密性不被破坏的前提下,外包给另外一个云服务提供商执行,这极大减轻了客户端的数据处理压力。一个医疗机构可能同时请求调阅大量电子医疗记录,而且使用份额进行时涉及一些复杂的计算,例如模幂运算。如果让医疗机构的客户端来运行这些重构计算,那么客户端的资源将会被大量占用。所以我们将重构阶段的操作外包给一个云服务提供商来处理,这将极大地解放客户端的资源,同时也可以充分利用云端的资源。
(2)用户从外包云处得到恢复出得数据后,只需执行简单的操作即可得到真实的电子医疗记录信息,同时用户可以对恢复出得电子医疗记录进行验证,确保外包云没有对数据进行篡改。考虑到医疗记录信息的隐私性,执行重构操作的云服务提供商并不会直接重构出记录本身,而是得到记录预处理过的一个信息。需要调阅该记录的医疗机构或个人,只需登录医疗系统的网络获取到对应该记录索引和身份信息可利用简单的按位异或操作得到记录信息。并且可以利用记录的身份信息对恢复出得电子医疗记录进行验证,避免被外包云服务商欺骗。
(3)使用秘密共享的算法将电子医疗记录在多个云服务提供商中共享,并设置门限值t,不少于t个云服务提供商的份额可以恢复出电子医疗记录,避免了单点失效故障的发生,提高了系统的鲁棒性。每个云服务提供商只存储一个份额值,该份额值不会泄露任何有关电子医疗记录的相关信息。即使有t个合谋云服务商试图通过自己手中的份额恢复出记录值,也只能得到一个记录经过预处理之后的盲化信息,无法获取真正的记录信息。使用门限方案共享存储电子医疗记录的好处是,冗佘的份额信息可以提高记录的可获得性,避免了单点失效故障的发生。即便在一些份额遗失或损坏的情况下,原本的记录信息仍可以在存在t个以上有效份额的状态下被恢复。
(4)大量的电子医疗记录可以安全、高效地存储在云服务中,客户端也只需执行高效、简单的操作即可恢复出记录信息。将电子医疗记录进行云存储的好处是极大地节省了医疗系统的本地存储空间,节约了客户端的存储开支。
所有上述的首要实施这一知识产权,并没有设定限制其他形式的实施这种新产品和/或新方法。本领域技术人员将利用这一重要信息,上述内容修改,以实现类似的执行情况。但是,所有修改或改造基于本发明新产品属于保留的权利。
以上所述,仅是本发明的较佳实施例而已,并非是对本发明作其它形式的限制,任何熟悉本专业的技术人员可能利用上述揭示的技术内容加以变更或改型为等同变化的等效实施例。但是凡是未脱离本发明技术方案内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与改型,仍属于本发明技术方案的保护范围。
Claims (7)
1.一种使用秘密共享云存储系统的秘密共享云存储方法,所述秘密共享云存储系统包括电子医疗记录模块(EHR),生成电子医疗记录模块(HC-A),数个存储电子医疗记录份额的云服务模块(CP1,...,CPn),执行电子医疗记录外包重构的云服务模块(CPre),调阅电子医疗记录模块(HC-B),其特征在于,包括:
第一步,预处理,由生成电子医疗记录模块(HC-A)对电子医疗记录模块中电子医疗记录拥有者的电子医疗记录进行预处理,预处理的结果将被直接用于分发步骤,具体为
a、令S表示生成的电子医疗记录,HC-A计算S′=S⊕H(S);
b、生成电子医疗记录模块(HC-A)得到电子医疗记录的身份信息IDEHR=(idxEHR,H(S)),其中idxEHR是医疗系统为电子医疗记录EHR生成的索引,电子医疗记录的身份信息IDEHR将与索引idxEHR一起存储在医疗内部网络中,哈希函数满足:H(·):{0,1}*→Zp,Zp是阶数为素数p的整数群;
c、生成电子医疗记录模块(HC-A)定义电子医疗记录的访问结构,以及份额的存储结构,确定份额的数量n和门限t的值;
第二步,分发,生成电子医疗记录模块(HC-A)生成n个份额,分别分发给数个存储电子医疗记录份额的云服务模块(CP1,...,CPn);
第三步,重构,执行电子医疗记录外包重构的云服务模块(CPre)从数个存储电子医疗记录份额的云服务模块(CP1,...,CPn)处得到不少于门限t个份额,恢复出电子医疗记录预处理之后的结果,并发送给调阅电子医疗记录模块(HC-B);
第四步,恢复与验证,调阅电子医疗记录模块(HC-B)恢复出电子医疗记录并验证其正确性。
2.如权利要求1所述的秘密共享云存储方法,其特征在于:所述第二步进一步具体为生成电子医疗记录模块(HC-A)构造一个多项式,计算出份额并将份额分发给数个存储电子医疗记录份额的云服务模块(CP1,...,CPn),每一个云服务模块由一个云服务提供商提供。
3.如权利要求1所述的秘密共享云存储方法,其特征在于:所述第二步进一步具体包括,
a、生成电子医疗记录模块(HC-A)选择一个随机多项式f(x)=a0+a1x+…+at-1xt-1modp,其中a0=S′,其它系数a1,...,at-1取自Zp;
b、生成电子医疗记录模块(HC-A)计算出份额si=f(xi),将份额与存储协议一起发送给存储电子医疗记录份额的云服务模块CPi,xi(i=1,...,n)为每个存储电子医疗记录份额的云服务模块CPi的提供商身份信息。
4.如权利要求1所述的秘密共享云存储方法,其特征在于:所述第三步进一步具体为调阅电子医疗记录模块(HC-B)登录医疗网络,通过调阅电子医疗记录模块(EHR)请求的验证后,将重构操作外包给执行电子医疗记录外包重构的云服务模块(CPre)执行,执行电子医疗记录外包重构的云服务模块(CPre)从存储电子医疗记录份额的云服务模块CPi(i=1,...,n)得到不少于t个份额,进行重构操作,得到S′,在调阅电子医疗记录模块(HC-B)需要重构电子医疗记录模块(EHR)时,电子医疗记录模块(EHR)所有者将重构操作外包给CPre′执行。
5.如权利要求4所述的秘密共享云存储方法,其特征在于:所述第三步进一步具体包括,
a、假设有m个存储份额的云服务提供商将份额发给执行重构操作的执行电子医疗记录外包重构的云服务模块CPre,m≥t,执行电子医疗记录外包重构的云服务模块CPre请求CP1,...,CPm发送电子医疗记录模块(EHR)份额,CP1,...,CPm将份额s1,...,sm发送给执行电子医疗记录外包重构的云服务模块CPre,
b、执行电子医疗记录外包重构的云服务模块CPre利用拉格朗日插值公式计算出S′:
并将其发送给调阅电子医疗记录模块(HC-B)。
6.如权利要求1所述的秘密共享云存储方法,其特征在于:所述第四步进一步具体为调阅电子医疗记录模块(HC-B)收到来自执行电子医疗记录外包重构的云服务模块CPre的S′,恢复出电子医疗记录,并验证其正确性。
7.如权利要求6所述的秘密共享云存储方法,其特征在于:所述第四步进一步具体包括:
a、调阅电子医疗记录模块(HC-B)在医疗系统内部网络获得idxEHR和IDEHR=(idxEHR,H(S)),调阅电子医疗记录模块(HC-B)得到H(S)的值;
b、调阅电子医疗记录模块(HC-B)恢复电子医疗记录模块(EHR),
c、调阅电子医疗记录模块(HC-B)通过下面等式验证恢复的电子医疗记录模块(EHR)的正确性:验证等式通过,证明恢复出的电子医疗记录是正确的;否则,不正确。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410527837.1A CN104270448B (zh) | 2014-10-09 | 2014-10-09 | 可外包重构的电子医疗记录的秘密共享云存储方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410527837.1A CN104270448B (zh) | 2014-10-09 | 2014-10-09 | 可外包重构的电子医疗记录的秘密共享云存储方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104270448A CN104270448A (zh) | 2015-01-07 |
CN104270448B true CN104270448B (zh) | 2017-10-13 |
Family
ID=52161937
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410527837.1A Active CN104270448B (zh) | 2014-10-09 | 2014-10-09 | 可外包重构的电子医疗记录的秘密共享云存储方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104270448B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105391722A (zh) * | 2015-11-25 | 2016-03-09 | 湖北工业大学 | 一种虹膜隐藏通讯录的抗泄漏云端存储方法 |
CN108494552B (zh) * | 2018-03-16 | 2020-11-20 | 西安电子科技大学 | 支持高效收敛密钥管理的云存储数据去重方法 |
US11201734B2 (en) * | 2018-06-04 | 2021-12-14 | Robert Bosch Gmbh | Method and system for fault tolerant and secure multiparty computation with SPDZ |
TWI729314B (zh) * | 2018-09-21 | 2021-06-01 | 優賀普股份有限公司 | 被動式雲端醫療資料交換系統及方法 |
CN110084049B (zh) * | 2019-04-18 | 2022-04-01 | 湖北工业大学 | 一种基于多云端的医疗数据保护和访问系统及方法 |
CN111125766B (zh) * | 2019-12-25 | 2022-02-01 | 湖北工业大学 | 一种电子医疗中保护患者隐私的临床路径查询系统及方法 |
CN111243719B (zh) * | 2020-01-14 | 2023-06-06 | 北京唐颐惠康生物医学技术有限公司 | 分布式云健康管理方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102469145A (zh) * | 2010-11-19 | 2012-05-23 | 岑澔 | 一种基于云计算的体质健康管理系统 |
CN103268349A (zh) * | 2013-05-29 | 2013-08-28 | 美合实业(苏州)有限公司 | 基于云服务的中央临床病例数据库系统 |
CN103279718A (zh) * | 2013-05-20 | 2013-09-04 | 电子科技大学 | 一种云存储中基于sbt的数据完整性验证方法 |
CN104063827A (zh) * | 2013-03-22 | 2014-09-24 | 深圳市宁远科技有限公司 | 一种云平台的健康档案系统和方法 |
-
2014
- 2014-10-09 CN CN201410527837.1A patent/CN104270448B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102469145A (zh) * | 2010-11-19 | 2012-05-23 | 岑澔 | 一种基于云计算的体质健康管理系统 |
CN104063827A (zh) * | 2013-03-22 | 2014-09-24 | 深圳市宁远科技有限公司 | 一种云平台的健康档案系统和方法 |
CN103279718A (zh) * | 2013-05-20 | 2013-09-04 | 电子科技大学 | 一种云存储中基于sbt的数据完整性验证方法 |
CN103268349A (zh) * | 2013-05-29 | 2013-08-28 | 美合实业(苏州)有限公司 | 基于云服务的中央临床病例数据库系统 |
Non-Patent Citations (1)
Title |
---|
基于云的区域电子健康档案存储和交换架构;杨剑;《中国数字医学》;20100115;第31卷(第3期);第2-5部分,图1 * |
Also Published As
Publication number | Publication date |
---|---|
CN104270448A (zh) | 2015-01-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104270448B (zh) | 可外包重构的电子医疗记录的秘密共享云存储方法 | |
CN104917609B (zh) | 一种基于用户感知的高效安全数据去重方法及系统 | |
US10050968B2 (en) | Method, apparatus, and system for access control of shared data | |
US8605899B2 (en) | Method for providing cryptographical key pairs | |
CN111130757A (zh) | 一种基于区块链的多云cp-abe访问控制方法 | |
US20170155634A1 (en) | Password-based management of encrypted files | |
CN110299195A (zh) | 基于联盟链的具有隐私保护的电子病历共享系统及应用方法 | |
CN106657059A (zh) | 一种具有访问控制功能的数据库查询方法和系统 | |
CN103391192B (zh) | 一种基于隐私保护的跨安全域访问控制系统及其控制方法 | |
CN106850656B (zh) | 一种云环境下多用户文件共享控制方法 | |
CN102710757A (zh) | 一种分布式云存储数据完整性保护方法 | |
CN111107094B (zh) | 轻量级地面向医疗物联网的大数据共享系统 | |
CN107423637B (zh) | 支持云上电子病历数据可追踪的完整性审计方法 | |
CN108092766B (zh) | 一种密文搜索权限验证方法及其系统 | |
Azraoui et al. | Stealthguard: Proofs of retrievability with hidden watchdogs | |
CN109117662B (zh) | 基于区块链的电子病历安全搜索方法 | |
CN104243169B (zh) | 可跟踪身份的共享数据云审计方法 | |
CN106127081B (zh) | 公开可验证的数据容错安全存储方法 | |
CN110620669A (zh) | 一种基于量子随机数的数据保密方法及系统 | |
CN108092972A (zh) | 一种多授权中心基于属性的可搜索加密方法 | |
CN116318617B (zh) | 基于rfid和区块链的医疗救援物资慈善捐助方法 | |
CN105656881B (zh) | 一种电子病历的可验证外包存储和检索系统及方法 | |
CN104184736B (zh) | 一种实现安全云计算的方法和系统 | |
Barman et al. | A blockchain‐based approach to secure electronic health records using fuzzy commitment scheme | |
KR102605087B1 (ko) | 의료 클라우드 환경에서 환자의 의료 데이터 공유 시스템 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20230224 Address after: 250014 No. 19, ASTRI Road, Lixia District, Shandong, Ji'nan Patentee after: Shandong center information technology Limited by Share Ltd. Address before: 266071 Shandong city of Qingdao province Ningxia City Road No. 308 Patentee before: QINGDAO University |
|
TR01 | Transfer of patent right |