图像加密算法中目前使用比较广泛的有基于四叉树编码的图像加密算法。该加密算法主要对图像进行四叉树置乱加密,具有安全性较高、保持数据编码格式和数据压缩率不变等优点。但它没有充分利用图像特性,因此,其加密数据最较大,增加了计算复杂度。为此,我们在该加密算法的基础上,从减少加密数据量和提高安全性两方面入手,提出了一种新的图像选择加密算法——基于四叉树的空城图像选择加密算法。
一、四叉树置乱加密算法
1、四叉树编码
四叉树编码是最有效的图像压缩编码方法之一,广泛应用于GIS中。其基本思想是将2n×2n像素组成的图像构成的二维平面按4个象限进行递归分割,直到子象限的数值单调,从而得到一棵四分叉的倒向树,该树最高为力级。对如图1(a)所示的图像,可用四叉树编码法得到如图1(b)所示的四叉树。四叉树按存储方式的不同,分为线性四叉树和非线性四叉树2种。一个含m=2n×2n个像素的图像,其四叉树编码的时间复杂度为o(4m/3),编码速度很快。由于四叉树编码具有算法简单、运算速度快、压缩率大等优点,因此广泛应用于图像编码中。
2、置乱加密算法
我们提出了2种四叉树置乱加密算法:(1)将同属1个父节点的4个子节点置乱,而保持节点阆父子关系不变;(2)将同一高度的节点(包括叶子节点和内部节点)进行置乱。2种置乱
算法的密钥空问分别为:
其中,H表示四叉树的高度;KHtree表示高度为日的四叉树置乱后获得的置乱空间;Nh表示h高度上内部节点的个数;Mh表示h高度上叶子节点个数;Ho表示本高度以上(不包含本高
度)的任何高度上都没有叶子节点。
通过分析可以看出,第(2)种置乱方法的密钥宅间更大、加密效果更好且图像恢复难度更大。
二、基于四叉树的空城图像选择加密算法描述
本文根据图像选择加密的基本思想,在第(2)种置乱方法的基础上提出一种新的图像加密算法。该算法主要过程如下:
(1)取出图像的1个位平面,将其捌分为若干16×16的块。
(2)将每个16×16的块划分为4个8×8的子块,并对其位置置乱。如图2所示。
(3)对每个8×8的子块进行四叉树编码。如果64个值相等,则称其为均匀的。
1)若不均匀,则将8×8子块内部同一高度的节点进行置乱,如图3所示。
2)若均匀,则加密其值。
三、基于四叉树的空城图像选择加密算法的实验结果
原始图像为大小为160×160的图像Lena,置乱和加密采用混沌Logistic映射,即xn+1=4×xn×(1-xn)。初始密钥为0.34,加密了MSB和第6级位平面,实验结果如图4所示。
四、基于四叉树的空城图像选择加密算法分析
1、 加密数据量
通过加密算法描述可知,本文加密算法的加密过程主要包括以下3个部分:
(1)对4个8×8矩阵块的位置置乱。
(2)对非均匀8×8矩阵块的内部置乱。
(3)对均匀8×8矩阵的加密。
通过仿真实验得到图像MSB中均匀和非均匀8×8矩阵块的比倒,如表1所示。
在位置置乱过程中,因为对每个8×8矩阵都要进行处理,所以加密数据量为原MSB的1/64≈1%。由表1可以看出,一般图像的非均匀8×8像素都在50%以下,因此,内部置乱过程涉及的数据量最多约为50%,加密过程的数据量最多约为50%÷64≈1%。整个文件加密过程的数据量最多约为1%+50%+1%=52%,例如Lena.bmp的加密数据量只有1%+34%+ 66%÷64≈36%。
2、安全性分析
加密算法的安全性主要依赖密钥的安全性,而密钥的安全性与密钥空间大小、密文对密钥的敏感度有很大关系。
(1)密钥空间
内部置乱过程在整个加密过程中占有很大比例。本文内部置乱采用“同一高度的节点一进行置乱”。由式(2)可知,8×8矩阵形成的四叉树高度为3,可得最少的密钥空间为24H=243,最多的密钥空间为64!。在位置置乱过程中,16×16矩阵的密钥空间为4!。
由上述分析可知,当每个高度都只有一个内部节点时,内部置乱过程会出现密钥空间过少的问题。虽然这种情况出现的概率很小,但仍对算法安全性构成威胁。在最极端的情况下,即8×8的像素矩阵中63个点都同值时,密钥空间大小虽然可达243,但实际明文空间只有64种情况。此时只要穷举明文就能达到攻击放果。为了进一步提高安全性,本文提出一种对针对置乱算法的改进算法,其步骤如下:
1)对待加密图像文件通过密钥生成一个8×8伪随机矩阵A。
2)对待内部置乱的8×8矩阵口计算:
其中,N1是值为1的点的个数;No是值为0的点的个数。若Drff大于阙值T(如T=44),则置标志位S=1,转第(3)步,若小于T,则置S=0,转第(4)步。
3)对矩阵A和矩阵B进行异或操作得到矩阵B’,转第(4)步。
4)对矩阵B或B’进行内部置乱操作。
上述改进算法对只有少数像素值不同的8×8矩阵和一个伪随机矩阵进行异或操作,增加该矩阵四叉树结构中内部节点的个数,从而提高密钥空间和明文空问。由式(1)可知,增加一个内部节点,置乱空间大约能提高29倍。因为对每个8×8矩阵都要添加一个标志位S来表明该矩阵是否进行过异或运算,所以会多占1/64×m bit,其中,m指图像像素个数。
(2) 密文对密钥的敏感性
虽然内部置乱过程完成对多数数据文件加密,但由表1可以看出,大部分像素属于均匀8×8块,因此,对均匀8×8矩阵的加密同样具有重要作用。本实验采混沌Logistic映射,因为混沌映射具有初值敏感性,所以即使初值只有很小的改变,迭代多次后产生的伪随机序列仍会出现巨大变化。因此,即使攻击者获得了部分明文及相应密文,也无法恢复密钥流。
小知识之四叉树
四叉树是一种树状数据结构,在每一个节点上会有四个子区块。四元树常应用于二维空间数据的分析与分类。 它将数据区分成为四个象限。数据范围可以是方形或矩形或其他任意形状。这种数据结构是由_拉斐尔·芬科尔(Raphael Finkel) 与_J. L. Bentley_在1974年发展出来 。 类似的数据分区方法也称为_Q-tree。
实操指南:如何监控聊天中的敏感信息?这款秘籍软件,轻松掌握微信聊天动态
电影《摩登时代》里,流水线工人就连在吃饭时都要用“自动喂食机”提高效率,这样才能挤出更多时间投入工作。虽然现在打工人不至于此,但有些老板仍然放心不下……像企业聊天记录往往蕴含着大量的敏感信息。为了确保信息安全,监控聊天中的敏感信息成为了一项必要且重要的工作。以下是一款秘籍软件,帮助你轻松掌握微信聊天动态,确保信息安全。...
怎么监控员工上班情况?2024企业管理的四种方法,老板们不容错过
怎么监控员工上班情况?2024企业管理的四种方法,老板们不容错过员工上班在干什么?摸鱼?打游戏?老板该怎么管理?如何才能监视怎么监控员工上班情况?监控员工上班情况可以通过多种方式实现,但重要的是要确保这些措施既合法又合规,同时尊重员工的隐私权。以下是一些建议的方法:一、制定明确的行为规范与奖惩制度1、制定行为规范: 企...
怎么监控员工上班情况?快速监控员工状态
怎么监控员工上班情况?快速监控员工状态在企业管理中,如何有效监控员工上班情况,确保工作效率与团队协作,是每位老板都需面对的课题。本文为您揭秘五招快速监控员工状态的实用技巧,不仅能帮助您实时掌握员工动态,还能提升整体管理效率。作为老板,掌握这些技巧,将让您在企业管理中游刃有余,轻松应对各种挑战。一、使用安企神软件实时监控...
安企神桌管软件:提升企业管理效率的全能助力
安企神桌管软件:提升企业管理效率的全能助力在当今竞争激烈的商业环境中,企业必须不断优化管理和运营流程,以提高效率和盈利能力。安企神桌管软件正是这样一款面向中小企业的管理工具,能够帮助企业在多方面提升综合管理水平。本文将详细探讨安企神桌管软件给企业带来的多重价值。一、全方位的管理功能安企神桌管软件是一款集成了多种管理功能...
安企神:揭开终端安全管理软件的神秘面纱
安企神:揭开终端安全管理软件的神秘面纱在数字化日益普及的今天,企业的网络安全问题愈发显得重要。数据泄露、网络攻击等事件层出不穷,如何保障企业内部信息的安全性成为众多企业关心的焦点。安企神终端安全管理软件应运而生,作为一款专业的安全管理工具,它的功能与优势备受关注。本文将全面揭秘安企神软件的核心功能、应用场景及其在终端安...