基于MATLAB的混沌序列图像加密算法的研究的开题报告
基于混沌系统的图像加密技术研究

基于混沌系统的图像加密技术研究混沌系统是一种具有无序、随机和不可预测性质的非线性动力学系统,其在密码学中已被广泛应用于消息加密、图像加密、身份验证等领域。
其中,基于混沌系统的图像加密技术可以实现在保持加密数据安全性的同时,保留了图像的视觉效果,因此更适用于图像通信和存储方面。
一、混沌系统的基本原理混沌系统是一种迭代映射动力学系统,在非线性条件下,其状态会随时间变化而呈现出随机、无序、分岔和周期皓等性质。
混沌系统可以用数学模型来描述,其中最著名的混沌系统是洛伦兹系统,它用于描述大气科学中的对流流体的运动。
依据混沌系统的特性,现代密码学发展了一系列混沌加密算法,其中最为常用的是混沌置换和混沌流密码。
混沌置换算法是一种基于迭代映射的分组密码算法,随机的迭代次数和初始条件可用于扰乱图像像素,从而达到加密的目的。
混沌流密码则是利用混沌序列产生伪随机数流,用于对原始数据进行加密。
二、基于混沌系统的图像加密技术图像加密技术是在数字图像传输和存储时必不可少的技术手段。
其中,基于混沌系统的图像加密技术相比于传统的加密技术,更适用于图像加密,具有快速、高效、安全等优势。
下面将从两个方面介绍基于混沌系统的图像加密技术。
1、基于混沌置换的图像加密技术混沌置换算法将迭代映射应用在了像素排序上,通过对图像像素位置的随机变换,来实现混沌加密。
将图像像素坐标变换为一个混沌序列,再通过混沌序列的迭代计算,洛伦兹混沌序列产生了一个随机序列,用于对图像的像素进行混沌置换,从而实现图像的加密。
具体的实现过程为:首先,将图像转化为一维数组,并设置一组初始条件。
然后,通过迭代计算混沌序列,从而得到像素位置的一个置换序列;接着,采用该序列对图像像素进行混淆;最后,将加密后的像素重新排列成二维矩阵,即完成了图像加密。
2、基于混沌流密码的图像加密技术混沌流密码是利用混沌序列产生伪随机数流,用于对原始数据进行加密的密码算法。
混沌流密码包括两个主要部分:混沌序列发生器和异或加密器。
基于混沌的图像加密算法研究

基于混沌的图像加密算法研究图像加密算法是信息安全领域中的重要研究方向之一,它通过对图像进行加密和解密操作,实现保护图像隐私和安全传输等目的。
本文将重点探讨基于混沌的图像加密算法的研究,分析其原理、优势和应用场景。
首先,我们来了解一下混沌理论。
混沌理论是一种非线性动力学系统的研究分支,其在计算机科学和密码学领域有着广泛的应用。
混沌系统具有随机性、不可预测性和灵敏性等特点,这使得混沌可作为图像加密算法的基础。
基于混沌的图像加密算法主要包括两个部分,即混沌映射和置乱操作。
混沌映射是将图像像素映射到一个混沌的迭代序列上,而置乱操作则通过对混沌序列进行重新排列实现对图像的置乱加密。
下面我们将详细介绍这两个部分。
首先是混沌映射。
混沌映射通常选取经典的混沌系统,如Logistic映射和Henon映射等作为基础。
这些映射具有高度的不可预测性和混沌性质,适用于图像加密。
在加密过程中,首先将图像像素值归一化到[0,1]的范围内,然后通过混沌映射将像素值映射到一个混沌序列上。
通过迭代映射操作,可以得到一个与原图像无关的混沌序列。
这个序列将作为后续置乱操作的密钥,确保了加密的随机性和安全性。
接下来是置乱操作。
在加密过程中,通过对混沌序列进行重新排列,实现对图像像素的混乱置乱。
最常用的方法是基于Arnold置乱算法和Baker映射置乱算法。
Arnold置乱算法是一种二维置乱算法,通过对图像像素的行列位置进行迭代映射操作,实现像素位置的混乱。
而Baker映射置乱算法则是通过对图像像素进行乘积操作,实现图像像素值的混乱。
这两种置乱算法具有较高的随机性和不可逆性,能够有效地保障图像的安全性。
基于混沌的图像加密算法具有以下优势:第一,混沌映射和置乱操作具有高度的随机性和不可线性特征,使得加密过程中产生的密钥和置乱后的图像难以被破解和恢复。
这大大增强了图像的安全性。
第二,基于混沌的图像加密算法具有较好的抗攻击性。
混沌系统的不可预测性和随机性能够防止统计分析和密码分析等攻击手段。
混沌密码与数字图像加密应用

