面向无线体域网的云存储医疗大数据轻量级批量审计方法与流程

文档序号:13476225阅读:221来源:国知局

本发明涉及网络空间安全技术领域,特别是涉及一种面向无线体域网的云存储医疗大数据轻量级批量审计方法。



背景技术:

当今,人类在电子传感器技术和无线通信技术的跨越式发展,使得无线传感网络开始广泛地应用于医疗健康卫生、环境监测、军事侦查和工业工程管控等各个领域,这蕴含着广阔的商业前景和科研价值。因此,无线传感网络受到学术界和产业界越来越多的关注和投入。作为无线传感网络的一个重要应用,无线体域网同样受到了相应的重视。首先,无线体域网(wban)是由一系列低功耗、轻量级、可置于体表或植入体内、具有无线通信能力的大量传感节点组成的微型化电子设备。其次,它可以实时监控和手机客户或患者的血压、心率、提问等生理健康大数据,以用于报告人体的健康状况和能够使医护人员对患者进行实施的医疗监控。由于每一位患者都对自己的健康报告结果的急迫性,传感器生成的健康大数据不仅需要及时处理,而且需要得到医生的及时反馈。采用传统的服务器来存储医疗大数据会带来各方的通信开销和计算的成本都很高,并且不同传感器收集的数据类型、格式和大小各不相同,将带来大数据的处理不一致性和不准确性等固有问题。因此,无线体域网可以借助云平台来存储和处理传感器所产生的大数据;它带来了极大的好处,首先,云存储是一个能提供各种便利与更廉价的服务平台;其次,它减轻大数据文件所有者的复杂的本地存储维护和管理的同时永许对用户自己的外包数据进行实时的访问。

通过使用云服务器去协助存储和处理大量客户的健康医疗大数据,云计算协助的无线体域网可以为慢性疾病患者和用户提供更加丰富多彩的服务。可信任医疗工作者定期从云存储系统中获得客户的健康医疗大数据,并对这些大数据进行详细地分析以辅助实现今后更加准确地诊断病情。云服务辅助系统一旦收到相关的医疗人员的操作指令,它将基于云的强大处理能力来准确、高效地完成所下达的相应任务。

从大数据拥有者的角度,把大数据外包给云服务器是明智和实际的选择。可信任的医疗人员将这些健康医疗数据进行大数据模拟预测病情,同时可以作为医生临床诊断的基础。其与传统的自建服务器相比,其拥有较低成本、维护简单、操作方便等优势,此外,拥有的高可用、高效性、易扩展的特点也解决了当前移动通信设备大数据的计算处理能力不足、共享困难等问题。这吸引了众多客户和企业将海量大数据存放到第三方云存储服务器,其中就包括了无线体域网设备产生的相关大数据。但是客户将大数据存放到云服务器就对其失去了物理控制,也就面临一系列的严重安全威胁。包括云服务器死机、软件bug和硬件损坏等突发事件在内对用户医疗大数据的任何修改都可能导致患者病情被误诊以至于病情加重甚至会使患者有死亡的危险。由于用户存放的大数据包含大量个人隐私,一旦造成用户隐私被泄漏给出去,这不亚于给用户致命的伤害。比如从事健康医疗保险公司以不法或无意的方式获得病人的个人健康大数据,这可能会使患者买不到医疗保险的风险。因此,在保证云存储医疗大数据的机密性的基础上,更需要保证患者用户的医疗大数据的完整性。

通常,患者用户喜欢委托第三方审计者帮助其审计外包存储在云服务器上的医疗大数据的完整性,这样会极大地减轻了患者用户的工作量。目前典型的审计系统是基于双线性对运算构造的第三方公共审计方法来验证云存储大数据的完整性,其需要计算的开销代价很高,这不利于云辅助的无线体域网安全环境的广泛应用。此外,大多数情况下,出于对时间效率的考虑,第三方审计者也需要同时对多个医疗大数据文件进行批量审计。因此研究设计一个具有隐私保护的面向无线体域网的云存储医疗大数批轻量级批量审计系统具有非常重要的研究意义。



