APP下载

一种安全性高的医疗大数据隐私保护模型

2019-10-15刘浩然

软件导刊 2019年8期
关键词:隐私保护数据安全

摘 要:为了改善国内医疗云数据存储与共享中患者隐私泄露问题,加快互联网+医疗与医疗云建设,提出一种针对医疗大数据安全共享的隐私保护模型。模型将数据共享过程划分为3个阶段,明确各部分功能。采用一种适合医疗云数据加密场景的RS-Blowfish混合加密算法用于模型数据传输,在数据安全共享的同时兼具数字加密及身份认证功能。增添明文与密钥的Z形置换,改善初始密钥安全性,增添密钥认证,将传统的RSA算法、Blowfish算法和SHA-256算法结合为一个整体。实验结果表明, RS-Blowfish混合加密算法在增强Blowfish安全性的同时,加密速度较3DES快30%,较AES快10%。

关键词:医疗大数据;隐私保护;密码学算法;数据安全;混合加密

DOI:10. 11907/rjdk. 191678 开放科学(资源服务)标识码(OSID):

中图分类号:TP309文献标识码:A 文章编号:1672-7800(2019)008-0200-04

A High Security Medical Big Data Privacy Protection Model

LIU Hao-ran

(College of Computer Science and Engineering, Shandong University of Science and Technology, Qingdao 266590, China)

Abstract: In order to improve the patient privacy leakage in the domestic medical cloud data storage and sharing, and accelerate the construction of the Internet + medical and medical cloud, this paper first proposes a privacy protection model for medical big data security sharing. Through the establishment of the model, the data sharing process is divided into three stages, and the role of each part in the model is clarified, so that the model has both digital encryption and identity authentication functions in the secure data sharing. Then for the medical cloud data encryption problem, an RS-Blowfish hybrid encryption algorithm suitable for medical scenarios is proposed for model data transmission. The algorithm first adds Z-shaped permutation of plaintext and key, improves the security of the initial key, and then adds key authentication. Finally, the traditional RSA algorithm, Blowfish algorithm and SHA-256 algorithm are combined into one. The experimental results show that the proposed RS-Blowfish hybrid encryption algorithm enhances the security of Blowfish, and the encryption speed has a 30% advantage over 3DES; compared with AES, it has a 10% advantage.

Key Words: medical big data; privacy protection; cryptography algorithms; data security; hybrid encryption

作者簡介:刘浩然(1994-),男,山东科技大学计算机科学与工程学院硕士研究生,研究方向为云计算、大数据、隐私保护、数据挖掘。本文通讯作者:刘浩然。

0 引言

大数据已经渗透到社会各个领域,医学[1]也不例外。医疗大数据作为大数据的一种,具有与大数据[2]相同的4V特征。一般医疗机构每年产生的医疗数据达1TB-20TB,一些大型医院数据量甚至达到300TB-1PB。

随着互联网+医疗[3]、电子病历[4]以及openEMR[5-6]等云上医疗服务的发展,互联网+医疗成为一种发展趋势。许多大型三甲医院都有自己的数据库,但日益膨胀的医疗数据[7]需要投入更多的服务器。每个医院内部的属性标识符不统一,极大制约了电子健康数据记录工作发展[8]。

与此同时,医疗数据至云服务器的安全性问题[9]日益显露,将医疗数据以明文方式或者以明文的方式存储在云上是极不安全的。如果医院只将电子病历存储在本地服务器上,在病人转院等情况下却不利于医疗数据共享。

惠榛等[10]提出一种基于风险的访问控制模型,能够自适应地限制医生访问,保护患者隐私;黄尤江等[11]分析了当前医疗行业大数据存在的利与弊,针对其平衡发展及隐私保护提出了相关策略;张静等[12]提出通过数据加密技术实现结构化数据加密、存储和利用的方案,创新地从事前、事中、事后3个角度,保障医疗健康大数据安全;姬博歆[13]对目前医疗大数据的现状进行分析,整理了用于医疗大数据的保护技术;Vinod Sharma等[14]分析了部分hadoop项目以及大数据安全性标准与技术。

以上方法都没有针对医疗大数据提出一整套切实可行的共享方案,也没有针对国内医疗认证以及数据安全设计与优化国际密码学技术。

本文结合国内外医疗大数据技术发展情况,整合现有技术,提出一套具有隐私保护的医疗大数据共享模型,主要内容如下:

(1)提出一种新的、致力于解决国内医疗数据外包同时兼顾隐私保护的医疗大数据模型,对模型的可行性进行必要的验证。

(2)提出一种适用于医学信息的快速压缩加密算法,结合RSA[15]、SHA-256[16]、Blowfish[17-21]等优点,增添输入端密钥、明文分组置换以及密钥验证应用于本文模型,并与当代密码学中AES、3DES的加密算法进行加密时间对比分析。

1 医疗大数据隐私保护模型

本模型分为4个主体,如图1所示。明确各主体职能,模型中的用户提供基本的个人信息并享受云服务商提供的服务;医疗云指云服务商提供与医疗有关的计算资源,同时兼顾存储用户数据;医院是电子病历的中心,医院的本地数据库存储大量的医疗数据;公共基础设施负责医院与用户密钥的产生以及相关身份认证。

