《电子技术应用》
您所在的位置:首页 > 通信与网络 > 设计应用 > 一种医学影像数据选择性的加密方法
一种医学影像数据选择性的加密方法
2015年电子技术应用第3期
林杨菲1,叶少珍1,2
1.福州大学 数学与计算机科学学院,福建 福州350108; 2.福建省医疗器械与医药技术重点实验室,福建 福州350002
摘要: 随着云计算与大数据技术的发展,为解决昂贵医学影像设备所产生的在国内区域影像数据安全共享服务要求,结合多媒体特别是医学影像数据量大等特点,基于SCAN语言提出一种选择性加密算法,结合数据本身的哈希值作为位加密周期序列,实现个人医学影像数据的隐私安全保护。通过安全性分析与仿真实验证明该算法具有较好的置乱等效果。
中图分类号: TP309.2
文献标识码: A
文章编号: 0258-7998(2015)03-0107-04
A selective encryption on medical images data
Lin Yangfei1,Ye Shaozhen1,2
1.College of Mathematics and Computer Science,Fuzhou University,Fuzhou 350108,China; 2.Fujian Key Laboratory of Medical Instrumentation & Pharmaceutical Technology,Fuzhou 350002,China
Abstract: With the development of cloud computing and big data technology, in order to meet the sharing service security requirements of the medical image data in the domestic area caused by the expensive medical imaging equipments, considering multimedia features especially the huge data character of medical digital images,this paper proposes a selective encryption algorithm based on SCAN language, combined with the data itself HASH value as bit encryption cycle sequence to achieve the privacy and security protection of personal medical image data. The security analysis and simulation results show that the algorithm has good scrambling effects.
Key words : medical images;selective encryption;regions of interest;SCAN

 

0 引言

  随着云计算与大数据技术的发展,其在医学信息化特别是医院影像数据的应用越来越广泛。如何利用昂贵的影像设备在国内实现区域影像数据有效共享,已成为医院信息化的研究热点之一。现有的医疗领域信息系统是离散的,通过云计算可搭建一个扁平化的信息云平台,整合原有的离散信息系统,进而促成各项业务有效协同,共享数据资源。但是当用户依赖于云提供者存储其数据时,也就从应用程序级别开始放弃对数据的直接控制。随着云部署模型与数据的地理位置混合在一起,更是进一步牺牲了数据控制,因此对医院影像数据的个人隐私安全亟待保护。目前,医学图像占医院医疗信息的70%~80%,传统加密算法(如DES、AES)针对一维数据流设计,没有考虑数字图像数据量大、相关性强、冗余度高、能量分布不均匀等特点,简单地将传统加密算法应用于图像加密时,加密效率不高,故不适用于加密数字医学影像。

  KULKARNI N S等[1]提出了针对条件访问系统的小波域选择性加密技术,该技术只适用于多媒体数据流的一小部分子集,节省计算时间和资源。BHATNAGAR G[2]提出了基于锯齿状空间填充曲线、感兴趣的像素、非线性混沌映射和奇异值分解的简单选择性加密,通过锯齿形空间填充曲线用感兴趣方法选择重要像素的手段来打乱像素位置,从非线性混沌映射和奇异值分解得到秘密图像密钥对重要像素进行扩散。AGRAWAL P等[3]提出在概念上选择图像的一部分,有效地获取图像的重要部分,对其使用常规加密模式。大多数选择性图像加密方案基于图像压缩算法设计,其编解码器是特定的。由于图像不同的位面对视觉效果贡献方式不同,Xiang Tao等[4]提出有选择性的灰度图像加密方案,每个像素只有一部分重要比特通过单向耦合映像格子产生的密钥流加密。

  在医学领域,病理图片涉及到患者的个人隐私,在医疗诊断中,对病理图片的要求非常高,同时要保证图像在传输过程中的完整性,不能出现像素差错或者恶意篡改。基于此,本文结合SHA-3[5]算法,利用图像自身的哈希值作为密钥中的一部分,结合SCAN方法利用图像位加密技术,设计了一种选择性加密算法,既解决了图像传输过程中的恶意篡改和传输差错问题,又保证了图像的安全性。

