图像保密通信技术之Arnold变换
- 格式:doc
- 大小:624.50 KB
- 文档页数:5
第35卷第3期2009年5月 光学技术OPTICAL TECHN IQU E Vol.35No.3May 2009文章编号:100221582(2009)0320384204一种基于Arnold 变换的数字图像加密算法Ξ任洪娥,尚振伟,张健(东北林业大学信息与计算机工程学院,哈尔滨 150040)摘 要:提出了一种基于Arnold 变换的均匀数字图像加密算法。
将传统的Arnold 变换进行改进,加入两个参数a ,b ,并利用Logistic 映射产生参数序列。
将数字图像分块,对每个图像块分别进行参数不同的Arnold 变换,由此实现对图像的位置置乱。
另外将Arnold 变换推广至多维,用于图像的灰度置乱,从而构造一个位置置乱和灰度置乱相结合的图像加密算法。
实验仿真结果表明该算法能够取得很好的加密效果,且具有密钥空间大,密钥敏感性强,以及能够抵御统计和已知明文攻击等优点。
基本满足图像加密的有效性和安全性要求。
关键词:Arnold 变换;Logistic 映射;数字图像加密中图分类号:TP301.6 文献标识码:AAn algorithm of digital image encryption based on Arnold transformationRE N H ong 2e ,SH ANG Zhen 2wei ,ZH ANG Jian(College of Information and Computer Engineering ,Northeast Forestry University ,Harbin 150040,China )Abstract :A digital image encryption algorithm is presented based on Arnold transformation.The traditional Arnold trans 2formation is improved by adding two parameters a and b ,furthermore the Logistic map is used to generate the parameter se 2quences.The digital image is blocked and the Arnold transformation with different parameters is carried out on each image block of the digital image ,thus image location scrambling is achieved.In addition the Arnold transformation is extended to multi 2di 2mensional then used on the image gray scrambling ,so as to construct an algorithm combine both the position scrambling and the gray scrambling.The results of simulation show that this algorithm can achieve good image encryption effect.And it has a large key space ,key sensitivity and many other advantages such as withstand statistical and known expressly attack.It basically meets the effectiveness and security requirements of image encryption.K ey w ords :Arnold transformation ;logistic map ;digital image encryption0 引 言图像作为人类认识和表达世界的基本方法,应用极为广泛,从古老的壁画、象形文字到今天的数字化视频,图像一直伴随着人类历史的发展。
图像保密通信技术之Arnold 变换一、作业目的1.利用Matlab 实现数字图像Arnold 变换的置乱及恢复。
2.深入学习通讯保密技术,进一步了解图像保密通讯技术。
3.向大家展示实现图像保密技术的方法和技术。
二、作业介绍近年来,随着网络带宽和速度的极大提高,多媒体数据特别是数字图像的流传和使用越来越广。
而人们对安全性和隐私的也愈发关注,图像加解密技术得到了极快地发展。
在机要、军事、政府、金融和私人通信中,数字图像所占的比例越来越大,它所承载的信息的安全成为当前人们关心的焦点。
如何确保基于网络的图像/视频信息的安全,是当前信息处理技术领域的亟待解决的难点和研究热点之。
本次作业主要研究Matlab 实现数字图像Arnold 变换的置乱及恢复。
置乱技术是一种图像加密技术,它利用数字图像具有的数字阵列的特点,搅乱图像中像素的位置或颜色使之变成一幅杂乱无章的图像,从而达到无法辨认出原图像的目的,可用于数字图像水印的预处理和后处理过程。
置乱过程不仅可以在数字图像的空间域上进行,还可以在其频率域上进行。
常见置乱方法有Arnold 变换、幻方变换、Hilbert 曲线、Conway 游戏、广义Gray 码变换、仿射变换、正交拉丁方变换等。
1. 置乱技术的特点及优点:置乱技术具有以下特点:置乱技术一般来说具有周期性;置乱变换之后的图像大小不发生改变,直方图不变,只是打乱图像各像素的次序;置乱技术是可逆变换,水印在提取后需要进行置乱变换的逆变换。
对水印进行置乱处理的优点:1)采用置乱技术的合法使用者可以自由控制算法的选择、参数的选择以及使用随机数技术,从而使非法使用者难以破译图像内容,即可以提高水印信息的安全性。
2)置乱技术可以分散错误比特的分布, 提高数字水印的视觉效果从而增强其鲁棒性。
2. Arnold 变换及其Matlab 实现Arnold 变换是Arnold 在遍历理论研究中提出的一种变换,俗称猫脸变换,即“cat mapping ”。
arnold分割变换Arnold分割变换的原理及应用引言:Arnold分割变换是一种基于混沌理论的图像处理方法,通过对图像进行迭代变换,可以实现图像的分割和加密。
本文将介绍Arnold分割变换的原理、算法和应用,帮助读者更好地理解和应用该方法。
一、Arnold分割变换的原理Arnold分割变换是基于Arnold映射的图像处理方法。
Arnold映射是一种混沌映射,可以将二维平面上的点映射到另一个位置。
Arnold分割变换通过对图像进行多次Arnold映射,实现对图像的分割和加密。
Arnold分割变换的原理如下:1. 将输入图像划分为若干个小块,每个小块称为一个像素块。
2. 对每个像素块进行Arnold映射,将其映射到另一个位置。
3. 重复第2步,进行多次Arnold映射,直到达到设定的迭代次数。
4. 将经过迭代变换后的像素块重新组合成输出图像。
二、Arnold分割变换的算法Arnold分割变换的算法如下:1. 输入图像的大小为N×N,将其划分为N个大小为1×1的像素块。
2. 对每个像素块进行Arnold映射,映射公式如下:新的像素坐标 = (原始像素坐标 + 迭代次数) mod N3. 重复第2步,进行多次Arnold映射,直到达到设定的迭代次数。
4. 将经过迭代变换后的像素块重新组合成输出图像。
三、Arnold分割变换的应用Arnold分割变换在图像处理领域有广泛的应用,主要包括以下几个方面:1. 图像分割:Arnold分割变换可以将图像分割为若干个小块,可以用于图像的特征提取和目标识别。
2. 图像加密:通过对图像进行Arnold分割变换,可以实现对图像的加密,提高图像的安全性。
3. 图像压缩:Arnold分割变换可以将图像分割为若干个小块,可以减少图像的冗余信息,实现图像的压缩。
4. 图像恢复:通过对经过Arnold分割变换的图像进行逆变换,可以恢复原始的图像信息。
5. 数字水印:Arnold分割变换可以将数字水印嵌入到图像中,实现对图像的认证和版权保护。
Arnold变换及其逆变换研究毛雷波【期刊名称】《重庆工商大学学报(自然科学版)》【年(卷),期】2012(029)003【摘要】Arnold变换由于具有周期性,被广泛地应用于图像加密.但在利用其周期性进行解密时,有时会比较费时,因此提出了一种Arnold逆变换算法;在此基础上,将其拓展到非方阵图像,即一般的矩形图像上,扩展了其在图像加密上的应用范围;最后在理论上将二维推广到n维Arnold变换及逆变换.%Arnold transform, due to its periodicity, is widely used in image encryption, however, it is quite time-consuming when the periodicity of the transform is used in deeryption, as a result, anti-Arnold transform algorithm is presented, and based on this, the algorithm is extended into non-square matrix image, general rectangular image, therefore, its application range in image eneryption is expanded. Finally, 2-dimensional Arnold transform is extended to n-dimensional Arnold transform and anti-Arnold transform in theory.【总页数】6页(P16-21)【作者】毛雷波【作者单位】重庆师范大学数学学院,重庆401331【正文语种】中文【中图分类】TP391【相关文献】1.Arnold变换与伪魔方变换在图像置乱中的研究 [J], 李博2.Arnold变换及其逆变换 [J], 吴玲玲;张建伟;葛琪3.非等长Arnold变换图像加密算法研究 [J], 兰红;方毅4.基于混沌随机分块与Arnold变换的彩色图像加密算法研究 [J], 谌贻会5.基于混沌随机分块与Arnold变换的彩色图像加密算法研究 [J], 谌贻会[1]因版权原因,仅展示原文概要,查看原文内容请购买。
基于Arnold变换的混沌轨道遍历性的数字图像加密
叶瑞松;陈永洪
【期刊名称】《网络新媒体技术》
【年(卷),期】2009(030)009
【摘要】提出一种基于Arnold变换的图像加密新算法.利用二维和三维Arnold
变换混沌轨道的遍历性,提出一个新的空间置乱方法.该方法可以改进传统的Arnold 变换置乱方法密钥空间小的缺点,并可以提高置乱度.利用耦合映象格子(CML)映射
对图像灰度值进行扩散,进一步扩大了密钥空间,提高了加密系统的安全性.实验结果表明,本文的加密算法加密效果好,安全性高,可以抵抗统计分析并具有抗JPEG压缩、剪切等攻击的鲁棒性.
【总页数】8页(P14-21)
【作者】叶瑞松;陈永洪
【作者单位】汕头大学数学系,汕头,515063;汕头大学数学系,汕头,515063
【正文语种】中文
【相关文献】
1.基于混沌理论和Arnold变换的X射线数字图像加密算法 [J], 陶亮;张运楚;同玉洁
2.基于Arnold变换和混沌序列映射的数字图像信息隐藏技术 [J], 杨林娟
3.基于混沌随机分块与Arnold变换的彩色图像加密算法研究 [J], 谌贻会
4.基于Arnold变换与混沌系统的位级图像加密 [J], 陈宝文;陈彦安
5.一种基于Arnold变换和混合混沌的图像加密算法 [J], 李琳慧;刘胜杰
因版权原因,仅展示原文概要,查看原文内容请购买。
arnold变换原理
Arnold变换原理
Arnold变换是一种位置变换算法,可以将任意点从一个空间位置转变到另一个空间位置。
该算法对空间中所有点进行变换,并希望变换后保留数据的整体特征。
Arnold变换是一种非线性变换,维数不受限制,属于几何变换之一。
它可以使用一个简单的线性函数进行变换,可以将一个空间中的所有点变换到另一个空间中,同时保留整体的特征。
它的基本原理是将样本数据转换成另一个更容易处理的空间,在这个空间中,样本数据更有意义,而不需要很多计算能力。
Arnold 变换就是使用这种算法进行位置转换的方法。
它的核心是所谓的Arnold矩阵,这是一个m×m矩阵,其中m为样本空间的维数,Arnold矩阵每行每列只有一个1,而其余元素都是0.将这个矩阵乘以原始样本向量的转换,即可将原始样本变换到更容易处理的空间。
Arnold变换的结果是一个有序的空间,它可以更容易地处理和分析样本,而不需要进行大量的计算,从而节省时间,提高效率。
因此,该变换算法可以用于机器学习,模式识别等领域,以改善分析效率。
- 1 -。
图像保密通信技术之Arnold 变换
一、作业目的
1.利用Matlab 实现数字图像Arnold 变换的置乱及恢复。
2.深入学习通讯保密技术,进一步了解图像保密通讯技术。
3.向大家展示实现图像保密技术的方法和技术。
二、作业介绍
近年来,随着网络带宽和速度的极大提高,多媒体数据特别是数字图像的流传和使用越来越广。
而人们对安全性和隐私的也愈发关注,图像加解密技术得到了极快地发展。
在机要、军事、政府、金融和私人通信中,数字图像所占的比例越来越大,它所承载的信息的安全成为当前人们关心的焦点。
如何确保基于网络的图像/视频信息的安全,是当前信息处理技术领域的亟待解决的难点和研究热点之。
本次作业主要研究Matlab 实现数字图像Arnold 变换的置乱及恢复。
置乱技术是一种图像加密技术,它利用数字图像具有的数字阵列的特点,搅乱图像中像素的位置或颜色使之变成一幅杂乱无章的图像,从而达到无法辨认出原图像的目的,可用于数字图像水印的预处理和后处理过程。
置乱过程不仅可以在数字图像的空间域上进行,还可以在其频率域上进行。
常见置乱方法有Arnold 变换、幻方变换、Hilbert 曲线、Conway 游戏、广义Gray 码变换、仿射变换、正交拉丁方变换等。
1. 置乱技术的特点及优点:
置乱技术具有以下特点:置乱技术一般来说具有周期性;置乱变换之后的图像大小不发生改变,直方图不变,只是打乱图像各像素的次序;置乱技术是可逆变换,水印在提取后需要进行置乱变换的逆变换。
对水印进行置乱处理的优点:
1)采用置乱技术的合法使用者可以自由控制算法的选择、参数的选择以及使用随机数技术,从而使非法使用者难以破译图像内容,即可以提高水印信息的安全性。
2)置乱技术可以分散错误比特的分布, 提高数字水印的视觉效果从而增强其鲁棒性。
2. Arnold 变换及其Matlab 实现
Arnold 变换是Arnold 在遍历理论研究中提出的一种变换,俗称猫脸变换,即“cat mapping ”。
根据所选择不同的相位空间可分为二维、三维、四维直至N 维的Arnold 变换。
本文针对的研究对象因为是二维图像故采用的是二维Arnold 变换。
其定义为:
其中,(x, y )是原图像的像素点,(x ’,y ’)是变换后新图像的像素点,n 是图像阶数,即图像的尺寸大小,一般多为正方形图像。
由于Arnold 变换具有周期性,因此可利用其周期性Period 来对图像进行反变换,即在水印嵌入过程中可将水印置乱次数作为密钥key ,再进行水印嵌入,当水印提取出来时,再将其继续置乱(Period —key)次即可使其恢复至原图。
这就是利用Arnold 的正变换来进行的置乱恢复方案。
由于这种方案用到了Arnold 周期性,如果置乱次数key 较小而周期较大时,就比较浪费时间。
这里,我们对二维Arnold 的反变换进行了Matlab 实现, 在恢复时只需根据密钥key ,置乱()'11mod '12x x N y y ⎛⎫⎛⎫⎛⎫= ⎪ ⎪⎪⎝⎭⎝⎭⎝⎭
相同的次数:key次便可恢复出原水印图像,从而大大减少了置乱处理的时间,且也不像利用正变换恢复那样需要先进行周期计算,省去麻烦的一步,提高了效率。
在实际情况中,我们应以处理时间最短为准则,根据置乱密钥来自由选择正、反变换策略恢复图像。
三、作业过程
1.Arnold变换
打开Matlab软件,新建一个M—file ,在里面打入如下代码:
function Arnold(Image,key)
%图像数值矩阵Arnold转换函数
%key: 图像需要变换迭的次数
%M:转换后图像数据矩阵
if nargin<2
disp('请按程序的输入参数格式输入参数!!!');
return;
end
%将Q赋值给M,计算Q的大小
Q=imread(Image);
M = Q ;
Size_Q = size(Q);
%Arnold转换
n = 0;
K = Size_Q(1);
M1_t = Q;
M2_t = Q;
for s = 1:key
n = n + 1;
if mod(n,2) == 0
for i = 1:K
for j = 1:K
c = M2_t(i,j);
M1_t(mod(i+j-2,K)+1,mod(i+2*j-3,K)+1) = c;
end
end
else
for i = 1:K
for j = 1:K
c = M1_t(i,j);
M2_t(mod(i+j-2,K)+1,mod(i+2*j-3,K)+1) = c;
end
end
end
end
if mod(key,2) == 0
M = M1_t;
else
M = M2_t;
end
imwrite( double(M)/255,strcat( 'Arnold_',num2str(key),'_',Image ),'bmp' );
imshow(M);
然后保存为Arnold.m并运行,然后随便找一个图片,放在D:\MA TLAB7\work文件夹里,而后在Matlab窗口的Command Window里按照格式Arnold(Image,key)输入Arnold('001.bmp',1)回车,这是1次Arnold变换,可以改变key的值来改变变换次数,如如下图:
原图:1次Arnold变换2次Arnold变换
2.Arnold反变换
再新建一个M—file ,在里面打入如下代码:
%文件名:FanArnold.m
%函数功能:本函数将完成对按Arnold置换策略进行置乱的图像的置乱恢复
%输入格式举例:FanArnold('lena.bmp',3)
%参数说明:Key为置乱控制密钥
function FanArnold(Image,key)
[X,map]=imread(Image);w1=X;w0=double(w1)/255;w1=w0;subplot(2,2,3);
imshow(w1,[]);title('待恢复的图像'); Size_X = size(X);n=Size_X(1); %将图像的阶数赋值给n
for k=1:key
for x=1:n
for y=1:n
x1=2*x-y; y1=y-x; x2=2*x-y-n;y2=n+y-x;
x3=n+2*x-y; y3=y-x; x4=2*x-y; y4=n+y-x;
if(x1<n)&(x1>=0)&(y1<n)&(y1>=0)
if x1==0x1=n;end;
if y1==0y1=n;end;
w1(x1,y1)=w0(x,y);
elseif(x2<n)&(x2>=0)&(y2<n)&(y2>=0)
if x2==0x2=n;end;
if y2==0y2=n;end;
w1(x2,y2)=w0(x,y);
elseif(x3<n)&(x3>=0)&(y3<n)&(y3>=0)
if x3==0x3=n;end;
if y3==0y3=n;end;
w1(x3,y3)=w0(x,y);
else
if x4==0x4=n;end;
if y4==0y4=n;end;
w1(x4,y4)=w0(x,y);
end
end
end
w0=w1;
end
subplot(2,2,4); imshow(w0,[]); title('置乱反变换后的原图');
然后保存为FanArnold.m并运行, 在Matlab窗口的Command Window里按照格式Fan Arnold(Image,key)输入并回车,
如图:输入FanArnold('Arnold_1_001.bmp',1)将一次Arnold变换所置乱的图像恢复
可以看到只要知道密钥key 就可利用这个新程序可以将杂乱无章的图形还原出来。
假如你不知道置乱的次数key 你就没有办法将图像还原,
如果输入FanArnold('Arnold_1_001.bmp',5)得到如下图形:
这要你就无法恢复出原图了,这样就大大的保证了图像的保密性。