技术实现要素:

本发明的目的在于克服现有技术的不足,提供一种面向无线体域网的云存储医疗大数据轻量级批量审计方法,解决远程医疗云存储大数据完整性验证的问题。

本发明的目的是通过以下技术方案来实现的:面向无线体域网的云存储医疗大数据轻量级批量审计方法,包括:

审计系统初始化:审计系统生成椭圆曲线签名算法的公私钥对、一个轻量级对称加密算法及其对称密钥、一个哈希函数、用于构造同态消息认证码的轻量级的伪随机数生成器和伪随机函数、以及用于椭圆曲线的外包的倍数-和算法的预计算数据集合;

医疗大数据签名产生:云用户分别计算多个医疗大数据文件的同态消息认证码,并利用椭圆曲线签名算法计算所述同态消息认证码的数字签名,以及将所述医疗大数据文件进行轻量级对称加密;云用户将所述数字签名和所述医疗大数据文件加密后的密文发送到云服务器,并删除本地存储的所述数字签名和所述医疗大数据文件加密后的密文;

医疗大数据审计证明产生:第三方审计者产生一个审计挑战信息,并将所述挑战信息发送给云服务器;医疗云服务器收到所述挑战信息后,产生所述挑战信息的医疗大数据文件的聚合的审计证明响应信息,并将所述聚合的审计证明响应信息发送给获得授权的第三方审计者;

医疗大数据审计证明验证:所述第三方审计者在获得所述聚合的审计证明响应信息后,利用椭圆曲线签名算法的公钥以及轻量级对称加密算法的对称密钥检验所述聚合的审计证明响应信息的有效性。

优选的,审计系统初始化包括:

定义一个在模p上的素数域zp上的椭圆曲线e,其中p是大素数,p是椭圆曲线e上阶为素数q的点;从模q上的素数域zq中随机选取一个值x,并计算椭圆曲线上公开点q=xp,生成椭圆曲线签名算法的公钥k={q,e,p,q},私钥为x;

设置一个被云用户和获得授权的第三方审计者共享的轻量级对称加密算法τ,其中对称密钥为ssk;审计系统产生一个哈希函数h:u→zq,u为椭圆曲线e上的点;审计系统产生伪随机数发生器和伪随机函数prf:skprf×i→zq,其中skprg为伪随机数发生器prg私钥集合,skprf为伪随机函数prf的私钥集合,i为医疗文件中每个医疗大数据块的排序位置集合;审计系统随机选取对称密钥对(tprg,tprf),其中tprg∈skprg,tprf∈skprf;

审计系统生成预计算数据集合对于每一个0≤k≤lq-1,ak=2kp为椭圆曲线上由p生成的公开点,lq为q的二进制比特长度;同时审计系统生成预计算集合对于每一个0≤k≤lq-1,bk≡2kq为椭圆曲线上由q生成的公开点。

优选的,医疗大数据签名产生包括:

对于1≤j≤j,j为医疗大数据文件的下标顺序,j为待审计的医疗大数据文件的个数,给定每一个医疗大数据文件包含n个医疗大数据块,医疗大数据文件为模q上的n×m维矩阵,其中每一个医疗大数据块医疗大数据块fj,i为模q上的m维向量,i=1,2,…,n;

对于每一个1≤j≤j,j为医疗大数据文件的下标顺序,j为待审计的医疗大数据文件的个数,给定每一个医疗大数据文件给每一个医疗大数据文件确定一个唯一的有序标识索引indexj;

对于每一个1≤j≤j,云用户利用伪随机数发生器prg产生随机向量利用伪随机函数prf产生随机数ζj,i←prf(tprf,indexj||i)∈zq,其中i=1,2,…,n;

云用户利用随机向量ξj=(ξj,1,…,ξj,m)和随机数ζj,i将医疗大数据块压缩m倍,产生同态消息认证码