1 基本理论

  1.1 选择性图像加密

  在选择加密中,仅对图像的某些内容加密可降低执行时间,在保证图像的安全性的同时,图像的某些部分是可见的。由于医学影像的特点,加密过程仅应用于图像中基于ROI提取的选中部分,使加密的时间缩短。在医学影像中,部分加密足以保证图像的安全性。选择性加密虽然可能被预测出原始图像,但原始图像的准确性和可视的范围取决于加密方法和加密图像的信息量。本文采用自动选择ROI并使用SCAN的mapping技术进行选择性加密。

  定义1 利用m×n大小的矩形对图像进行分块。m和n以像素为单位,大小可根据对图像加密安全性能要求的高低自由选定。分块后得到以大小为M×N的最小单元图像块的图像,其中M=ceil(H/m),N=ceil(W/n)。

  判断是否被选择加密:给定一个m×n的像素矩阵

  X00  X01  X0j  …  X0n

  X10  X11  X12  …  X1n

  Xi0  X21  X22  …  X2n

  …  …   …       …

  Xm0  Xm1  Xmj  … Xmn

  依次扫描其中像素值:

  K1X019{APPM_KJ7J2TR0W~0.png,j≥li∈[0,m],j∈[0,n]

  st.xi,j>0&(xi-1,j|xi,j-1)>0i∈[0,m],j∈[0,n-1](1)

  xi,j>0&(xi+1,j|xi,j+1)>0i∈[0,m-1],j∈[0,n-1]

  其中l为定义的阈值,当该块内的像素总和超过阈值且非噪声点时,对该块进行进一步的加密。

  1.2 SCAN语言

  SCAN是一个基于二维空间的访问方法,易于表示和生成大量不同扫描路径的形式化语言[6]。SCAN语言利用扫描模式产生大量扫描路径或空间填充曲线,将二维的图像数据变为一维数据序列。图1显示了15种基本的扫描方式。有6种扫描模式的转换,可分别通过90°、180°和270°的同一性、水平垂直反射、反射、旋转以及组合得到。

001.jpg

  假设需要加密的图像已经进行分块选择的操作,选取一块8×8像素矩阵利用SCAN语言进行置换操作。图2是对像素块内的元素使用斜平行方式置换。图3是对置换之后的图像进行逆操作,从而使得图像恢复初始的状态。

  定义2 对于任意的A=A7 A6 A5 A4 A3 A2 A1 A0和B=B7 B6 B5 B4 B3 B2 B1 B0,其中Ai、Bi∈GF(2),则C定义为A、B中各字节对应异或所得的结果:

2 算法流程

  本文将对DICOM中的<Image>元素进行加密,同时对该元素部分进行反复多次加密实验。加密流程图如图4所示。

004.jpg

3 实验及算法分析

  为了验证以上算法的加密效果,在MATLAB7.1平台上对其进行了仿真实验,所用计算机CPU为CoreTM Duo 2.00 GHz,内存为2.0 GHz 。

  3.1 实验步骤

005.jpg

  (1)以一张脑部的DICOM数据图像为例,如图5(a)所示,图中可以看出脑部有明显的肿瘤区域,对该图进行两次加密,根据本文的加密算法,得到一次加密图像和二次加密图像分别如图5(b)、5(c)所示。加密算法的操作步骤如下:

  输入:DICOM数据中图像数据矩阵P、加密轮次t、每轮的块间加密方式以及块内加密方式;

  输出:加密后图像C及对应密钥。

  ①将H×W大小的图像分成若干个大小为m×n的图像块。对各块扫描各像素点,若分块像素超过阈值且不是噪声点,则被选择作为待加密分块。计算图像的哈希值。

  ②选择要加密的SCAN方法。将待加密块依次与哈希值序列结合SCAN方法进行异或运算,得到一个经过加密处理的矩阵。

  ③将加密块用随机SCAN方法进行置换存储为加密后的图片。若满足加密效果和应用需要则结束加密,否则返回步骤②。

  (2)解密算法的操作步骤和加密的操作步骤基本一致,是一个逆向的操作过程,其算法主要步骤如下:

  输入:加密后的图像以及对应的密钥(加密轮次、对应的密钥、加密块位置、块间加密方式、块内加密方式);

  输出:解密结果以及判断结果是否被篡改。

  ①将得到的加密图像存储为矩阵,读取加密轮次,及每轮加密密钥和加密方式。

  ②将已知d位哈希值序列与图像矩阵按已知的像素分块顺序,以m×n个像素为分块进行异或运算,得到第一次解密后的图像。

  ③计算该解密图像的哈希值,判断该图像是否经过篡改,如果是,操作终止,输出图像被篡改;若不是,则进入步骤④。

  ④据已知的加密次数,重复步骤②、③进行多次解密操作。

  3.2 算法分析

  (1)图像直方图

006.jpg

  一个好的图像加密算法应使加密后图像的直方图分布均匀,尽量减少图像存在的像素统计特征,实验结果如图6(a)、(b)、(c)所示。由图可知,本文算法能很好地混淆图像像素值的分布,具有较好的加密效果。

  (2)相邻像素相关性

  对于图像中各方向的相邻像素相关性rxy可通过式(3)计算:

  16Z1P`MO3})[]RSV01FAXQB.png

  其中, xi、 yi代表相邻的像素值。 N为选取对比的像素对总数。图像加密前后各方向相邻像素相关性结果如表1所列。

010.jpg

  原始图像、一次加密图像和二次加密图像的水平、垂直、对角像素相关性对比分别如图7、8、9所示。加密后3个方向的相关性和原图相比都大大减少,密图无法辨认。

008.jpg


  (3)敏感性测试

  ①密钥敏感性,首先对图像进行两轮加密操作,保存密文图像后,对解密密钥中哈希值进行微小的改变,再对图像进行解密操作。实验结果表明,虽然密钥只进行了一个比特的改变,亦将导致图像无法解密,说明算法中密钥有极高的敏感性。

  ②明文敏感性,将图像中一个像素进行改变,计算哈希值。将原图和改动后图像的哈希值对比发现,其哈希值是完全不同的序列。进一步对其进行加密,得到两个几乎无相关性的图像,说明算法具有良好的明文敏感性,能在加密过程中将明文的改变扩散到整个图像。

  ③密文敏感性,将图像加密两轮之后密文图像进行若干个像素的改变,再应用解密操作。对得到的第一轮解密图像进行哈希值计算发现,虽然明文图像只有几个像素的差别,但其哈希值却是基于无相关性的序列,说明算法具有良好的密文敏感性。

4 结论

  本文的加密算法采用选择性加密方式,将图像进行一定规则的分割,以分割后的图像块为最小单元采用SCAN语言打乱像素的位置有选择性地进行加密,相比较其他的图像安全加密算法其可以缩短加密的时间。该算法在解决了图像安全性问题的同时又确保了图像在传输过程中的完整性认证,适用于医学应用领域,具有一定的实用性。

  参考文献

  [1] KULKARNI N S,RAMAN B,GUPTA I.Selective encryptionof multimedia images[C].NSC2008,2008.

  [2] BHATNAGAR G,JONATHAN W Q M.Selective image en-cryption based on pixels of interest and singular value decomposition[J].Digital Signal Processing,2012,22(4):648-663.

  [3] AGRAWAL P,RAJPOOT M.A fast and secure selective encryption scheme using grid division method[J].InternationalJournal of Computer Applications,2012,51(4):29-33.

  [4] Xiang Tao,WONG K,Liao Xiaofeng.Selective image encryption using a spatiotemporal chaotic system[J].Chaos:An Interdisciplinary Journal of Nonlinear Science,2007,17(2):023115.

  [5] BERTONI G,DAEMEN J,PEETERS M,et al.The keccak reference[Z].Submission to NIST(Round 3),2011.

  [6] MANICCAM S S,BOURBAKIS N G.Lossless image com-pression and encryption using SCAN[J].Pattern Recognition,2001,34(6):1229-1245.


此内容为AET网站原创,未经授权禁止转载。