一种基于块的高效缩略图保持加密方法、设备及介质

文档序号:37262237发布日期:2024-03-12 20:42阅读:14来源:国知局
一种基于块的高效缩略图保持加密方法、设备及介质

本发明属于图像加密,涉及一种基于块的高效缩略图保持加密算法。


背景技术:

1、随着云服务平台和互联网的快速发展,云存储的大容量、便捷性和高存储效率被发掘,越来越多的人愿意将图片保存到云服务器,使得文件图片共享更加容易,授权用户可以随意访问授权图片。云服务器在解决共享和存储问题的同时也带来了个人隐私安全问题,例如很多人的照片被盗取或者人脸被识别盗用。

2、传统的图像加密通过置换、替换、频域加密、混沌加密等方案对图像进行加密操作,让非授权用户无法识别图像来保证图像的安全性。但是会使得加密图片在云存储时失去可用性和可见性,也就是说未获得密钥是无法辨别加密图像的,只有通过下载解密后才知道图片是否是自己需要的,这无疑给用户带来不必要的麻烦以及增加了云服务器的负担。

3、为了平衡图像加密的可用性和安全性,wright等人提出了缩略图保持加密的思想,其中原图和加密图像的缩略图保持一致,但是wright等人得方案仅仅对块内的像素值进行置乱,这无法抵御统计学攻击。而后tajik等人提出了保持和不变的思想来构造缩略图加密方案。此方案密旨在保持在像素值的同时保持像素值的总和不变。而此类方案更多是将两个元素作为一组进行加密,导致具有低效率的问题。并且,该方案需要调用大量具有高计算复杂度的伪随机函数,带来了很大的计算时间成本。

4、本方案能够同时提供整体图像预览和隐私保护,平衡了图像的安全性与可用性。此外,在计算过程中只包含替换和置换两个加密步骤,并且使用混沌系统产生随机数,这降低了计算开销并提高了效率。更重要的是,该方案在解密后可以还原原始图像,而不仅仅是获得近似原图的图像。在保证一定安全性的前提下实现了无损解密。


技术实现思路

1、本发明旨在解决传统图像加密方案在云存储中丢失可用性的问题,以及现有的缩略图加密方案无法抵御统计学攻击、计算时间长效率低下的问题。提出了一种基于块的高效缩略图保持加密方法、设备及介质。本发明的技术方案如下:

2、一种基于块的高效缩略图保持加密方法,其包括以下步骤:

3、步骤1、将原始彩色图像p分解为r、g、b通道,得到三个通道的灰度图像,并从灰度图像中提取出像素值组成像素矩阵;

4、步骤2、利用混沌系统生成三个序列x、y和z,并对这些序列进行初始值调整,对x、y序列按大小标序,对序列z的值计算以确保它们位于范围[1,7]内;

5、步骤3、将提取的像素矩阵细分为小块,然后将每个像素值进行编码;接着,使用zigzag扫描对像素值进行排序,得到新的一维序列h;

6、步骤4、序列z确定需要替换的换二进制位,使用序列x指定块中替换位置,替换掉原来的的二进制位,将序列h中所有值进行替换得到新序列h’;

7、步骤5、依据y序列的指示位置,对序列h’的像素值置换到由y指定的位置,完成序列的置换操作,由zigzag逆扫描得到二维像素块;

8、步骤6、重复上述的替换与置换步骤,直至所有的像素块都经过了加密处理,将加密后的像素块组合成完整的像素矩阵;

9、步骤7、经过k轮的迭代加密后,按照原始的通道进行合并,最终得到完全加密的彩色图像。

10、进一步的,所述步骤2、利用混沌系统生成三个序列x、y和z,并对这些序列进行初始值的调整处理,具体包括:

11、由logistic混沌映射产生序列,logistic混沌产生序列的具体方程式为:

12、x(t+1)=μx(t)(1-x(t))

13、其中μ∈[0,4],x∈[0,1],生成长度为的独特序列,其中q=gk(key||t||c||k),式中gk(·)为伪随机整数生成器,key为独特密钥,t为由图像名称、拍摄时间地点或其他独特信息组成的唯一标识符,c为通道标识符,c∈{1,2,3},k为当前迭代的次数,w为图像宽度,h为图像高度,b为分块大小;将序列的前q为舍弃,保证序列的独特性,剩下序列拆分为x、y、z序列,三个序列分别为长度w×h、w×h和的一维矩阵;logistic混沌映射的初始值也由q决定,处理q值使得q∈[0,1];