图1 医疗大数据隐私保护模型

在医疗大数据产生及共享阶段需确保电子病历安全。

(1)用户密钥的建立和个人信息加密。用户向公钥基础设施请求建立密钥的基本参数,生成非对称密钥对(包含公钥、私钥),其中生成的公钥由公钥基础设施保存,与此同时生成信息加密的对称密钥。随后用户的个人信息被复制成两份,一份利用对称密钥加密,并用非对称私钥对对称密钥加密;另一份进行数据匿名化处理。这两部分均上传至医疗云,由医疗云存储管理。加密数据提供给医院,使医院可以得到准确的用户信息;匿名数据提供给云服务提供商,用于为用户提供更好的个性化定制服务。

(2)用戶与医院共享密文用户信息。用户请求医院A的医疗服务,并向医疗云传递此请求;医疗云将用户请求的信息反馈医院A,随后医院A向公钥基础设施查询用户的公钥,在医疗云端下载用户的密文信息并向用户反馈。医院A在得到用户的密文信息后,首先利用用户公钥将对称密钥密文解密,得到对称密钥,再利用对称密钥解密用户的密文信息,以此得到用户的全部个人信息。

(3)医院之间共享用户密文医疗数据。用户在到达医院A后,进行相关医疗检验产生电子病历,由医院A利用用户的对称密钥加密电子病历信息,上传至医疗云。倘若用户对医院的治疗效果不满意,要求转院到医院B,则医疗云将向医院B传达用户的请求信息,医院B随后在医疗云端下载用户的密文信息和在医院A产生的密文医疗数据,解密后得到明文数据。

2 RS-Blowfish混合加密

本文提出混合加密算法作为医疗大数据安全共享模型的加密算法,在证明其安全性的同时利用实验验证加密算法的加密速度。

2.1 RS-Blowfish混合加密算法

传统的密码学联合加密方案,是利用对称密码对明文文本进行加密,非对称密码用于对对称密码密钥的加密,以达到安全传输密文的目的。本文在这种传统结构模型上进行改进,通过对明文的预处理以及密钥处理,在保证加密速度的同时增强传输的安全性,并增添密钥认证,从而确保传输的密文没有经过恶意篡改。

RS-Blowfish混合加密算法以Blowfish、RSA以及SHA-256为基础,将密钥处理分为两部分,分别为密钥预处理一与密钥预处理二。在密钥预处理一中,密钥首先经过Z形变换,密钥K1用于加密明文,密钥K2用于扰乱密钥K1,以增强密钥组合的随机性,随后作为Blowfish的加密密钥;在密钥预处理二中,将原密钥经过哈希函数处理得到哈希验证摘要,再将两者加密,得到密文Blowfish密钥与密钥验证,如图2所示。

本文在Blowfish加密阶段也作了修改,将明文划分后的左右子块先进行左右置换,加大暴力破解密文的难度,增强明文组合的随机性,然后再进行Feistel结构、核心函数处理以及相关的异或运算。

图2 RS-Blowfish密钥认证

增强RS-Blowfish加密算法如下:

输入:Blowfish密钥K(K1,K2)、明文p、RSA私钥AK

输出:Blowfish密钥密文CK、密文c、密钥验证VK

(1)密钥填充

初始化 P盒、S盒r=0

CK = EAK(K)    //E代表RSA加密过程

for j = 0 to n-1  //n为密钥K(K1,K2)的长度

if j mod 2 = 0 then i =j/2

else i = n-((j + 1)/2)

r=(r+K1[i]+K2[i]mod n)  交换K1[i],K1[r]的位置

VK = H(K)    //H代表SHA-256加密过程

建立子秘钥

(2)加密阶段

将64位的明文p划分为分别为32位的pL与pR

交换pL与pR的位置

for i = 1 to 16:

pR = pR⊕P[i]

pL = F(pR)⊕pL

交换pR, pL

pR = pR⊕P[17]

pL = pL⊕P[18]

将pR, pL重新组合,得到密文c

本文提出的RS-Blowfish混合加密算法在时间复杂度上与待加密的明文数据有着线性关系,即随着数据量的增大加密时间也会增大,但相比3DES有较大优势,时间复杂度约为3DES的1/3。安全性上,得益于密钥验证、密钥Z形变换以及明文的输入置换,增强了密钥与加密算法的复杂程度,增强了加密密文的安全性。

2.2 实验结果及分析

实验分析结果如图3所示。从图3可以看出,本文设计的混合密钥算法在增添验证以及对blowfish输入进行略微改动后,在加密速度上比AES算法快10%,比3DES算法快30%。

实验证明,当RSA算法的密钥长度达到1024位时具有良好的安全性,同时增添哈希函数用于密钥认证,能确保接收方验证密钥是否被篡改。SHA-256算法同时具有不可破解的单向哈希性。经过16轮变换后证明Blowfish是安全的,能够有效抵御已知明文攻击、选择明文攻击和弱密钥攻击。

图3 加密速度对比