对于1≤j≤j,给定每一个医疗大数据文件云用户利用轻量级对称加密算法τ及其对称密钥ssk将医疗大数据块fj,i={fj,i,1,…,fj,i,m}加密为f′j,i=(fj,i,1+τssk(1,indexj||i),…,fj,i,ρ+τssk(ρ,indexj||i),…,fj,i,m+τssk(m,indexj||i)),其中1≤ρ≤m,将加密为

云用户发送给医疗云服务器,并删除本地存储的

优选的,所述云用户利用椭圆曲线签名算法的私钥x产生每一个同态消息认证码δj,i的签名包括:

选取随机数rj,i∈zq,调用外包的倍数-和算法计算数字签名的第一个分量,即计算椭圆曲线上的点vj,i=rj,ip=(αj,i,βj,i);

计算数字签名的第二个分量μj,i=αj,imodq,以及利用同态消息认证码δj,i和私钥x计算数字签名的第三个分量νj,i=(μj,irj,i+δj,ix)modq,最后产生每一个医疗大数据块fj,i的数字签名ωj,i=(vj,i,μj,i,νj,i)(i=1,…,n);

定义这些签名的集合为ψj={ωj,i}1≤i≤n。

优选的,医疗大数据审计证明产生包括:

从{1,2,…,n}中随机选取一个含有θ个元素的子集

对于每一个i∈ω,第三方审计者产生相应的随机值λi∈zq,然后第三方审计者发送审计挑战信息chal={i,λi}i∈ω给云服务器;

云服务器接收到审计挑战信息chal={i,λi}i∈ω后,对于每一个ρ∈{1,…,m},ρ表示每一个医疗大数据块的密文f′j,i=(fj,i,1+τssk(1,indexj||i),…,fj,i,ρ+τssk(ρ,indexj||i),…,fj,i,m+τssk(m,indexj||i))中分量的下标,云服务器产生医疗大数据的聚合的审计证明响应信息,并将所述聚合的审计证明响应信息发送给获得授权的第三方审计者。

优选的,所述云服务器产生医疗大数据审计证明响应信息包括:

计算组合信息块

云服务器选择一个随机数ε←zq,计算椭圆曲线上的随机点u=εq,计算关于u的哈希函数值的逆元(h(u))-1∈zq,并且盲化η'j,ρ为ηj,ρ=(h(u))-1η'j,ρ+ε,得到聚合的信息集合ηj={ηj,1,…,ηj,ρ,…,ηj,m};

计算聚合签名聚合的审计证明响应信息即为(v,ν,{ηj}1≤j≤j,{indexj}1≤j≤j)。

优选的,所述医疗大数据审计证明验证步骤包括:

对于每一个1≤j≤j,计算随机系数ζj,i←prf(tprf,indexj||i)∈zq,i∈ω;

对于每一个1≤j≤j,计算常量系数

