彩色图像处理是数字图像处理的重要组成部分,在网络与多媒体通信中,常常涉及到彩色图像文件加密。为此,我们提出了一种彩色图像混沌加密算法,该加密算法通过选用Lorenz系统中三个不同维的变量生成置乱矩阵来分别实现对RGB彩色图像三分量的置乱加密,从而实现对整个彩色图像文件加密。
一、彩色图像混沌加密算法设计实现
1、对Lorenz混沌序列的优化
Lorenz动力学方程为:
其中, 参数σ,r,b 的典型值分别为σ= 10,r=28,b=8/3,在σ和b不变,当r>24.74时,系统进入混沌状态。
但该系统输出的实值混沌序列有一些固有缺陷:x,y,z的值域各不相同,不利于批处理;x,y,z局部取值呈现单调性,易受线性预测攻击;x,y,z自相关特性非理想的δ函数,互相关特性非理想的零特性,难以保证不可预测性,而且系统多输出特性也得不到充分利用。为此,有专家提出了一种对Lorenz混沌序列的优化方法,构建了式(2)所示的一个数学模型:
其中,x',y',z'三为优化后的实值混沌序列;m为控制参数,通过它可以提高序列取值的不规则性;round()为取最接近整数函数。经过实验,证明此优化序列具有良好的混沌特性、较理想的万函数自相关特性和近似为0的互相关特性。
本空域算法采用了此混沌优化序列。
2、置乱算法
利用式(2)产生的三个优化后的混沌序列x',y',z'生成三个置乱矩阵,分别对RGB彩色图像的三个分量进行置乱加密。
置乱矩阵的生成方法:利用优化混沌序列生成相应的置换矩阵PM×N, 对PM×N来说, 其中任一元素Pij∈[1,2,…,M×N],且Pij=Pkl,当且仅当i=k,j=1。
比如:M=4,N=4,P即为4×4的矩阵,由优化混沌序列生成16个实数值组成的混沌序列为:
10.95621370、10.91248372、 10.57640346、11.0759704、11.62504738、 11.13958961、 10.26628130、 9.10829136、9.53332571、 9.21575219、 9.11570905、 9.19910548、8.87154601、9.27423505、 9.85781001、10.94356727
对以上序列按大小排序,然后从1到16进行标识,即可得到序列:4、6、7、3、1、2、8、15、10、12、14、 13、16、11、9、5。
按行排列成4×4的置乱矩阵P4×4为:
置乱规则:采用非线性置换方法,将图像IM×N。N与置乱矩阵PM。Ⅳ的元素一一对应。将IM×N中的元素对应PM×N中的元素进行置乱。如对4x4的图像I4×4按照上面的P4x4矩阵进行
置乱,I中的第1个元素移到第4个元素位置,第2个元素移到第6个元素位置,…,具体过程为:
3、分块加密
由于经本加密算法加密的彩色图像在以后的处理过程中还要进行JPEG压缩,而JPEG压缩过程中的二维DCT、系数量化以及熵编码都是以8×8块为基本单位进行的,为了不破坏DCT系数的分布概率,并且使Huffman编码表能按最优方式使用,我们将待加密彩色图像的R、G、B3个分量按8×8大小分块,以8x8块为单位分别用置乱矩阵Px,Py,Pz进行空域置乱加密。
4、彩色图像混沌加密算法的实现
(1)彩色图像混沌加密算法的实现
图像加密算法实现步骤为:
Step1:输入待加密的彩色图像,分离彩色图像的R、G、B三基色分量。
Step2:对Lorenz混沌序列进行优化处理。输入密钥σ,r,b,x0,yo,z0(xo,yo,zo为初始值),生成x,y,z实值混沌序列,用式(2)对x,y,z混沌序列进行优化,得到x',y',z'优化混沌序列。
Step3:将待加密彩色图像的R、G、B3个分量按8x8大小分块,以8×8块为单位生成置乱矩阵Px,Py,Pz。
Step4:空域置乱。按置乱矩阵Px,Py,Pz规则重排三基色分量8×8块的几何位置,实现置乱加密。
Step5:输出置乱彩色图像。合成置乱后的三基色图,即得到加密后的图像。
(2)解密算法实现
用户输入正确的密钥后,将加密算法逆向运算,即可获得解密图像。
二、实验仿真
我们选取大小为512×512的彩色图像Lena作为实验对象(如图1),利用MATLAB 6.5编程实现算法。选取密钥σ=10,r=28,b=8/3,xo=0.5143978026,yo=0.3246981507,
zo=0.7021364589。为了增强生成混沌序列的安全性,我们除去序列的初始段,使Lorenz方程预先迭代n=10000次。
图2、图3、图4分别是Lena的三基色分量分解图,图5、图6、图7分别是三基色分量图加密后的图像,图8是将分量图合成为彩色图像后的Lena最终加密图像。
三、安全性分析
1、保密性测试
本算法在空域范围内使用Px,Py,Pz对彩色图像三基色分置乱,从密码学角度来说,加强了算法扩散的强度。若采取唯密文攻击,则解密工作量高达3×(M×N)!,进一步加大了破译难度。另外,三基色分量分别置乱,混淆了彩色图像每一像素的R,G,B三分量,使加密图像在视觉上发生了色彩变化,图像更难读懂。图9为参数r的偏差为10的-10次方时的错误解密图像,图10为初值xo的偏差为10的-10次方时的错误解密图像。
由于混沌序列对系统参数和初值极其敏感,即使密钥有微小的变化也会得到完全不同的置乱矩阵,从而导致错误的解密结果。
2、置乱度分析
我们使用置乱度(SM)来评估加密图像的置乱程度。它的计算式为:
在本加密算法中,我们将R定义为经过幻方变换生成的置乱图像。幻方变换是一种矩阵变换,在图像文件加密中,它的加密算法和密钥是不能公开的,因此,一般不单独作为加密算法。但单就置乱效果而言,幻方变换的置乱效果是很好的,所以我们将它作为衡量本加密算法置乱度好坏的一个标准。
我们利用本加密算法多次试验来计算Lena三基色分量图像的置乱度,可得到SM的平均值SM为:
可见,本加密算法的置乱度与幻方变换的置乱度相近,具有良好的置乱性。
3、抗攻击测试
图11、图12分别为Lena加密图像受到压缩处理、噪声干扰后的解密图像。图1 1为加密图像经JPEG压缩为原大小20%后的解密图像,图12为加密图像受到10%强度的高斯噪声干扰后的解密图像,可以看出解密图像效果较好,具有较强的抗攻击能力。
小知识之Huffman编码
哈夫曼编码(Huffman Coding)是一种编码方式,哈夫曼编码是可变字长编码(VLC)的一种。Huffman于1952年提出一种编码方法,该方法完全依据字符出现概率来构造异字头的平均长度最短的码字,有时称之为最佳编码,一般就叫作Huffman编码。
实操指南:如何监控聊天中的敏感信息?这款秘籍软件,轻松掌握微信聊天动态
电影《摩登时代》里,流水线工人就连在吃饭时都要用“自动喂食机”提高效率,这样才能挤出更多时间投入工作。虽然现在打工人不至于此,但有些老板仍然放心不下……像企业聊天记录往往蕴含着大量的敏感信息。为了确保信息安全,监控聊天中的敏感信息成为了一项必要且重要的工作。以下是一款秘籍软件,帮助你轻松掌握微信聊天动态,确保信息安全。...
怎么监控员工上班情况?2024企业管理的四种方法,老板们不容错过
怎么监控员工上班情况?2024企业管理的四种方法,老板们不容错过员工上班在干什么?摸鱼?打游戏?老板该怎么管理?如何才能监视怎么监控员工上班情况?监控员工上班情况可以通过多种方式实现,但重要的是要确保这些措施既合法又合规,同时尊重员工的隐私权。以下是一些建议的方法:一、制定明确的行为规范与奖惩制度1、制定行为规范: 企...
怎么监控员工上班情况?快速监控员工状态
怎么监控员工上班情况?快速监控员工状态在企业管理中,如何有效监控员工上班情况,确保工作效率与团队协作,是每位老板都需面对的课题。本文为您揭秘五招快速监控员工状态的实用技巧,不仅能帮助您实时掌握员工动态,还能提升整体管理效率。作为老板,掌握这些技巧,将让您在企业管理中游刃有余,轻松应对各种挑战。一、使用安企神软件实时监控...
安企神桌管软件:提升企业管理效率的全能助力
安企神桌管软件:提升企业管理效率的全能助力在当今竞争激烈的商业环境中,企业必须不断优化管理和运营流程,以提高效率和盈利能力。安企神桌管软件正是这样一款面向中小企业的管理工具,能够帮助企业在多方面提升综合管理水平。本文将详细探讨安企神桌管软件给企业带来的多重价值。一、全方位的管理功能安企神桌管软件是一款集成了多种管理功能...
安企神:揭开终端安全管理软件的神秘面纱
安企神:揭开终端安全管理软件的神秘面纱在数字化日益普及的今天,企业的网络安全问题愈发显得重要。数据泄露、网络攻击等事件层出不穷,如何保障企业内部信息的安全性成为众多企业关心的焦点。安企神终端安全管理软件应运而生,作为一款专业的安全管理工具,它的功能与优势备受关注。本文将全面揭秘安企神软件的核心功能、应用场景及其在终端安...