Reversible data hiding in encrypted image with secure multi-party for
telemedicine applications
论文期刊:Biomedical Signal Processing and Control
中科院2区
![在这里插入图片描述](https://img-
blog.csdnimg.cn/direct/3423c3fb40c0488eb42a82d3afb42615.png)
引言
可逆数据隐藏技术是多媒体信息安全领域的研究热点之一,其主要特征是可以在解码端无失真的提取秘密数据和无失真的重建原始载体。在一些不能接受原始载体有任何失真的特殊领域有广泛的应用前景,如军事,远程医疗,法律取证等。
经过近二十多年的研究,RDH技术可以被分为三类,1)无损压缩,无损压缩RDH藏技术主要是利用编码压缩技术对原始图像压缩后腾出空间,将秘密数据嵌入到空间中。Barton提出第一个无损压缩方法,随后,Celik等人[5]利用条件熵编码将图像未修改的部分作为辅助信息以提高压缩效率。不过,由于基于无损压缩技术的RDH算法存在嵌入容量低,且会产生较大失真等缺点在后续的研究中成果较少。2)差值扩展,Tian等人提出首个差值扩展RDH算法。通过计算两个相邻像素的均值和差值,将秘密数据可逆的嵌入到载体图像中。为提高DE算法的嵌入容量,研究者提出预测误差扩展技术PEE,将秘密数据嵌入到扩展后的预测误差中以获得更高的嵌入容量和更低的嵌入失真。3)
直方图平移[]-[],Ni等人[]提出,通过平移像素直方图将秘密数据可逆的嵌入到直方图峰值中,相比于DE方法,HS方法每个像素值仅变化1bit,图像的总体统计特性不会大幅改变。HS算法的嵌入容量受图像峰值的限制,为提高算法的嵌入容量,HS通常与PEE技术结合使用即PEE-
HS[]-[], PEE-HS 能兼顾PEE技术的高容量和 HS的低失真优点,被研究者广泛使用。
近年来,数字图像的可靠存储和安全传输成为云计算中的热点问题[]。将加密图像上传到云端是保护数据机密性和隐私的有效解决方案。为了方便对云中大量密文数据的管理,研究者尝试将RDH技术应用到加密图像中提出了加密域可逆数据隐藏技术(RDH-
EI)。
现有的RDH-
EI算法根据附加数据嵌入的时机被分类两类:加密前腾出空间(VRBE)[]-[]和加密后腾出空间(VRAE)[]-[]。基于VRBE框架的RDH-
EI算法,用户对原始图像处理并腾出空间后再加密并嵌入数据。由于能充分利用原始像素的冗余,因此VRBE-based RDH-
EI算法具有较高的嵌入容量。Ma等人[]提出首个VRBE框架下的RDH-
EI算法,利用HS技术在原始图像中腾出空间获得了较好的嵌入容量和解密图像质量,算法的最大嵌入容量不超过0.5bpp。为进一步提升嵌入容量,Xu等人[]将预测误差直方图平移技术应用到加密域中,将图像分为采样像素和非采样像素两类,利用采样像素预测非采样像素并计算预测误差,对采样像素和域值之外的预测误差加密生成加密图像。信息隐藏者通过HS方法将附加数据嵌入到未加密的预测误差中。为充分利用原始图像的冗余提升算法的嵌入容量,Puteaux等人[14]提出了一种基于MSB预测编码的RHD-
EI算法,算法嵌入率接近1bpp。Yin等人[19]提出了一种基于多MSB预测和Huffman编码的高容量、无误差的RDHEI方案,在原始图像中自适应预测像素并使用霍夫曼编码进行标记,该方法在UCID数据库中的平均嵌入率达到了2.719bpp。最近的如Chen等人[]提出的基于多MSB预测和位平面压缩的RDHEI算法,该算法的嵌入容量接近3bpp。虽然VRBE算法具有高的嵌入容量,但在实际应用中存在较多限制[Yi]。一方面,对原始图像的预处理增加了内容拥有者的计算负担,另一方面,为保证算法的可逆性,再对图像预处理过程中会产生辅助信息,辅助信息的传送可能会带来安全隐患。
基于VRAE框架的RDH-
EI算法,用户仅需要对原始图像执行加密操作而不需要任何预处理,能降低用户的计算负担。不过,由于加密使得图像熵最大化,在加密图像中腾出空间是困难的。为提升VRAE-
based RDH-EI算法的嵌入容量,研究者需要涉及特殊的加密方案。流密码异或加密[]-[],Block Permutation and Co-
XOR(BPCX)加密[]-[]和Block Permutation and Co-Modulation(BPCM)加密[]-[]是常用的加密方方案。
Zhang[]基于流密码异或加密提出首个RDH-
EI算法。通过翻转图像块中像素的LSB来嵌入1bit信息,基于波动函数提取秘密数据和恢复原始图像。由于波动函数无法精确判断图像块的LSB是否翻转,因此Zhang算法提取数据存在错误且原始图像不能完全恢复。随后,Hong等人基于块的边缘匹配改进了Zhang算法,获得了更高的恢复质量。基于密码异或加密的RDH-
EI算法存在安全性低且嵌入容量低等缺陷。现有VRAE-based RDH-
EI大多采用BPCX加密和BPCM加密。Huang等人[]基于BPCX加密设计一种适用于RDH-
EI的通用算法框架,该框架中可逆数据隐藏算法独立于图像加密算法,因此大多之前提出的DHS(差值直方图平移)和PEHS(预测误差直方图平移)为基础RDH方案可以直接在加密域内完成,无需再设计额外的RDH方案。Ge等人[53]提出一种高容量的多级加密域可逆信息隐藏算法,该算法基于隐藏密钥从每个加密块中选择峰值像素,对选中的峰值像素采用直方图平移的方法在每个块内嵌入秘密信息。由于每个加密块中的峰值点是基于秘钥选择的,因此不需要存储峰值点的位置信息。Yi等人
[41]基于BPCM加密提出一种参数二叉树标记的方法对预测误差编码,该算法的平均嵌入率达到2.0
bpp。最近,Yu等人[44]基于BPCM加密提出一种自适应差分恢复的RDH-
EI算法,通过差分恢复(ARD)的信息隐藏方法自适应决定原始像素和参考像素的差值范围,对图像的差值信息编码压缩后替换差值的空余比特位实现信息隐藏,最大嵌入容量达到了3bpp。
通过设计特殊的加密方案,VRAE-based RDH-EI算法的嵌入容量已经与VRBE-based RDH-
EI算法相当。不过,流密码异或加密,BPCX加密和BPCM加密均被研究者指出存在安全隐患[K],[Q]-[Q],且现有的RDH-
EI方案不适合多方版权保护应用。多方版权保护应用中,秘密数据的嵌入需要多个服务器共同协作完成任务,能增强算法的安全性。最近,Xiong等人[]基于轻量级密码设计了一种用于多方安全计算的RDH-
EI算法,将加密共享分为2×2大小的不重叠图像块,通过预测误差直方图平移技术将1bit附加数据嵌入到加密共享的图像块中。由于每个图像块仅嵌入1bit数据限制了算法的嵌入容量,在1级嵌入条件下,最大嵌入率不超过0.25bpp。为进一步提升嵌入容量,结合远程医疗应用,本文提出一种大容量的适用于多方安全计算的RDH-
EI算法。 主要贡献如下:
1)提出远程医疗应用中的多方安全计算框架。附加数据由两个不同的边缘服务器协作完成嵌入,提升了RDH-EI算法在实际应用中的安全性。
2)提出两阶段预测误差并嵌入数据策略。将加密图像块中的像素划分为嵌入像素和采样像素两类,分别对EPs和SPs预测误差并在预测误差峰值嵌入附加数据,提升了算法的嵌入容量。
3)相比于对比方法,实验结果表明提出算法能抵抗现有唯密文攻击和已知明文攻击,在自然图像和医学图像下均具有较高的嵌入容量。
现有方案分析
在本文中,我们的目标是解决RDH-
EI隐私保护中,云端不可信导致用户隐私数据泄露的问题。目前已有的框架中,用户基于加密秘钥key_1将原始图像加密后上传到云端保护,云端的信息隐藏者基于信息隐藏秘钥key_2在不知道原始图像内容的前提下在加密图像中可逆的隐藏附加数据。合法的接收者拥有key_2仅可以提取秘密信息而不能解密得到原始图像,当接受者同时拥有key_1和key_2时,不仅可以提取秘密信息,还可以解密得到原始图像。然而,现有的RDH-
EI仍存在以下安全性问题:
1)加密算法的安全性:云环境作为不可信任的第三方,加密算法的安全性事关图像内容保护的成败,对RDH-
EI是算法设计至关重要。然而,对于VRAE框架下的RDH-
EI算法,为了能在加密图像中保留冗余用于数据嵌入,需要设计特殊的加密方法,如:基于流密码异或的加密方案[],基于块置乱的加密方案[]等。最近,K[]证明流密码异或加密无法抵抗COA攻击,Qu等人[]证明基于块置乱加密方案无法抵抗KPA攻击。如何在保证嵌入容量的前提下,设计安全的加密方案成为RDH-
EI急需解决的问题之一。 为解决现有RDH-EI算法面临的安全威胁,本文提出一种多方计算的安全RDH-EI方案。
2)嵌入容量有待提升。基于VRBE框架的RDH-
EI算法为了能保证算法的可逆性,在对原始图像与处理过程中会产生辅助数据用于图像的恢复,对辅助信息的处理常一种是直接将辅助数据传送给云管理者[]-[],另一种是将辅助信息自嵌入到图像中。两种方案均存在安全风险,对辅助信息的处理限制了RDH-
EI的应用。
远程医疗应用中的多方安全存储
为解决上述问题,本文基于轻量级多方加密[]提出一种RDH-
EI在医学图像隐私保护的应用场景。内容拥有者基于加密秘钥key_1对原始医学图像X加密后得到加密图像E,E被随机分成两份分别表示为加密share1和加密share2,两份加密后的共享图像分别发送到两个边缘服务器S_1和S_2中。其中S_2根据协议可以向S_1发送有限的信息,协助S_1中数据隐藏者在加密的share1中隐藏秘密数据(如,版权,患者信息等)。接收者将收的含密-
加密共享share1和加密共享share2相加得到含密-加密图像M。如果接收者仅拥有加密秘钥key_1,他可以对含密-
加密图像直接解密,得到与原始图像视觉相似的含密-
解密图像O。如果接收者拥有信息隐藏秘钥key_2,可以进一步从O中提取秘密信息。在提出的框架中,图像的解密和信息提取是相互独立的。
本文中,我们使用半诚实(也称为被动或诚实但好奇)安全模型。也就是说,每个边缘服务器都将按照规定履行协议内容,同时,可能会试图根据存储和处理的数据尽可能多地了解感兴趣的私人信息。另外,假设两个边缘服务器S_1和S_2是独立的、不勾结的。这意味着一个边缘服务器不会向另一个服务器透露比协议消息更多的信息,这是一个实际的假设,因为两个边缘服务器可以部署在两个不同的甚至相互竞争的服务提供商上并由它们管理。(e.g.,
AWS’s Lambda@Edge and Microsoft Azure IoT Edge)。
![在这里插入图片描述](https://img-
blog.csdnimg.cn/direct/7e70392885b346a99642dba4ee293080.png)
算法框架
算法核心是实现两轮数据嵌入
![在这里插入图片描述](https://img-
blog.csdnimg.cn/direct/e2a8d6406d5d4c58a131f66ddf8f5e87.png)
实验结果
嵌入容量分析
算法的最大嵌入容量表示图像中最多嵌入的比特数,是衡量RDH-
EI算法的重要指标之一。本文采用PEE技术嵌入数据,因此,最大潜入容量C_max等于预测误差直方图的峰值,为排除图像尺寸对C_max的影响,通常使用嵌入率(ER)来表示算法的嵌入容量。本节我们主要分析算法的嵌入率以及含密图像O的质量PSNR。表1中,我们分别测试了8张测试图像的最大嵌入容量以及对应的解密图像PSNR,并与经典和最新的算法进行对比。
其中,经典的算法如Zhang等人[]和Hong等人[]通过翻转像素的最低有效位嵌入秘密数据,由于每个图像块仅能1比特数据,因此算法嵌入率较低。此外由于波动函数无法完全正确的判断像素的LSB是否反转,导致图像无法完全可逆的恢复。我们以8×8分块大小为例测试了Zhang等人[]和Hong等人[]算法的ER和PSNR,对于测试图像,算法的最大ER为0.015,PSNR的最大值为38.13。为提高算法的嵌入率,Xu等人[]提出差值加密和直方图平移的RDH-
EI算法,用图像中1/4的采样像素预测3/4的非采样像素,通过直方图平移的方法将秘密信息嵌入到非采样像素差值直方图的峰值中,非采样像素不嵌入信息。相比于Zhang和Hong算法,Xu算法取得了较好的解密图像质量,不过,Xu等人仅对非采样像素预测误差限制了算法的嵌入率不会超过3/4,此外Xu算法存在安全隐患[]。表1中,我们以阈值[-2,1]为例测试Xu算法在测试图像下的性能,实验结果表明,Xu算法对测试图像Med2的嵌入率最高,为
0.5bpp,解密图像的质量均大于44dB。
最近,Ge等人[]提出一种多层嵌入的RDH-
EI算法,将BPCX加密[]后的图像分为2×2大小的块,在每个加密图像块中随机选取两个峰值,通过直方图平移的方法将秘密数据嵌入到每个加密图像块中。为提升解密图像的质量,Ge等人算法仅对图像的MSB执行块异或加密,由于异或加密打破了像素间的相关性每个图像块中重复的像素值很少,且随机选取的峰值通常不是真实的峰值,导致算法的嵌入率很低。由于本文算法仅采用一层嵌入,为了对比的公平性,表1中对我们对Ge算法同样仅做一层嵌入。表1的结果可以看出,对于自然图像,Ge算法的解密图像质量均在50dB以上,而对于医学图像,Ge算法的解密图像质量很低,如Med1,Med2和Med3的PSNR均不超过15dB。
算法的最大嵌入容量表示图像中最多嵌入的比特数,是衡量RDH-
EI算法的重要指标之一。本文采用PEE技术嵌入数据,因此,最大潜入容量C_max等于预测误差直方图的峰值,为排除图像尺寸对C_max的影响,通常使用嵌入率(ER)来表示算法的嵌入容量。本节我们主要分析算法的嵌入率以及含密图像O的质量PSNR。表1中,我们分别测试了8张测试图像的最大嵌入容量以及对应的解密图像PSNR,并与经典和最新的算法进行对比。
其中,经典的算法如Zhang等人[]和Hong等人[]通过翻转像素的最低有效位嵌入秘密数据,由于每个图像块仅能1比特数据,因此算法嵌入率较低。此外由于波动函数无法完全正确的判断像素的LSB是否反转,导致图像无法完全可逆的恢复。我们以8×8分块大小为例测试了Zhang等人[]和Hong等人[]算法的ER和PSNR,对于测试图像,算法的最大ER为0.015,PSNR的最大值为38.13。为提高算法的嵌入率,Xu等人[]提出差值加密和直方图平移的RDH-
EI算法,用图像中1/4的采样像素预测3/4的非采样像素,通过直方图平移的方法将秘密信息嵌入到非采样像素差值直方图的峰值中,非采样像素不嵌入信息。相比于Zhang和Hong算法,Xu算法取得了较好的解密图像质量,不过,Xu等人仅对非采样像素预测误差限制了算法的嵌入率不会超过3/4,此外Xu算法存在安全隐患[]。表1中,我们以阈值[-2,1]为例测试Xu算法在测试图像下的性能,实验结果表明,Xu算法对测试图像Med2的嵌入率最高,为
0.5bpp,解密图像的质量均大于44dB。
最近,Ge等人[]提出一种多层嵌入的RDH-
EI算法,将BPCX加密[]后的图像分为2×2大小的块,在每个加密图像块中随机选取两个峰值,通过直方图平移的方法将秘密数据嵌入到每个加密图像块中。为提升解密图像的质量,Ge等人算法仅对图像的MSB执行块异或加密,由于异或加密打破了像素间的相关性每个图像块中重复的像素值很少,且随机选取的峰值通常不是真实的峰值,导致算法的嵌入率很低。由于本文算法仅采用一层嵌入,为了对比的公平性,表1中对我们对Ge算法同样仅做一层嵌入。表1的结果可以看出,对于自然图像,Ge算法的解密图像质量均在50dB以上,而对于医学图像,Ge算法的解密图像质量很低,如Med1,Med2和Med3的PSNR均不超过15dB。
不同于自然图像,医学图像中存在大量的0像素,由于Ge算法仅对图像最高位平面异或加密,0像素经过异或后被加密为0或128。0像素作为溢出值会被标记并修改为1,该过程会导致标记的位置信息过多降低算法的嵌入容量。而128像素并非溢出值而不做处理。此时,当比特1被嵌入到128像素时,通过直方图平移,128被修改为127,即像素的低7位比特均取反,仅MSB为0。当用同样的解密秘钥直接与像素值127异或得到的解密像素值为255,而原始像素值为0。可见,Ge算法对医学图像直接解密可能会导致较大的误差。
不同于Ge等人提出的算法,本文不采用异或加密,因此对于医学图像同样能得到较好的解密图像质量。图8中,我们以测试医学图像Med1,Med2和Med3为例,对比了Ge算法和本文算法的含密图像O
。可以看出,Ge算法直接解密图像在0像素区域存在较多的噪声点,不适用于对医学图像,而本文算法的含密图像O并不存在视觉噪声,效果好于Ge算法。
![在这里插入图片描述](https://img-
blog.csdnimg.cn/direct/8397312cb8ac40549ed9be11da87a33c.png)
最新的算法如Xiong等人[] 基于轻量级秘密共享加密提出Robust Reversible Watermarking in Encrypted Image
with Secure Multi-party (RRWEI-SM)。为提该算法鲁棒性,基于RRWEI策略进一步提出Modified RRWEI-
SM。RRWEI策略的嵌入容量高于Modified RRWEI-
SM策略,因此我们将RRWEI策略与本文提出的算法进行对比。与文献[Ge]一样,RRWEI策略可以采取多轮嵌入的方式提升嵌入容量。表1中测试了RRWEI策略在一层嵌入时的ER和PSNR(n=3)。RRWEI策略对于2×2的加密块中仅嵌入1比特数据,最大嵌入容量不超过0.25bpp。不同于Xiong算法,提出的算法对于3×3分块中所有像素都求预测误差,因此差值利用率高于Xiong算法,从表1可以看出,提出算法的嵌入率高于Xiong算法。
为不失一般性,图9测试了UCID图像库1000张自然图像下提出算法和对比算法的最大嵌入率,图9中我们以提出算法的ER为基准,对所有对比方法的ER按降序排序。可以看出,提出算法的嵌入容量均高于对比文献。其中,Zhang算法和Hong等人提出的算法1000张测试图像ER的平均值均为0.014bpp。Ge等人[]提出的算法在只进行一层嵌入时的平均嵌入率为0.1bpp,Xiong等人[]提出的RRWEI算法在只进行一层嵌入时的平均嵌入率为0.13bpp。Xu等人[]提出的算法在对比文献中嵌入率最高,1000张数据集下的平均嵌入率为0.34bpp,而提出算法的平均嵌入率为0.47,高于对比文献。
![在这里插入图片描述](https://img-
blog.csdnimg.cn/direct/018d26695c85438ca842e485e375f4aa.png)
学习网络安全技术的方法无非三种:
第一种是报网络安全专业,现在叫网络空间安全专业,主要专业课程:程序设计、计算机组成原理原理、数据结构、操作系统原理、数据库系统、 计算机网络、人工智能、自然语言处理、社会计算、网络安全法律法规、网络安全、内容安全、数字取证、机器学习,多媒体技术,信息检索、舆情分析等。
第二种是自学,就是在网上找资源、找教程,或者是想办法认识一-些大佬,抱紧大腿,不过这种方法很耗时间,而且学习没有规划,可能很长一段时间感觉自己没有进步,容易劝退。
如果你对网络安全入门感兴趣,那么你需要的话可以点击这里👉网络安全重磅福利:入门&进阶全套282G学习资源包免费分享!
第三种就是去找培训。
接下来,我会教你零基础入门快速入门上手网络安全。
网络安全入门到底是先学编程还是先学计算机基础?这是一个争议比较大的问题,有的人会建议先学编程,而有的人会建议先学计算机基础,其实这都是要学的。而且这些对学习网络安全来说非常重要。但是对于完全零基础的人来说又或者急于转行的人来说,学习编程或者计算机基础对他们来说都有一定的难度,并且花费时间太长。
第一阶段:基础准备 4周~6周
这个阶段是所有准备进入安全行业必学的部分,俗话说:基础不劳,地动山摇
第二阶段:web渗透
学习基础 时间:1周 ~ 2周:
① 了解基本概念:(SQL注入、XSS、上传、CSRF、一句话木马、等)为之后的WEB渗透测试打下基础。
② 查看一些论坛的一些Web渗透,学一学案例的思路,每一个站点都不一样,所以思路是主要的。
③ 学会提问的艺术,如果遇到不懂得要善于提问。
配置渗透环境 时间:3周 ~ 4周:
① 了解渗透测试常用的工具,例如(AWVS、SQLMAP、NMAP、BURP、中国菜刀等)。
② 下载这些工具无后门版本并且安装到计算机上。
③ 了解这些工具的使用场景,懂得基本的使用,推荐在Google上查找。
渗透实战操作 时间:约6周:
① 在网上搜索渗透实战案例,深入了解SQL注入、文件上传、解析漏洞等在实战中的使用。
② 自己搭建漏洞环境测试,推荐DWVA,SQLi-labs,Upload-labs,bWAPP。
③ 懂得渗透测试的阶段,每一个阶段需要做那些动作:例如PTES渗透测试执行标准。
④ 深入研究手工SQL注入,寻找绕过waf的方法,制作自己的脚本。
⑤ 研究文件上传的原理,如何进行截断、双重后缀欺骗(IIS、PHP)、解析漏洞利用(IIS、Nignix、Apache)等,参照:上传攻击框架。
⑥ 了解XSS形成原理和种类,在DWVA中进行实践,使用一个含有XSS漏洞的cms,安装安全狗等进行测试。
⑦ 了解一句话木马,并尝试编写过狗一句话。
⑧ 研究在Windows和Linux下的提升权限,Google关键词:提权
以上就是入门阶段
第三阶段:进阶
已经入门并且找到工作之后又该怎么进阶?详情看下图
给新手小白的入门建议:
新手入门学习最好还是从视频入手进行学习,视频的浅显易懂相比起晦涩的文字而言更容易吸收,这里我给大家准备了一套网络安全从入门到精通的视频学习资料包免费领取哦!
如果你对网络安全入门感兴趣,那么你需要的话可以点击这里👉网络安全重磅福利:入门&进阶全套282G学习资源包免费分享!