cout<<"How many logistic sequence do you wanna output?"<<endl;
cin>>k;
while(k<1||k>N)
{
cout<<"Input a positive integer from 1 to "<<N<<":"<<endl;
{int i=0;
float temp_1,temp_2,temp_3;
temp_1=x0;
while(k)
{
result[i++]=temp_1;
temp_2=1-temp_1;
temp_3=u*temp_1;
temp_1=temp_2*temp_3;
k--;
}
}
int main()
{
int i,k;
imhist(uint8(Ximage));
title('原图像的直方图');
figure(4)
imhist(uint8(Yimage));
title('加密之后的直方图');
%%置乱度分析
Yimage=double(Yimage);
sx=sum(sum((Ximage-256*rand(M,N)).^2));
实验项目与实验报告(1)
学科:信息与网络安全学号:141姓名:羊波时间:11月3日
实验项目:混沌密码与数字图像加密应用、信息隐藏
基于混沌理论的数字图像加密算法的研究

哈尔滨理工大学硕士学位论文基于混沌理论的数字图像加密算法的研究姓名:孙广明申请学位级别:硕士专业:控制理论与控制工程指导教师:吕宁20090301哈尔滨理T人学下学硕lj学位论文基于混沌理论的数字图像加密算法的研究摘要随着计算机技术和网络技术快速发展,信息在社会中的地位和作用越来越重要,网络信息安全与保密问题显得愈发重要和突出,信息安全已成为信息化社会重要与关键问题之一。
数字图像作为一种特殊的数字信息的存在方式,如何有效的保证其数字信息的机密性、完整性、可用性、可控性和不可抵赖性是当前信息安全技术研究领域的重要研究方向。
混沌现象是非线性动态系统中出现的确定性的伪随机过程,其具有非周期性、遍历性、伪随机性及对初值的敏感性,与加密系统二者之间存在着许多相似之处,目前研究基于混沌理论的保密通信、信息加密和信息隐藏技术是非线性科学和信息科学两个领域交叉融合的热点问题之一。
本文重点研究了数字图像的信息安全问题,着重研究了数字图像加密的方法,论文的主要工作及成果如下:1.在对密码学和混沌系统基本理论进行讨论分析的基础上,重点研究了密码学和混沌系统的联系及构造混沌分组密码的方法。
2.对定义在(O,1)上的混沌移位映射特性进行了分析,将混沌序列引入图像加密算法中,据此提出一种基于混沌移位映射的数字图像加密算法,通过实验验证了该算法的安全性。
3.对于混沌系统数字化后引起的混沌性能下降,构造了一种结合Logistic映射和分段线性混沌映射(PLCM)及定义在(0,1)上的移位映射设计了一个多混沌系统的随机数发生器,具有良好的随机性和在有限精度实现条件下周期大的特点;基于提出的混沌随机数发生器提出了一种分组图像加密算法,该算法具有较强的鲁棒性及抗攻击免疫能力,加密图像在部分受损或缺失后,仍有较好的恢复效果。
4.将混沌系统和分组密码链接(CBC)模式相结合,提出一种数字图像自适应加密算法。
利用图像本身所携带的信息实现图像自适应加密,同时克服了混沌系统数字化用于图像加密系统带来的周期性。
混沌密码与数字图像加密应用

实验项目与实验报告(1 )学科:信息与网络安全学号::羊波时间:11月3 日DD=sy/sx %置乱度global M;global N;global Ximage;global Yimage;key1=input('请输入密钥key1:');key=4;for(i=1:M)for(j=1:N)key1=key*key1*(1-key1);a(i,j)=key1;endendkey2=input('请输入密钥key2:');for(i=1:M)for(j=1:N)key2=key*key2*(1-key2);b(i,j)=key2;endendx=0.4*a+0.6*b;e=round(x*256);tt=0.01;Zimage=(Yimage-(1-tt)*e)/tt;figure(5)imshow(Zimage,[]);加密过程:①首先将要加密的图片test.gif保存在d盘中,如下图1所示:图1存在d盘中的test图片②打开Matlab软件并把上面的加密程序输入软件环境窗口,如下图2所示:图2在Matlab中输入的编程③程序输入完成后,按回车键,程序会运行得出5图片,分别为加密前的原图和加密后的图片、加密前的直方图和加密后的直方图。
如下图3、图4、图5、图6所示:图3加密前的原图图4加密后的图片图5加密前的直方图图6加密后的直方图说明:加密后的灰度直方图分析可以用来衡量加密算法的扰乱性。
上图3、图4、图5、图6是加密前后的图像以及它们的直方图的对比。
可见,加密后的直方图呈均匀分布,未保留任何明文信息。
图6加密后的直方图的图像越均匀说明混沌效应越好,上图6总体上来说是均匀的,只是在编程的时候考虑的只是黑白色的点,所以直方图看起来全部的点不是绝对的均匀。
解密过程:⑦如果想得到原图(解密),必须在MATLAB界面窗口输入两个密钥,“请输入密匙key1:0.1 请输入密匙key2:0.2”;如下图7所示:图7解密之后得到的原图从上图可以看出,加密后的图像没有留下原图的痕迹,而解密后的图像看不出差别,此方法加密效果良好。
图像加密中测试混沌系统性能的0-1测试0-1Test方法与MATLAB实现代码

图像加密中测试混沌系统性能的0-1测试0-1Test⽅法与MATLAB
实现代码
因为博主学习与实验的原因,需要对混沌系统的性能进⾏测试,⽆奈代码有问题,于是上⽹后找到了0-1测试的代码,经过调试成功运⾏。
⽤到的⽅法与0-1测试的原理在⽂献:The 0-1 Test for Chaos: A Review中写了,感兴趣可以⾃⾏了解。
z1test⽤法
以Logistic:X(n+1)=4u(1-Xn) 为例,⾸先给定X0=0.1 u=0.8,将Logistic迭代200次后将⽣成的混沌序列传⼊z1test这个函数,返回的值即为Logistic在Xo=0.8的情况下,u=0.8时0-1测试的数值。
那么我们只需要将u在想要取值的范围内取个遍,每个u都⽣成混沌序列带⼊z1test,记录返回点的位置即可得到u在给定范围内0-1Test的结果下⾯上代码,以X0=0,1 ,u的范围为[0,1],步长0.01
k0=0:0.001:1;%u的范围
N=200;%每个参数迭代次数
for j=1:length(k0)
k=k0(j);
AoG(1)=0.1;%初始值
for ii=1:N
AoG(ii+1)=4*k*AoG(ii)*(1-AoG(ii));
end
value_Log(j)=z1test(AoG);
end
plot(k0,value_Log,'b');
xlabel('µ');ylabel('K');
Cite As。
基于混沌的数字图像加密算法的研究

t(10)
t(9)
t(2)
t(0)
t(4)
t(3)
t(12)
t(7)
t(8)
t(6)
最后将向量t(i)恢复成图像矩阵,得到加密后的图像。
仿真实验结果及分析
1. 密钥敏感性分析
原始图像
加密图像 x0=0.74356,y0=0.39284
解密图像 x0=0.74357,y0=0.39283
解密图像 x0=0.74356,y0=0.39283
原始图像k3加密图像k20加密图像灰度直方图一基于logistic映射的混沌图像加密算法加密流程图时logistic映射处于混沌状态原始图像加密后图像混沌序列像素值置乱算法像素位置置乱算法logistic映射混沌序列具有遍历性对初值具有敏感性混沌序列具有随机性将原始图像进行分割平均分割为16块正方形小图像所以每块小图像中有n4n4个像l10l11l12l13l14l15103n41l10l11l12l13l14l15103n41k10k11k12k13k14k15103n41x15x14置换函数第一步像素值置乱像素值置乱之前的序列像素值置乱之后的序列按照置换地址矩阵t将k向量中元素进行相应的位置置换k10k11k12k13k14k15y10y11y12y13y14y15y10y11y12y13y14y15t10t11t12t13t14t15第二步像素位置置乱用冒泡法将这16个实值按照从大到小顺序进行排序由yj在y1j中的位置得到置换地址矩阵ti排序之后的像素序列排序之前的像素序列最后将向量ti恢复成图像矩阵得到加密后的图像
加入椒盐噪声的图像
加入高斯噪声的图像
解密图像
解密图像
二、基于二维混沌映射的图像加密算法 算法的原理
图像增补算法的原理
基于混沌理论的图像加密技术研究

基于混沌理论的图像加密技术研究随着数字技术的发展,人们越来越依赖数字图像来实现信息的传递和存储,而数字图像的信息安全性也变得越来越重要。
因此,图像加密技术逐渐成为了保障数字信息安全的一个重要手段。
其中一种常用的加密方法是基于混沌理论的图像加密技术。
混沌是指非线性动力学中的一种现象,其特点是系统的状态随时间的推移呈现无规律、复杂、难以预测的特性。
混沌理论被广泛应用于信息加密领域,可以通过自身的无规律性有效保护图像信息。
基于混沌理论的图像加密技术的主要思路是将其分为两个步骤:加密和解密。
加密过程中,通过混沌发生器产生密钥流,再对原始图像进行置乱和扰动操作,最后加上密钥流得到密文。
解密过程中,则是通过同样的密钥流,反向进行置乱和扰动操作得到原始图像。
在实际应用中,混沌发生器的选择十分重要。
目前,常用的混沌发生器有一维混沌映射发生器和二维混沌映射发生器。
一维混沌映射发生器可以用于生成一维的密钥流序列,例如Logistic映射发生器、Henon映射发生器、Tent映射发生器等。
二维混沌映射发生器则可以用于生成二维矩阵型的密钥流序列,例如Arnold映射、Cat映射等。
其中,Arnold映射是一种经典的二维混沌映射发生器,其主要实现过程是先进行像素重排,再进行置换操作。
这种操作能够在不改变图像内容的情况下,使得图像的灰度值位置发生随机变化。
同时,其具有一定的可加密性,可以通过调整参数提高其加密强度。
除了混沌发生器的选择以外,置乱和扰动操作的设计也是图像加密技术中的重要问题。
置乱操作一般包括像素重排、行列置换和旋转等操作,其目的是将原始图像的像素位置打乱,让其看起来像是被随机排列过的。
扰动操作则是对图像进行一系列的变换操作,使得图像具有一定程度的随机性,从而增加了加密的难度。
常用的扰动操作包括灰度变换、像素异或以及高斯噪声添加等。
值得注意的是,虽然基于混沌理论的图像加密技术具有一定的优势,但其其也存在着一些缺陷。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
吉林农业大学
本科毕业设计开题报告
课题名称:基于MATLAB的混沌序列图像加密算法的研究
学院(系):信息技术学院
年级专业:2009级电子信息科学与技术2班
学生姓名:XX
指导教师:刘媛媛
完成日期:2013年2月27日
目录
一、设计目的及意义 (3)
二、研究现状 (3)
三、设计内容 (3)
四、开发环境 (3)
五、分析设计 (3)
1、设计要求 (3)
2、设计原理 (3)
3、涉及到的程序代码 (4)
4、主要思想 (6)
六、结果及分析 (6)
1、运行示例 (6)
2、结果评估 (8)
七、参考文献 (9)
八、研究工作进度 (10)
一、设计目的及意义
熟练使用matlab运用matlab进行编程,使用matlab语言进行数据的隐藏加密,确保数字图像信息的安全,混沌序列具有容易生成,对初始条件和混沌参数敏感等特点,近年来在图像加密领域得到了广泛的应用。
使用必要的算法将信息进行加解密,实现信息的保护。
二、研究现状
随着Internet技术与多媒体技术的飞速发展,数字化信息可以以不同的形式在网络上方便、快捷地传输。
多媒体通信逐渐成为人们之间信息交流的重要手段。
人们通过网络交流各种信息,进行网上贸易等。
因此,信息的
安全与保密显得越来越重要。
信息的安全与保密不仅与国家的政治、军事和外交等有重大的关系,而且与国家的经济、商务活动以及个人都有极大的关系。
随着信息化社会的到来,数字信息与网络已成为人们生活中的重要组成部分,他们给我们带来方便的同时,也给我们带来了隐患:敏感信息可能轻易地被窃取、篡改、非法复制和传播等。
因此信息安全已成为人们关心的焦点,也是当今的研究热点和难点。
多媒体数据,尤其是图像,比传统的文字蕴涵更大的信息量,因而成为人类社会在信息利用方面的重要手段。
因此针对多媒体信息安全保护技术的研究也显得尤为重要,多媒体信息安全是集数学、密码学、信息论、概率论、计算复杂度理论和计算机网络以及其它计算机应用技术于一体的多学科交叉的研究课题。
三、设计内容
使用混沌序列图像加密技术对图像进行处理使加密后的图像
四、开发环境
MATLAB® & Simulink® Release 2010a windows7环境
五、分析设计
1.实验要求
使用matlab将图像信息隐藏,实现信息加密。
2.设计原理
运用异或运算将数据进行隐藏,连续使用同一数据对图像数据两次异或运算图像的数据不发生改变,利用这一特性对图像信息进行加密保
护。
用户输入的密码必须在0~1之间任何一个数据进行加密,并且加密
的程序与解密的程序输入的密码必须一致才能正确解密。
3.涉及到的程序代码
加密程序代码如下:
clear;clc;
x=imread('','bmp'); %读取图像信息
[a b c]=size(x); %将图像的大小赋给a b c
N=a*b; %定义变量N并赋值
m(1)=input('请输入密钥: '); %用户输入加密密码
disp('加密中...'); %显示提示信息
for i=1:N-1 %进行N-1次循环
m(i+1)=4*m(i)-4*m(i)^2; %循环产生密码
end
m=mod(1000*m,256); %1000*m除以256的余数
m=uint8(m); %强制转换为无符号整型
n=1; %定义变量n
for i=1:a
for j=1:b
e(i,j)=bitxor(m(n),x(i,j)); %将图像信息藏在e(i,j)矩阵中进行异或运算
n=n+1;
end
end
imwrite(e,'加密后的','bmp'); %显示解密成功提示信息
disp('加密成功');
winopen('加密后的'); %显示加密后图片
解密程序代码:
clear;clc;
x=imread('加密后的','bmp'); %读取图像信息
[a b c]=size(x); %将加密后图像的大小赋给a b c
N=a*b;
m(1)=input('请输入密钥: '); %用户输入预设加密密码
disp('解密中');
for i=1:N-1 %进行N-1次循环
m(i+1)=4*m(i)-4*m(i)^2; %循环产生原密码
end
m=mod(1000*m,256);
m=uint8(m);
n=1;
for i=1:a
for j=1:b
e(i,j)=bitxor(m(n),x(i,j)); % m(n)xor(m(n)xor x(i,j))==x(i,j)不带进位加法半加运算
n=n+1;
end
end
imwrite(e,'解密后的','bmp'); %将解密的图像输出命名为
disp('解密成功'); %显示解密成功提示信息
winopen('解密后的'); %显示解密后图片
4.主要的思想
图像信息生动形象,它已成为人类表达信息的重要手段之一,网络上的图像数据很多是要求发送方和接受都要进行加密通信,信息的安全与保密显得尤为重要,因此我想运用异或运算将数据进行隐藏,连续使用同一数据对图像数据两次异或运算图像的数据不发生改变,利用这一特性对图像信息进行加密保护。
六、结果及分析
1.运行示例
加密前的原图如下所示:
加密后的图像如下图:
运行程序是输入的密码:
运行结果如下:
加密后图片如下:
解密后的图像如下图:
运行解密程序输入加密时的密码:
解密后的图片:
2.结果评估
由程序的运行结果来看,原图被加密后在显示出来,已经无法辨别其内容,实现了图像数据的隐藏,这种混沌序列方法对图像数据的加密是十分有用,实现了信息的保密,在网络传输中能够很好地保护图像数据不被第三方轻易获取其内容,实现数据的隐藏保护。
六、参考文献
[1] 闵连权.一种实用的图像加密算法[J].河南郑州:信息工程大学测绘学院.2005年10月
[2] 图像加密技术研究背景意义及现状[K]赵晓宇.图像加密技术及其安全性估计[D].浙江大学,
[4]廖晓峰,肖迪,陈勇,向涛.混沌密码学及其应用.北京:科学出版社,
[5]卢开澄.计算机密码学——计算机网络中的数据保密与安全(第二版).北京:清华大学出版社,1998,210~212
[6] 舒斯特.混沌学引论.成都:四川教育出版社,1994
[7]刘式达等.自然科学中的混沌和分形.北京:北京大学出版社,2003
[8]吕金虎等.混沌时间序列分析及其应用.武汉:武汉大学出版社,2002
[9]Rossler O equation for continuous chaos. A,1976,57:397-398
[10]Chen G,Ueta T,Y et another chaotic attractor .Int. Bifurcation and chaos,1999,9:1465-1466
[11]Hale J,Verduyn L to functional differential equations. New York:Springer,1993
[12]韦鹏程,张伟,杨华千.一种基于共轭混沌映射的图像加密算法.计算机科学,2006,11:237-240
[13]王永,杨德刚,韦鹏程,张伟,杨华千.一种基于复合离散混沌系统的对称图像加密算法.计算机科学,2006,33(12):86-90
[14]廖晓峰,张伟,韦鹏程,杨华千等.对一种基于混沌映射的对称图像加密算法的改进.计算机科学,2007,34(12):248-251
[15]Arto ,1990
[16]Man Young Rhce. Cryptography and Secure Book
[17] Jianliang Zhu, Hongchao Zhao. Five- Dimensional Chaotic System and Its Circuitry Implementation[C]. 2nd International Congress on Image and Signal Processing, TianJin, 2009: 4232 - 4236( EI)
[18]韩峰,唐驾时.一个五维受控混沌系统的动力学行为[J].动力学与控制学报, 2010, 8( 3) : 205 - 209
七、研究工作进度
(1)工作进程安排:
2月10日-2月28日:办理毕业设计题目变更手续,阅读文献,收集资料,确立初步设计方案,完成开题报告。
3月1日-3月31日:完成设计方案,撰写论文初稿。
4月1日-4月30日:完成毕业设计撰写论文,修改格式,打印论文。
5月1日-5月20日:指导教师进行检查评分,进行论文评阅、论文答辩。
(2)我目前的工作进度是:
○1确定了毕业设计的题目,初步讨论的设计方案的可行性及大致方法步骤。
○2阅读了相关的文献和资料,对图像加密技术有了进一步的认识,重点浏览了图像加密的原理和几种方法。
○3阅读资料,确定加密方法即基于混沌理论的密码技术加密算法体制。
○4撰写开题报告,完成开题报告。