3 结语

本文分析了医疗云及互联网+医疗共享中的安全问题,对医疗大数据共享中的隐私泄露和医疗数据安全传输问题进行了深入研究,提高了医疗大数据共享的安全性,减少了用户隐私泄露问题。

(1)针对医疗大数据共享与患者信息泄露问题,提出了一套切实可行的医疗大数据电子病历共享方案,详细阐述了用户在求医各个阶段的信息同步与安全方案,第三方医疗云服务商在不知道用户密钥的情况下无法完成对用户信息的嗅探,在最大化共享电子病历的同时保护用户私人信息。

(2)利用并适当修改Blowfish、RSA、SHA-256技术,提出基于这三者的RS-Blowfish混合加密算法,利用实验验证了加密算法的加密效率,解析了破解该算法面临的难题。

当然,模型还存在部分尚未解决的问题:①模型中的应用场景叙述有限,未加入医疗场景和医院中医护人员职能,将来在模型构建中应该完善;②虽然本文提出的增强RS-Blowfish加密算法有着较好的加密性能,但对于医疗图像尚未考虑,下一步将把重点放在医疗图像的加密性能上,增强加密算法的应用领域。

参考文献:

[1] 于广军,杨佳泓. 医疗大数据[M]. 上海:上海科学技术出版社, 2015.

[2] CHEN M, MAO S, LIU Y. Big data: a survey[J]. Mobile Networks and Applications, 2014, 19(2):171-209.

[3] 吕晓娟, 张麟, 陈莹,等. 互联网+医疗面临的机遇与挑战[J]. 中国卫生信息管理杂志, 2016, 13(2):124-127.

[4] 陳金雄. 电子病历与电子病历系统[J]. 医疗卫生装备,2010,31(10):1-4.

[5] ACHARYA S,YIN Y,MAK A. Towards the design of a secure and compliant framework for openEMR[C]. IEEE International Conference on Bioinformatics & Biomedicine, 2017: 992-999.

[6] AKOWUAH F, LAKE J, YUAN X, et al. Testing the security vulnerabilities of openEMR 4.1.1: a case study[J]. Journal of Computing Sciences in Colleges, 2015, 30(3):26-35.

[7] 汪冬,秦利,魏洪河,等. 健康医疗大数据发展现状与应用[J]. 电子技术与软件工程, 2018, 133(11): 225-226.

[8] 张振,周毅,杜守洪,等. 医疗大数据及其面临的机遇与挑战[J]. 医学信息学杂志, 2014, 35(6): 2-8.

[9] SHANMUGAPRIYA E, KAVITHA R. Medical big data analysis: preserving security and privacy with hybrid cloud technology[J]. Soft Computing, 2019, 23(8): 2585–2596.

[10] 惠榛,李昊,张敏,等. 面向医疗大数据的风险自适应的访问控制模型[J]. 通信学报,2015, 36(12): 1-10.

[11] 黄尤江,贺莲,苏焕群,等. 医疗大数据的应用及其隐私保护[J]. 中华医学图书情报杂志,2015, 24(9): 43-45.

[12] 张静, 张洪亮. 基于密码技术的健康医疗大数据安全保障体系研究[J]. 信息安全研究,2017,3(7): 652-656.

[13] 姬博歆. 医疗大数据应用中的隐私权保护研究[D]. 哈尔滨:黑龙江大学, 2017.

[14] VINOD S,PROF N K  J. The evolution of big data security through hadoop incremental security model[J]. International Journal of Innovative Research in Science, Engineering and Technology, 2015, 4(5): 3489-3493.

[15] YELLAMMA P,NARASIMHAM C,SREENIVAS V. Data security in cloud using RSA[C]. Fourth International Conference on Computing, 2014: 1-6.

[16] GUERON S,JOHNSONS,WALKER J. SHA-512/256[C]. Eighth International Conference on Information Technology:New Generations, 2011: 354-358.

[17] ALABAICHI A,AHMAD F,MAHMOD R. Security analysis of blowfish algorithm[C]. Second International Conference on Informatics & Applications, 2013: 12-18.

[18] NIE T, SONG C, ZHI X. Performance evaluation of DES and blowfish algorithms[C]. International Conference on Biomedical Engineering & Computer Science,2010: 1-4.

[19] NEHAKHATRI V,KSHIRSAGAR K. Blowfish algorithm[J]. IOSR Journal of Computer Engineering, 2014, 16(2): 80-83.

[20] AVINASH M G,HARSHAVARDHAN T. The blowfish algorithm simplified[J]. International Journal of Advanced Research in Electrical, Electronics and Instrumentation Engineering,2016,5(4): 3343-3351.

[21] 尚华益,姚国祥,官全龙. 基于Blowfish和MD5的混合加密方案[J]. 计算机应用研究,2010,27(1):231-233.

(责任编辑:杜能钢)

猜你喜欢

隐私保护数据安全
云计算中基于用户隐私的数据安全保护方法
建立激励相容机制保护数据安全
大数据云计算环境下的数据安全
云环境中数据安全去重研究进展
大数据安全搜索与共享
健全大数据安全保障体系研究