利用椭圆曲线上外包的倍数-和算法验证医疗大数据文件的聚合的审计证明响应信息是否满足以下方程:νp=v+γ1(h(u)q-γ2q-γ3(h(u)u;若满足则审计证明响应有效,若不满足则审计证明响应无效。

优选的,所述椭圆曲线签名算法为线性同态聚合签名算法。

本发明的有益效果是:

(1)本发明通过将医疗大数据文件压缩成消息认证码,利用椭圆曲线签名算法对医疗数据的消息认证码进行数字签名,并将医疗数据文件进行轻量级流密码加密,最后将医疗数据的签名和密文一起存放在基于无线体域网的云服务器。这样既保证了云用户医疗大数据的机密性,又有助于医疗云用户授权第三方审计者对医疗大数据文件进行批量审计,且有效检测出云医疗数据是否被篡改,从而防止医生的临床误诊。

(2)本发明使用的密码算法是基于椭圆曲线离散对数困难问题,能够有效保证审计系统的安全性,并且审计过程运算量非常小,其中椭圆曲线倍点运算可以调用外包的倍数-和算法,极大地降低了云用户的计算开销,特别适用于需要轻量级计算量、存储空间有限、需要高效实现的无线体域网的应用场景。

附图说明

图1为本发明的流程图。

具体实施方式

下面结合附图进一步详细描述本发明的技术方案,但本发明的保护范围不局限于以下所述。

如图1所示,该实施例描述了一种面向无线体域网的云存储医疗大数据轻量级批量审计方法,包括:

s1.审计系统初始化:审计系统生成椭圆曲线签名算法的公私钥对、一个轻量级对称加密算法及其对称密钥、一个哈希函数、用于构造同态消息认证码的轻量级的伪随机数生成器和伪随机函数、以及用于椭圆曲线的外包的倍数-和算法的预计算数据集合。所述椭圆曲线签名算法为线性同态聚合签名算法。

步骤s1具体包括:

s11.定义一个在模p上的素数域zp上的椭圆曲线e,其中p是大素数,p是椭圆曲线e上阶为素数q的点,是循环群<p>的生成元,且在<p>上的求解离散对数是困难的。从模q上的素数域zq中随机选取一个值x,并计算椭圆曲线上公开点q=xp,生成椭圆曲线签名算法的公钥k={q,e,p,q},私钥为x。

s12.设置一个被云用户和获得授权的第三方审计者共享的轻量级对称加密算法τ,其中对称密钥为ssk。审计系统产生一个哈希函数h:u→zq,u为椭圆曲线e上的点。

审计系统产生伪随机数发生器和伪随机函数prf:skprf×i→zq,其中skprg为伪随机数发生器prg私钥集合,skprf为伪随机函数prf的私钥集合,i为医疗文件中每个医疗大数据块的排序位置集合。然后,审计系统随机选取对称密钥对(tprg,tprf),其中tprg∈skprg,tprf∈skprf。

s13.审计系统生成预计算数据集合对于每一个0≤k≤lq-1,ak=2kp为椭圆曲线上由p生成的公开点,lq为q的二进制比特长度;同时审计系统生成预计算集合对于每一个0≤k≤lq-1,bk≡2kq为椭圆曲线上由q生成的公开点。

s2.医疗大数据签名产生:云用户分别计算多个医疗大数据文件的同态消息认证码,并利用椭圆曲线签名算法计算所述同态消息认证码的数字签名,以及将所述医疗大数据文件进行轻量级对称加密;云用户将所述数字签名和所述医疗大数据文件加密后的密文发送到云服务器,并删除本地存储的所述数字签名和所述医疗大数据文件加密后的密文。

步骤s2具体包括:

s21.对于1≤j≤j,j为医疗大数据文件的下标顺序,j为待审计的医疗大数据文件的个数,给定每一个医疗大数据文件包含n个医疗大数据块,医疗大数据文件为模q上的n×m维矩阵,其中每一个医疗大数据块医疗大数据块fj,i为模q上的m维向量,i=1,2,…,n。对于每一个1≤j≤j,给定每一个医疗大数据文件为了区分存储在无线体域网的云端医疗大数据文件的位置,给每一个医疗大数据文件确定一个唯一的有序标识索引indexj。

s22.对于每一个1≤j≤j,j为医疗大数据文件的下标顺序,j为待审计的医疗大数据文件的个数,云用户利用伪随机数发生器prg产生随机向量利用伪随机函数prf产生随机数ζj,i←prf(tprf,indexj||i)∈zq,其中i=1,2,…,n。云用户利用随机向量ξj=(ξj,1,…,ξj,m)和随机数ζj,i将医疗大数据块压缩m倍,产生同态消息认证码

云用户利用椭圆曲线签名算法的私钥x产生每一个同态消息认证码δj,i的签名包括:

s221.选取随机数rj,i∈zq,调用外包的倍数-和算法计算数字签名的第一个分量,即计算椭圆曲线上的点vj,i=rj,ip=(αj,i,βj,i);

外包的倍数-和算法描述如下:

γ∈zq

p←o

q←o

fork=lq-1to0do

ifk-thbitofγis1then

p←p+akmodp

q←q+bkmodp

endif

s222.计算数字签名的第二个分量μj,i=αj,imodq,以及利用同态消息认证码δj,i和私钥x计算数字签名的第三个分量νj,i=(μj,irj,i+δj,ix)modq,最后产生每一个医疗大数据块fj,i的数字签名ωj,i=(vj,i,μj,i,νj,i)(i=1,…,n);

s223.定义这些签名的集合为ψj={ωj,i}1≤i≤n。

将所述医疗大数据文件进行轻量级对称加密包括:

s23.对于1≤j≤j,j为医疗大数据文件的下标顺序,j为待审计的医疗大数据文件的个数,给定每一个医疗大数据文件云用户利用轻量级对称加密算法τ及其对称密钥ssk将医疗大数据块fj,i={fj,i,1,…,fj,i,m}加密为f′j,i=(fj,i,1+τssk(1,indexj||i),…,fj,i,ρ+τssk(ρ,indexj||i),…,fj,i,m+τssk(m,indexj||i)),其中1≤ρ≤m,将加密为确保了医疗大数据文件的机密性。

s24.云用户发送给医疗云服务器,并删除本地存储的

s3.医疗大数据审计证明产生:第三方审计者产生一个审计挑战信息,并将所述挑战信息发送给云服务器;医疗云服务器收到所述挑战信息后,产生所述挑战信息的医疗大数据文件的聚合的审计证明响应信息,并将所述聚合的审计证明响应信息发送给获得授权的第三方审计者。

步骤s3具体包括:

s31.从{1,2,…,n}中随机选取一个含有θ个元素的子集ω={l1,…,lθ}。

s32.对于每一个i∈ω,第三方审计者产生相应的随机值λi∈zq,然后第三方审计者发送审计挑战信息chal={i,λi}i∈ω给云服务器。

云服务器接收到审计挑战信息chal={i,λi}i∈ω后,对于每一个ρ∈{1,…,m},ρ表示每一个医疗大数据块的密文f′j,i=(fj,i,1+τssk(1,indexj||i),…,fj,i,ρ+τssk(ρ,indexj||i),…,fj,i,m+τssk(m,indexj||i))中分量的下标,云服务器产生医疗大数据的聚合的审计证明响应信息,聚合的审计证明响应信息的产生具体包括:

计算组合信息块

为了进一步盲化组合信息块η'j,ρ,云服务器选择一个随机数ε←zq,计算椭圆曲线上的随机点u=εq,计算关于u的哈希函数值的逆元(h(u)-1)∈zq,并且盲化η'j,ρ为ηj,ρ=(h(u))-1η'j,ρ+ε,得到聚合的信息集合ηj={ηj,1,…,ηj,ρ,…,ηj,m}。

计算聚合签名聚合的审计证明响应信息即为(v,ν,{ηj}1≤j≤j,{indexj}1≤j≤j)。

s33.云服务器将所述聚合的审计证明响应信息(v,ν,{ηj}1≤j≤j,{indexj}1≤j≤j)发送给获得授权的第三方审计者。

s4.医疗大数据审计证明验证:所述第三方审计者在获得所述聚合的审计证明响应信息后,利用椭圆曲线签名算法的公钥以及轻量级对称加密算法的对称密钥检验所述聚合的审计证明响应信息的有效性。

所述步骤s4具体包括:

s41.对于每一个1≤j≤j,计算随机系数ζj,i←prf(tprf,indexj||i)∈zq,i∈ω;

s42.对于每一个1≤j≤j,计算常量系数

s43.利用椭圆曲线上外包的倍数-和算法验证医疗大数据文件的聚合的审计证明响应信息是否满足以下方程:νp=v+γ1(h(u)q-γ2q-γ3(h(u)u;若满足则审计证明响应有效,若不满足则审计证明响应无效。

聚合的审计证明响应信息的验证过程如下:

这样方程νp=v+γ1(h(u)q-γ2q-γ3(h(u)u成立。

尽管本发明已进行了一定程度的描述,明显地,在不脱离本发明的精神和范围的条件下,可进行各个条件的适当变化。可以理解,本发明不限于所述实施方案,而归于权利要求的范围,其包括所述每个因素的等同替换。

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