14、对x、y序列拆分,将x、y序列都拆分为长度为1×m*n的一维序列,初始化z序列的值,处理如下:

15、zi=(zi*104 mod 6)+1,使得zi为[1,7]中可重复的整数,其中为z序列中的序号,mod代表取余。

16、进一步的,所述步骤3将提取的像素矩阵细分为小块,然后将每个像素值进行编码;接着,使用zigzag扫描对像素值进行排序,得到新的一维序列h,具体操作为:

17、基于单独的通道,将像素矩阵分块,将w*h的像素矩阵分为个的小块,块中由m*n个像素值组成;

18、将块中每一个像素值进行编码,转换为二进制串;

19、基于像素块,对块内像素zigzag顺序扫描,得到1×m*n的一维序列h。

20、进一步的,所述步骤4序列z确定需要替换的换二进制位,使用序列x指定块中替换位置,替换掉原来的的二进制位,将序列h中所有值进行替换得到新序列h’,具体为:

21、基于像素块,将x序列分块后的序列,按序列中的值的大小进行标序,最大值位标记为1,最小值位标位m*n,得到标序序列rx,使用rx序列选择像素替换位置,其标明了像素值替换到块中的特定位置;使用z序列选择此块中每个像素二进制串中替换位,其标明了像素二进制中[1,zi]位将被用于替换;

22、在确定替换的二进制位和替换到块中的位置后,按照h序列的顺序开始操作,将要替换的[1,zi]二进制位替换到rx指定块内位置,将h(i)替换到rx(i)的位置,i为[1,m*n]中的整数,替换掉原来的二进制位,h序列与rx序列位置信息一一对应,得到新的序列h’;将h序列中所有像素值替换,完成整块的替换操作。

23、进一步的,所述步骤5中的置换操作具体为:

24、基于像素块,将y序列分块后的序列,按序列中的值的大小进行标序,最大值位标记为1,最小值位标位m*n,得到标序序列ry,使用ry序列选择整个像素置换位置,其标明了像素值置换到块中的特定位置;

25、照h’序列的顺序开始操作,将整个像素值置换到ry指定块内位置,h’(i)置换到ry(i)的位置,i是[1,b*b]的整数;h’序列与ry序列位置信息一一对应;将h’序列中所有像素值置换,完成整块的置换操作

26、进一步的,所述步骤6中对所有块完成加密,组合成为新的像素矩阵,具体操作为:

27、重复步骤4和步骤5的操作,直到所有序列都经过加密处理后,按zigzag逆扫描得到像素块,当所有块都经过加密处理后,按原来的位置重新组成为基于通道的像素矩阵。

28、进一步的,所述步骤7对所有通道完成k轮加密,组合成为新的加密,具体操作为:

29、将所有像素矩阵经过k轮迭代加密后,按照原始的rgb通道进行合并,

30、最终得到完全加密的彩色图像。

31、一种电子设备,其包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其所述处理器执行所述程序时实现如任一项所述基于块的高效缩略图保持加密方法。

32、一种非暂态计算机可读存储介质,其上存储有计算机程序,其所述计算机程序被处理器执行时实现如任一项所述基于块的高效缩略图保持加密方法。

33、一种计算机程序产品,包括计算机程序,其所述计算机程序被处理器执行时实现如任一项所述基于块的高效缩略图保持加密方法。

34、本发明的优点及有益效果如下:

35、1、本发明采用替换加密策略对像素值进行操作,这不仅局限于改变像素值的空间布局,更进一步地变动了像素本身的值。这种处理策略可以增强加密的深度,从而更有效地抵御频率分析和其他统计学攻击。

36、2、相较于传统方法,本发明在对图像执行分块操作后,选择基于完整的像素块进行加密。这与过去常见的基于双像素组合进行加密的策略形成鲜明对比,大大提升了加密的效率和算法的并行性。

37、3、在产生伪随机数列时,本发明采纳了混沌系统作为关键生成机制。混沌系统因其固有的不可预测性、拓扑遍历性及对初始条件的高度敏感性而受到青睐,大幅降低了随机数生成的计算时间和复杂性,同时增强了算法的安全性。

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