
Citation: | ZHANG Xiaojun, WANG Xin, LIAO Wencai, ZHAO Jie, FU Xingbing. Lightweight Integrity Verification Scheme for Outsourced Medical Data in Cloud Storage Supporting Conditional Identity Anonymity[J]. Journal of Electronics & Information Technology, 2022, 44(12): 4348-4356. doi: 10.11999/JEIT210971 |
医疗大数据由于其在现代医疗系统中的潜在价值,受到了人们的广泛关注。医疗大数据的蓬勃发展不可避免地产生新的数据安全和隐私保护问题。如果医疗大数据不完整和不真实,新挖掘的知识将无法令人信服。随着信息技术的高速发展,远程医疗信息系统将与云计算技术相结合,提供一种便捷的新型服务模式[1]。云计算技术拥有强大的计算能力和存储能力,它为用户提供高效灵活的存储服务来维护数据[2,3]。在基于云辅助的无线医疗传感器网络中,医疗用户通过无线医疗传感器设备收集重要的生理特征参数(如血压、血糖等),实时地将这些医疗数据上传到云服务器进行存储、分析与处理[4]。
虽然云计算提供的服务有着非常多的优势,但数据存储于云服务器,用户对数据失去绝对控制权,容易遭受外部敌手恶意删除或篡改等方面的攻击。除此之外,某些硬件和软件故障因素的存在将不可避免地导致数据损坏,而云服务提供商可能会只考虑自身利益不受损坏,从而隐瞒数据不完整的事实[5]。近年来频繁发生云安全和云犯罪事件,严重影响了用户和云服务提供商的信任关系。医疗用户关注的焦点在于存储在云端的医疗健康数据的完整性,它是所有临床诊断的基础,任何数据篡改或者丢失都会导致错误诊断,甚至会导致死亡等严重后果[6],因此对云服务器上的医疗数据进行完整性验证变得尤为关键。
为了检查云存储外包数据的完整性,Ateniese 等人[7]首次提出数据可持有性验证(Provable Data Possession, PDP)审计机制。 Juels 等人[8]提出了数据可恢复证明(Proofs of Retrievability, PoR)审计模型。Wang等人[9]提出了一种具有隐私保护的公共云审计方案,引入第三方审计者为用户完成外包数据的完整性审计任务。最近,许多具有新型安全功能的公共云存储审计方案已陆续被提出[10-13]。特别地,文献[10]利用高效去重技术来支持去重搜索,同时实现了过期用户撤销和云存储数据审计。文献[11]设计出了既能支持数据的动态操作(对云端数据文件进行更新、删除和插入等操作),又能实现用户任意次数撤销的审计机制。Hahn等人[12]基于同态哈希函数技术实现数据快速动态更新的完整性审计方案。文献[13]将Shamir秘密共享方法和代数签名应用到外包云存储审计之中,并提出了高效撤销群组成员的共享数据审计方案。
然而,以上提出的云存储审计方案主要依赖公钥基础设施(Public Key Infrastructure, PKI)设计的,这将造成对公钥证书复杂的管理,包括公钥证书的创建、分发、存储和撤销,并不适用于移动终端的实际部署环境。而在基于身份密码(Identity-Based Cryptography, IBC)体制之中[14],用户私钥是由一个可信的权威机构-密钥生成中心(Private Key Generator, PKG)生成,它利用自己的主私钥与用户唯一可识别的身份信息(如身份证号、护照证号、邮件地址、电话号码)来为用户生成私钥,避免了基于证书的公钥密码机制中复杂证书管理问题。在近几年内,许多基于身份的公共云存储审计方案已经提出[15-18]。特别地,Ni等人[15]基于RSA假设,提出了一个基于身份的远程数据完整性验证方案,该方案实现了不同云用户拥有的外包数据完整性的聚合验证,其将身份作为哈希函数的输入生成一长串参数,导致用户的身份隐私不能得到很好的保护,另外其方案在完整性验证阶段的通信开销也很大,随着扇区数的增长而增长。Zhang等人[16]引入了区块链技术,第三方审计者将审计结果记录到以太坊中,从而用户可以检测第三方审计者的恶意行为,但是存储的医疗数据的隐私容易泄露给云服务器。有些用户可能只关注他感兴趣的部分加密云文件的完整性,Gao等人[17]应用了一种关系认证标签技术,它可以用来查询哪些文件包含感兴趣的关键字和生成审计证明信息,但是在交互过程中,TPA容易通过对响应信息进行线性运算获取外包文件的内容,导致隐私泄露。Xue等人[18]基于比特币的公共区块链随机数来生成挑战信息,可以有效抵御恶意审计者,但是用户的身份隐私依然没有得到有效的保护。且以上这些方案在TPA端的计算开销比较大,且用于验证数据文件完整性的时间与挑战数据块的数量线性相关。5G时代到来,个人数据量爆炸,实际上TPA需要快速地完成用户的审计任务,由于审计请求可能集中在特定的时间段内,因此过长的延迟是不可接受的,这对于TPA的计算能力要求很高。
在保证基于身份的公共云存储审计机制安全性的前提下,扩展系统功能是一项非常有意义的工作。溯源技术就被应用到云存储环境中来实现数字取证和实体追踪功能。一旦系统发生数据不一致导致的纠纷或用户在系统中恶意操作的情况都将是后续追踪调查、划分责任和解决诉讼的第一手证明材料。文献[19]最先将实体溯源的想法应用到基于无线体域网的环境中,利用人体指纹的不可伪造性来安全快速地溯源并识别原始用户。Zhang等人[20]的方案中,单个用户(包括组管理者)无法知道签名者的身份,同时基于秘密共享技术实现了用户的可追溯性。然而,这些方案的计算成本相对较高,而且没有解决复杂的证书管理问题。
针对上述问题,本文设计了一种支持条件身份匿名的外包云存储医疗数据完整性验证方案。该方案基于同态哈希函数技术设计了数字聚合签名算法,进一步构造轻量级完整性验证方案。方案是基于身份的密码系统设计的,有效避免了PKI关于公钥证书的复杂管理。方案使得第三方审计者定期代替医疗用户验证存储在云辅助医疗系统的外包数据的完整性,且能检测出云医疗数据是否被篡改,从而防止医生的临床误诊。性能分析与比较表明方案在计算开销与通信开销方面具有较大优势。特别是在第三方审计者方面,其完整性验证计算开销是轻量级的,非常有利于部署在移动终端计算资源受限的设备环境。
设
(1) 双线性。对于任意的
(2) 非退化性。
(3) 可计算性。对于群
(1) 同态性。对于两个消息
(2) 抗碰撞性。不存在多项式时间敌手能够伪造元组
定义1 DL(Discrete Logarithm)问题:给定
定义2 CDH(Computational Diffie-Hellman)问题:给定
事实上,敌手在多项式时间内能够求解DL困难问题和CDH困难问题的概率是可以忽略的。
支持条件身份匿名的云存储医疗数据完整性验证模型如图1所示,包含密钥生成中心(Private Key Generator, PKG)、用户、医院、云服务器和第三方审计者(Third Party Auditor, TPA)。各通信实体的功能介绍如下:
(1) PKG。PKG是一个权威且完全可信的实体,主要负责系统初始化阶段公开参数设置,以及根据用户真实身份生成相应的匿名身份和公私钥对。
(2) 医院。为用户提供医疗服务,利用无线医疗传感器网络收集用户的健康数据,生成用户的医疗数据文件。
(3) 用户。根据医疗数据文件生成相应的数字签名和审计辅助信息(Auditing Auxiliary Information, AAI),将医疗数据文件和数字签名上传给云服务器,将AAI上传给TPA。最后,用户删除本地存储。
(4) 云服务器。拥有巨大存储容量和计算能力,根据用户需求存储用户的医疗数据以及相应的数字签名,接受来自TPA的完整性验证挑战,并返回完整性验证证明响应信息给TPA。
(5) TPA。TPA得到用户的授权并且能够代表医疗用户周期性验证存储在云服务器的健康医疗数据的完整性,定期与云服务器交互以执行完整性审计任务,并将完整性验证结果返回给用户。
支持条件身份匿名的云存储医疗数据完整性验证模型包含以下多项式算法:
(1)系统初始化。由PKG执行。系统初始化,输入安全参数,生成系统公共参数并公开。
(2)用户匿名身份和签名私钥生成。由PKG执行。输入用户真实身份,PKG生成用户的匿名身份以及签名私钥,并将其通过安全信道发送给用户。
(3)数字签名生成。由用户执行。用户对数据分块后使用签名算法对数据进行签名,将数据和签名发送给云服务器,将审计辅助信息发送给TPA,最后删除本地存储。
(4)挑战信息生成。由TPA执行。TPA生成挑战信息并发送给云服务器,在等待云服务器响应证明信的时间内,执行预计算操作。
(5)完整性验证证明响应信息生成。由云服务器执行。云服务器根据挑战信息定位相关的数据块和签名,生成完整性验证证明响应信息,并将其发送给TPA。
(6)完整性验证。由TPA执行。输入挑战信息、系统参数、预计算值、用户匿名身份和完整验证证明信息,生成计算结果并通知用户。
本文提出一个支持条件身份匿名的外包云存储医疗数据完整性验证方案,方案包括系统初始化、用户匿名身份和签名私钥生成、数字签名生成、挑战信息生成、完整性验证证明响应信息生成、完整性验证6个阶段。具体工作流程如图2所示。
(1)系统初始化。输入安全参数
(a)PKG设置一个双线性对映射
(b)PKG随机选取
(c)PKG设置两个安全且抗碰撞的通用哈希函数
最后,PKG公布系统公开参数
(2)用户匿名身份和签名私钥生成。根据医疗用户真实身份
(a)PKG随机均匀地选取
(b)PKG使用主私钥
最后,PKG 通过安全信道返回
(3)数字签名生成。医疗用户根据医疗健康数据文件生成如下数字签名,并产生完整性验证辅助信息:
(a)将医疗健康数据文件
(b)随机均匀地选取
(c)利用签名私钥
最后,医疗用户通过无线医疗传感器网络将
(4)挑战信息生成。当收到医疗用户授权TPA验证存储在云服务器的外包医疗数据完整性的请求时,TPA生成挑战信息并发送给云服务器:
(a)TPA首先从集合
(b)在等待云服务器响应期间,TPA基于完整性验证辅助信息
λ = H3(name)∑jcj=j1vj⋅H3(τ)∑jcj=j1vjηjκj |
(5)完整性验证证明响应信息生成。云服务器基于挑战信息
(a)随机选取
(b)计算聚合签名
最后,TPA发送完整性验证证明响应信息
(6)完整性验证。当收到来自云服务器返回的完整性验证证明响应信息
现在对医疗健康数据完整性验证方程的正确性进行详细推导为
e(g,Sig)=e(g,jc∏j=j1Sigjvj)=e(g,jc∏j=j1((wmj⋅H3(name+ψj))SKAID)vj)=e(gSKAID,jc∏j=j1(wmjvj⋅H3(name)vjH3(ψj)vj))=e(AID1H2(AID).ppubH2(AID),w∑j∈Jvjmj⋅jc∏j=j1H3(name)vj⋅jc∏j=j1H3(ψj)vj)=e(AID1H2(AID).ppubH2(AID),wα(μ−β)⋅H3(name)∑j∈Jvj⋅jc∏j=j1H3(ψj)vj)=e((AID1⋅ppub)H2(AID),wα(μ−β)⋅H3(name)∑j∈Jvj⋅H3(ηj1κj1τ)vj1⋅⋯⋅H3(ηjcκjcτ)vjc)=e((AID1⋅ppub)H2(AID),βμ−β⋅H3(name)∑j∈Jvj⋅H3(τ)jc∑j=j1vjηjκj)=e((AID1⋅ppub)H2(AID),λβμ−β) |
证毕
支持条件身份匿名的外包云存储医疗数据完整性验证方案可以使得TPA对医疗用户的多个医疗数据文件同时进行批量验证,具体拓展细节描述如下:
医疗用户另外选定3个随机系数
在挑战信息生成阶段,TPA在生成挑战信息
λ′=H3(θ)∑dℓ=1∑jcj=j1γℓ⋅υℓ⋅vj⋅H3(τ)∑dℓ=1∑jcj=j1ηℓ⋅j⋅κℓ⋅j⋅vj |
在完整性验证证明响应信息产生阶段,在收到挑战信息后,云服务器随机选取
在完整性验证阶段,TPA使用预计算值
多文件批量完整性验证过程的正确性证明为
e(g,Sig′)=e(g,d∏ℓ = 1jc∏j=j1Sigvjℓj)=e(g,d∏ℓ = 1jc∏j=j1((wmℓjH3(nameℓ + ψℓj))SKAID)vj)=e(gSKAID,d∏ℓ = 1jc∏j=j1(wmℓjH3(nameℓ + ψℓj))vj)=e(gSKAID,d∏ℓ = 1jc∏j=j1wmℓj⋅vj⋅d∏ℓ=1jc∏j=j1H3(nameℓ + ψℓj)vj)=e(gSKAID,wd∑ℓ = 1jc∑j=j1vjmℓj⋅d∏ℓ=1jc∏j=j1H3(nameℓ)vj⋅d∏ℓ=1jc∏j=j1H3(ψℓj)vj)=e((AID1⋅ppub)H2(AID),wα′(μ′−β′)⋅H3(θ)d∑ℓ=1jc∑j=j1γℓ⋅υℓ⋅vj⋅H3(τ)d∑ℓ=1jc∑j=j1ηℓ⋅j⋅κℓ⋅j⋅vj)=e((AID1⋅ppub)H2(AID),λ′(β′)μ′−β′) |
证毕
通过以上多文件批量完整性验证过程得知,TPA所需的验证计算开销与单个数据文件的计算开销几乎相同,与数据文件的个数没有关系,这是源于方案设计中用到同态哈希函数技术,使得TPA在生成挑战信息时,做了相关的预计算。因此本方案在TPA端的开销是轻量级的。
现在,本文给出支持条件身份匿名的外包云存储医疗数据完整性验证方案的安全性分析,包括存储正确性,用户的条件身份隐私保护,以及防止TPA的数据恢复攻击。
定理1 在概率多项式时间内,方案中的云服务器试图产生伪造的完整性验证证明响应信息,通过TPA的验证在计算上是不可行的。
证明 TPA随机地生成一个完整性验证挑战信息
在真实情况下,云服务器可能通过篡改或者替换部分数据,伪造数字签名等方式产生伪造的完整性验证证明响应信息通过TPA的验证。首先,如果云服务器伪造某一个数字签名
现在假设恶意云服务器至少通过篡改或者替换某个数据块
因此,本方案中的云服务器试图产生伪造的完整性验证证明响应信息,通过TPA的验证在计算上是不可行的。 证毕
定理2 支持条件身份匿名的外包云存储医疗数据完整性验证方案可确保用户的条件身份隐私性。
证明 首先说明用户身份对外的隐私性。在本方案中,每个医疗用户用以唯一标识真实身份信息的是
其次说明用户身份的条件匿名性。假设系统中存在一个注册成功的恶意用户
定理3 支持条件身份匿名的外包云存储医疗数据完整性验证方案可防止TPA的数据恢复攻击。
证明 当TPA发送挑战信息给云服务器时,得到云服务器返回的完整性验证证明响应信息
将本设计方案与相关方案在完整性验证方面进行性能分析与比较,这些方案分别是:RDIC方案[21],IBPA方案[18],以及CIPPPA方案[16]。为便于表述:用符号
本文将4个方案进行实验仿真分析与比较,实验仿真以操作系统为Windows 10,处理器为Intel(R)Core(TM)I5-4210 2.40 GHz,内存为4 GB的主机以及jpbc-2.0.0密码库为实验环境,所有算法的计算开销时间都使用C语言及其版本号为5.6.2密码算法基础函数库MIRACL得出。
在本方案中,由于用户存储了审计辅助信息在TPA端,TPA在发送挑战信息给云服务器之后,在等待云服务器响应的时间内,TPA可以预计算
方案 | 完整性验证计算开销 |
RDIC | (2c+6)⋅Exp+(c+1)⋅Pair + c⋅mult |
IBPA | (2c+4)⋅Mult+3Pair+(2c−1)⋅Add+(c+2)⋅Ha+(c+1)⋅ha |
CIPPPA | (c+2)⋅Mult+3Pair+(c−1)⋅Add+c⋅Ha+ha |
本文 | 2Exp + 2Pair+2⋅mult+ha |
方案 | 挑战信息 | 完整性验证证明信息 |
RDIC | c⋅(|n|+|p|)+|pf|+2|G| | 3|G| |
IBPA | c⋅(|n|+|p|) | 3|G|+|p| |
CIPPPA | c⋅(|n|+|p|) | 3|G|+|p| |
本文 | c⋅(|n|+|p|) | 2|G|+|p| |
针对用户身份隐私保护,云存储医疗数据完整性,以及现有完整性验证方案在TPA端计算开销较大等问题,该文提出一种条件身份匿名的外包云存储医疗轻量级数据完整性验证方案。该方案结合同态哈希函数设计了一种基于身份的聚合签名算法,来进行高效安全的完整性验证。方案是基于身份密码系统设计的,有效避免了对公钥证书的复杂管理,同时保证了用户的身份隐私,也结合实体身份溯源技术来对系统中存在的恶意用户进行跟踪、揭示和问责。安全性分析与性能评估结果表明本方案可以安全高效地部署在云辅助无线医疗传感器网络。
[1] |
BARATI M, AUJLA G S, LLANOS J T, et al. Privacy-aware cloud auditing for GDPR compliance verification in online healthcare[J]. IEEE Transactions on Industrial Informatics, 2022, 18(7): 4808–4819. doi: 10.1109/TII.2021.3100152
|
[2] |
NAYAK S K and TRIPATHY S. SEPDP: Secure and efficient privacy preserving provable data possession in cloud storage[J]. IEEE Transactions on Services Computing, 2021, 14(3): 876–888. doi: 10.1109/TSC.2018.2820713
|
[3] |
LI Hongzhi, HAN Dezhi, and TANG Mingdong. A privacy-preserving storage scheme for logistics data with assistance of blockchain[J]. IEEE Internet of Things Journal, 2022, 9(6): 4704–4720. doi: 10.1109/JIOT.2021.3107846
|
[4] |
SUBRAMANI J, MARIA A, RAJASEKARAN A S, et al. Lightweight privacy and confidentiality preserving anonymous authentication scheme for WBANs[J]. IEEE Transactions on Industrial Informatics, 2022, 18(5): 3484–3491. doi: 10.1109/TII.2021.3097759
|
[5] |
REN Kui, WANG Cong, and WANG Qian. Security challenges for the public cloud[J]. IEEE Internet Computing, 2012, 16(1): 69–73. doi: 10.1109/MIC.2012.14
|
[6] |
SUN Jinyuan, FANG Yuguang, and ZHU Xiaoyan. Privacy and emergency response in e-healthcare leveraging wireless body sensor networks[J]. IEEE Wireless Communications, 2010, 17(1): 66–73. doi: 10.1109/MWC.2010.5416352
|
[7] |
ATENIESE G, BURNS R, CURTMOLA R, et al. Provable data possession at untrusted stores[C]. The 14th ACM Conference on Computer and Communications Security, Alexandria, USA, 2007: 598–609.
|
[8] |
JUELS A and KALISKI B S. PORs: Proofs of retrievability for large files[C]. The 14th ACM Conference on Computer and Communications Security, Alexandria, USA, 2007: 584–597.
|
[9] |
WANG Cong, CHOW S S M, WANG Qian, et al. Privacy-preserving public auditing for secure cloud storage[J]. IEEE Transactions on Computers, 2013, 62(2): 362–375. doi: 10.1109/TC.2011.245
|
[10] |
马华, 党乾龙, 王剑锋, 等. 基于属性加密的高效密文去重和审计方案[J]. 电子与信息学报, 2019, 41(2): 355–361. doi: 10.11999/JEIT170935
MA Hua, DANG Qianlong, WANG Jianfeng, et al. Efficient ciphertext deduplication and auditing scheme with attribute-based encryption[J]. Journal of Electronics &Information Technology, 2019, 41(2): 355–361. doi: 10.11999/JEIT170935
|
[11] |
YEH L Y, CHIANG P Y, TSAI Y L, et al. Cloud-based fine-grained health information access control framework for LightweightIoT devices with dynamic auditing and attribute revocation[J]. IEEE Transactions on Cloud Computing, 2018, 6(2): 532–544. doi: 10.1109/TCC.2015.2485199
|
[12] |
HAHN C, KWON H, KIM D, et al. Enabling fast public auditing and data dynamics in cloud services[J]. IEEE Transactions on Services Computing, 2022, 15(4): 2047–2059. doi: 10.1109/TSC.2020.3030947
|
[13] |
田俊峰, 井宣. 多方参与高效撤销组成员的共享数据审计方案[J]. 电子与信息学报, 2020, 42(6): 1534–1541. doi: 10.11999/JEIT190468
TIAN Junfeng and JING Xuan. Shared data auditing scheme for efficient revocation of group members via multi-participation[J]. Journal of Electronics &Information Technology, 2020, 42(6): 1534–1541. doi: 10.11999/JEIT190468
|
[14] |
SHAMIR A. Identity-based cryptosystems and signature schemes[C]. Workshop on the Theory and Application of Cryptographic Techniques, Santa Barbara, USA, 1984: 47–53.
|
[15] |
NI Jianbing, ZHANG Kuan, YU Yong, et al. Identity-based provable data possession from RSA assumption for secure cloud storage[J]. IEEE Transactions on Dependable and Secure Computing, 2022, 19(3): 1753–1769. doi: 10.1109/TDSC.2020.3036641
|
[16] |
ZHANG Xiaojun, ZHAO Jie, XU Chunxiang, et al. CIPPPA: Conditional identity privacy-preserving public auditing for cloud-based WBANs against malicious auditors[J]. IEEE Transactions on Cloud Computing, 2021, 9(4): 1362–1375. doi: 10.1109/TCC.2019.2927219
|
[17] |
GAO Xiang, YU Jia, CHANG Yan, et al. Checking only when it is necessary: Enabling integrity auditing based on the keyword with sensitive information privacy for encrypted cloud data[J]. IEEE Transactions on Dependable and Secure Computing, 2021, 19(6): 3774–3789.
|
[18] |
XUE Jingting, XU Chunxiang, ZHAO Jining, et al. Identity-based public auditing for cloud storage systems against malicious auditors via blockchain[J]. Science China Information Sciences, 2019, 62(3): 32104. doi: 10.1007/s11432-018-9462-0
|
[19] |
ALI S T, SIVARAMAN V, OSTRY D, et al. Securing first-hop data provenance for bodyworn devices using wireless link fingerprints[J]. IEEE Transactions on Information Forensics and Security, 2014, 9(12): 2193–2204. doi: 10.1109/TIFS.2014.2357998
|
[20] |
ZHANG Yinghui, ZHANG Tiantian, GUO Rui, et al. Traceable dynamic public auditing with identity privacy preserving for cloud storage[J]. KSII Transactions on Internet and Information Systems, 2019, 13(11): 5653–5672. doi: 10.3837/tiis.2019.11.021
|
[21] |
YU Yong, AU M H, ATENIESE G, et al. Identity-based remote data integrity checking with perfect data privacy preserving for cloud storage[J]. IEEE Transactions on Information Forensics and Security, 2017, 12(4): 767–778. doi: 10.1109/TIFS.2016.2615853
|
方案 | 完整性验证计算开销 |
RDIC | (2c+6)⋅Exp+(c+1)⋅Pair + c⋅mult |
IBPA | (2c+4)⋅Mult+3Pair+(2c−1)⋅Add+(c+2)⋅Ha+(c+1)⋅ha |
CIPPPA | (c+2)⋅Mult+3Pair+(c−1)⋅Add+c⋅Ha+ha |
本文 | 2Exp + 2Pair+2⋅mult+ha |
方案 | 挑战信息 | 完整性验证证明信息 |
RDIC | c⋅(|n|+|p|)+|pf|+2|G| | 3|G| |
IBPA | c⋅(|n|+|p|) | 3|G|+|p| |
CIPPPA | c⋅(|n|+|p|) | 3|G|+|p| |
本文 | c⋅(|n|+|p|) | 2|G|+|p| |