(完整版)基于MATLAB的混沌序列图像加密程序

合集下载

一种基于复合混沌序列的图像加密方法

一种基于复合混沌序列的图像加密方法

一种基于复合混沌序列的图像加密方法
基于复合混沌序列的图像加密方法是一种高效的数字图像加密方法,它可以有效地保护传输或存储的数字图像。

该加密方法主要是在杂质密码理论中引入复合混沌序列,而不是单纯地使用传统的密码解密机制来保护数字图像。

复合混沌序列是一种复合的随机数序列,是一种仿真混沌系统的结果。

它的混沌特性能够为加密技术提供极其有效的加密机制,包括一种新颖的加密技术——“M-R码”,它可以将一个复合混沌序列映射到一个M-R码,这种方法可以替代传统密码解密机制,更有效地保护数字图像。

基于复合混沌序列的图像加密方法同时利用了像素值混沌映射和混沌表示实现加密。

像素值混沌映射可以完全替代传统的密码解密机制,这样可以有效地实现加密任务。

混沌表示的加密算法使用复合混沌序列的性质,对图像的连续像素数据进行打乱,以此产生一个混沌表示的加密图像。

最后,基于复合混沌序列的图像加密方法采用了一种新的“门限混沌码”方法。

这种方法使用门限混沌码将已加密的图像像素值重新组合成一个新的加密图像,这样可以在更大程度上混沌化图像,并避免有水印痕迹可见。

总之,基于复合混沌序列的图像加密方法是一种高效且安全的数字图像加密方法,它能够有效保护数字图像的安全,使得攻击者无法获得足够的信息来破解加密图像。

基于混沌序列的图像加密解密算法_陈永红

基于混沌序列的图像加密解密算法_陈永红

张图像的大小为M×N个像素,其中 0 ≤ i ≤ M −1 , 0 ≤ j ≤ N −1 。 2.1 加密算法设计 Step 1 输入 M , N ,原始图像 I R = ( i , j , g ( i , j )) 。 Step 2 输入一维混沌映射式(2)的初始值 x 0 , 设置参数
a ,m的值和迭代次数n的值,用混沌映射(2)生成混沌序列:
图 1 加密解密过程
其中,对于加密解密过程的混沌系统是完全一样的。如 图1混沌系统式(2)的初始值 x 0 ,参数 a 、m的值和迭代次数 n的值对于加密解密处理过程完全一样,从而保证加密前的 图像和解密后的图像完全一致,即完全还原。
这一步利用第2步生成的混沌序列将图像的每列像素下 移(循环移动)变换到该列的另一位置,像素的灰度值不变。 Step5 得到加密图像的各个像素的新的灰度值 g ′(i , j ) , 生成加密图像 I E = ( i , j , g ′( i , j )) 。 Step6 终止算法。 2.2 解密算法设计 Step1 输入M,N以及加密图像 I E 。 Step2 这一步与加密过程第二步正好一样,输入一维混 沌映射式(2)的初始值 x 0 ,设置参数 a 、m的值和迭代次数n 的值,用混沌映射式(2)生成混沌序列: x0 , x1 , x2 ,L , xM + N −1 。 Step3
—104—
列加密图像。而本文用混沌系统式(2)生成的混沌序列直接 加密图像,该算法更简洁。 设原始图像为 I R ,我们用 ( i , j , g ( i , j )) 表示这一张图像,
(i , j ) 为某一像素坐标值, g(i, j) 表示该像素的灰度值, 这一
for i = 0 to M − 1 X i = xi mod N for j = 0 to N − 1 if j − X i ≤ N (i, j, g (i , j )) → (i, j − X i + N , g (i, j )) else (i, j, g (i , j )) → (i, j − X i , g (i, j )) end end

基于混沌系统的图像加密算法

基于混沌系统的图像加密算法

、St t y La o ao y i aeKe b r tr
(AD CG 一2h jan £ ei g
。i t u e。 n sr ae ( m i t r l du t i ,r… ,、Cmir / t ' t o 一Zhel jal J g
Ab ta t s r c
20 0 2年 2月
基 于 混 沌 系统 的 图像 加 密 算法
孙 鑫一 易耳 孙托 -磋
( 海 大学 饥 电工 崔 皇动 化学 院 ( 讧 上学 C ( 日 家重 皇宴 鞲 室 渐 AD S ’浙 江 大 学 II 制 牲 研 究 于 : 。I ! 上海 20 7 ) 0 0 2 1C 2 0 7 杭 州

丁 空 l 域 算 法 . 献 [ ] 究 _ 2和 非 线 性 变 换 , 高 维 1 日 J 文 6研 即 A n l 换 和 Fb n ci 变 换 ; 析 了变 换 的 周 期 , rod变 i ac— o Q 分 井 针 对 数 字 图 像 的 灰 度 空 间 讨 论 了 2种 变 换 的 置 乱 作 用. 本 文结 合上 述 思 想 ‘ , 利 用 混沌 动 力 学 的 特 点 , 出 并 提 了基 于混 沌 序 列 的 图像 加 密尊 法 .
Ke r c os,c o e ue es,s r m bln ” y wo ds ha ha s s q nc ca ig
f ㈣
a n ,en r pton,DCT “0 cy i
町以 作 为 密 钥 的一 部 分 , 有 较 好 的 加密 效 果 . 具 这 算 缓 属
1 引
杭 4 3 C 2 ・ t 1u 7 l


混沌 序 具 有 容 易 成 、 对 始 条件 敏 感 技 具 备 f噪 甫 的统 汁特 兰 等特 点 混 沌 J 的离 散 璁射 也 具有 L 『 孚列

基于混沌序列的通用数字图像加密算法

基于混沌序列的通用数字图像加密算法

基于混沌序列的通用数字图像加密算法沌序列,然后根据子密钥及图像类型将其转换为无符号整数序列,最后再依次与对应的像素值进行异或运算以实现置换加用评价指标对加密效果与安全性进行分析。

理论分析与实验结果表明,该算法密钥空间大,具有良好的加密效果、安全统计特性,且抗干忧能力较强。

键词 :数字图像加密 ;像素置换 ;混沌序列 ;Logistic 映射Universal Digital Image Encryption Algorithm Base on Chaotic SequenceLU Shou-dong(School of Information and Statisticsof, FiGuangxinanceandUniversity Economics ,Nanning,Guangxi 530003,China ) stract: In order to protect digital aimage's universal digitalinformation, image encryption algorithm based on is chaoticpropo sequencetly, according tokey the and the size of image, a chaoticis generated. sequence Then, according to the sub-key and the type of im chaotic sequenceis converted to an unsigned integer sequence. Lastly, pixelwill permutation be realizedby usencryptioning theXOR opera ween the unsigned integer sequence and each turn.corresponding The effect piofxel encryption value inis and al s osecurity analyzed by u evaluation index. Theoretical analysis and experimental results show that the algorithm has aeff large space of key, a good encryptionrity and statistical characteristics,a strong anti -anoisebility.words: digital image encryption; pixel permutation; sequenc; Logistice chaoticmapping引言可改变图像的直方图,因此安全性更好。

(完整版)基于MATLAB的混沌序列图像加密程序

(完整版)基于MATLAB的混沌序列图像加密程序

设计题目:基于MATLAB的混沌序列图像加密程序一.设计目的图像信息生动形象,它已成为人类表达信息的重要手段之一,网络上的图像数据很多是要求发送方和接受都要进行加密通信,信息的安全与保密显得尤为重要,因此我想运用异或运算将数据进行隐藏,连续使用同一数据对图像数据两次异或运算图像的数据不发生改变,利用这一特性对图像信息进行加密保护。

熟练使用matlab运用matlab进行编程,使用matlab语言进行数据的隐藏加密,确保数字图像信息的安全,混沌序列具有容易生成,对初始条件和混沌参数敏感等特点,近年来在图像加密领域得到了广泛的应用。

使用必要的算法将信息进行加解密,实现信息的保护。

.设计内容和要求使用混沌序列图像加密技术对图像进行处理使加密后的图像使用matlab将图像信息隐藏,实现信息加密。

三.设计思路1. 基于混沌的图像置乱加密算法本文提出的基于混沌的图像置乱加密算法示意图如图1所示加密算法如下:首先,数字图像B大小为MX N( M是图像B的行像素数,N是图像B的列像素数),将A的第j行连接到j-1行后面(j=2,3, A,M,形成长度为MX N的序列C。

其次,用Logistic混沌映射产生一个长度为的混沌序列{k1,k2,A,kMX N},并构造等差序列D: {1,2,3, A,MX N-1,MX N}。

再次,将所产生的混沌序列{kl, k2. A, kMX N}的M N个值由小到大排序,形成有序序列{k1', k2'. A' kMX N' },确定序列{k1, k2, A, kMX N}中的每个ki在有序序列{k1', k2', A , kMX N' }中的编号,形成置换地址集合{t1 , t2 , A, tM X N},其中ti为集合{1 , 2, A, MX N}中的一个;按置换地址集合{t1 , t2 , A, tM X N}对序列C进行置换,将其第i个像素置换至第ti列, i=1 , 2, A, MX N,得到C'。

基于混沌的图像加密与解密算法研究

基于混沌的图像加密与解密算法研究

基于混沌的图像加密与解密算法研究随着科技的不断发展,网络通信与信息传输已经成为了人们生活中必不可少的一部分。

而在这些通讯过程中,保密性与安全性是必须要考虑的一个因素。

如果信息在传输过程中被他人窃取或篡改,那么造成的后果将是不可估量的。

因此,加密算法就成为了保障信息安全的一个重要手段。

在保障信息安全这个过程中,加密算法的安全性被认为是至关重要的。

一般来说,加密算法的安全性是指在未知密钥情况下,即使攻击者拥有了大量加密数据,也不能破解加密算法,从而获得明文的过程。

而目前基于混沌现象的图像加密算法应用越来越广泛,主要由于其高效、强大的随机性和不可复制性。

那么,什么是混沌?简单来说,混沌是一种在确定性条件下出现的随机性现象。

即体现出完全随机性的样子,但是却有规律可言,具有不可预测性和不可复制性,因此我们可以运用混沌现象进行加密。

基于混沌的图像加密算法,是一种基于混沌现象加密技术的图像保护技术,它通过在两个加密轮中融合Lorenz混沌系统、Arnold变换和置乱加密方式,来保护原始的图像信息。

其优点在于具有高保密性、鲁棒性强、隐藏效果好等优点。

不仅如此,这种加密方式也可以应用于数字音频、视频等数据的加密保护中,使得加密通信具备鲁棒性、隐秘性和可扩展性等特点。

具体来说,基于混沌的图像加密算法的实现可以分为以下几个步骤:第一步是混沌序列生成。

混沌序列的生成是加密算法中最重要的部分,其目的是生成一个不可预测的伪随机序列。

混沌序列通常是由某种混沌系统产生的,其中最常用的混沌系统为Lorenz系统,该系统可以产生不可预测的随机序列。

第二步是Arnold变换。

Arnold变换是一种置换变换,它将原始的图像通过矩阵运算进行重组,使其成为一个加密状态。

通过Arnold变换,原始图像的像素被重新安排在了一个特定的顺序里,从而保证了加密性。

第三步是置换加密。

置换是通过将加密后的图像像素位置进行随机置换来增加加密难度。

原始图像像素的置换序列可以通过混沌序列进行生成,而变换后的图像像素位置可以通过这个序列得到。

基于混沌数列变换的图像加密算法.

基于混沌数列变换的图像加密算法.

基于混沌数列变换的图像加密算法针对现有的数字图像加密算法存在算法复杂、运算成本大以及安全性不高等问题,提出了一种基于混沌数列变换的数字图像加密算法。

该算法通过对Logistic和Hybrid两种不同的混沌序列进行变换,从像素灰度值以及像素位置两方面对图像进行加密。

一、序列及变换1、两种混沌序列混沌序列作为一种伪随机序列由于具有遍历性高、对初值敏感等特性被广泛应用于数字信息的加密中,本文通过对两种混沌序列的不同变换达到图像像素点位置变换和灰度值变换两方面的目的从而实现对数字图像的加密操作。

这两种混沌序列分别是Logistic混沌序列和Hybrid混沌序列。

首先,Logistic序列是混沌系统中很有代表性的混沌映射,它被广泛应用于混沌应用中,其定义如式(1所示,其中初值和参数的设置为O<μ0≤4,0 , k ∈ N ,由此数列所得的混沌序列 xk 在[0 , 1] 之间无规律地震荡变化:第二,Hybrid序列是一种新构造的序列,该序列利用构造的Hybrid混沌映射,通过周期性改变混沌迭代初值来产生混沌伪随机序列。

该映射定义如式(2所示:此映射不但继承了Logistic映射产生方式简单易行和混沌效果理想等特点而且还能增加了混沌系统的安全性。

该映射的参数取值为0 , O , 0 , O , k ∈ N 时产生序列的混沌效果最好,与 Logistic 序列不同的是,此数列的产生值在 [-1 ,1] 间以 x 轴为对称轴震荡变换。

两种混沌系统的相同点是,在初值相差甚微的情况下,当 k 大于一定值时,所得 zt 均会出现很大的差别,这个特点充分体现了混沌系统对初值敏感的特性,使安全性得到了提高。

2、序列变换由于数字图像可以看作是由每一个像素点所组成的一个二维矩阵,能够实现对二维矩阵的变换即可达到对图像的加密目的,因此,本文旨在将上文所得的混沌数列进行矩阵变换来实现对于数字图像每一个像素点的灰度值置换加密和整体图像像素的位置混乱。

基于超混沌序列的图像加密方案

基于超混沌序列的图像加密方案

I ma g e e n c r y p t i o n s c h e me b a s e d O n h y p e r — c h a o t i c s e q u e n c e
ZHONG Ho u — q i a o ,L I J i a n . mi n ,L I N Z h e n — r o n g , W ANG Z h e n 。

a n d k e y ,a n d i t i s s e c u r e w i t h s t r o n g r e s i s t i b i l i t y t o v a r i o u s a t t a c k s ,s u c h a s s t a t i s t i c a l , e x h a u s t i v e a n d d i f f e r e n t i a l a t t a c k s , v e r i ・ f y i n g t h e f e a s i b i l i t y o f t h i s s c h e me .
关 键词 :图像 加 密 ;超 混沌序 列 ;信 息安全 ;保 密通信
中图分 类号 :T P 3 0 9 . 7
文献标 志码 :A
文章 编号 :1 0 0 1 — 3 6 9 5 ( 2 0 1 3 ) 1 0 — 3 1 1 0 . 0 4
d o i : 1 0 . 3 9 6 9 / j . i s s n . 1 0 0 1 - 3 6 9 5 . 2 0 1 3 . 1 0 . 0 5 6
钟厚桥 ,李建 民 ,林振荣 ,王

振。
( 南昌大学 a . 电子信息工程 系;b . 计算机科学与技术系;C . 图书馆 ,南昌 3 3 0 0 3 1 )
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

设计题目:基于MATLAB的混沌序列图像加密程序一.设计目的图像信息生动形象,它已成为人类表达信息的重要手段之一,网络上的图像数据很多是要求发送方和接受都要进行加密通信,信息的安全与保密显得尤为重要,因此我想运用异或运算将数据进行隐藏,连续使用同一数据对图像数据两次异或运算图像的数据不发生改变,利用这一特性对图像信息进行加密保护。

熟练使用matlab运用matlab进行编程,使用matlab语言进行数据的隐藏加密,确保数字图像信息的安全,混沌序列具有容易生成,对初始条件和混沌参数敏感等特点,近年来在图像加密领域得到了广泛的应用。

使用必要的算法将信息进行加解密,实现信息的保护。

.设计内容和要求使用混沌序列图像加密技术对图像进行处理使加密后的图像使用matlab将图像信息隐藏,实现信息加密。

三.设计思路1. 基于混沌的图像置乱加密算法本文提出的基于混沌的图像置乱加密算法示意图如图1所示加密算法如下:首先,数字图像B大小为MX N( M是图像B的行像素数,N是图像B的列像素数),将A的第j行连接到j-1行后面(j=2,3, A,M,形成长度为MX N的序列C。

其次,用Logistic混沌映射产生一个长度为的混沌序列{k1,k2,A,kMX N},并构造等差序列D: {1,2,3, A,MX N-1,MX N}。

再次,将所产生的混沌序列{kl, k2. A, kMX N}的M N个值由小到大排序,形成有序序列{k1', k2'. A' kMX N' },确定序列{k1, k2, A, kMX N}中的每个ki在有序序列{k1', k2', A , kMX N' }中的编号,形成置换地址集合{t1 , t2 , A, tM X N},其中ti为集合{1 , 2, A, MX N}中的一个;按置换地址集合{t1 , t2 , A, tM X N}对序列C进行置换,将其第i个像素置换至第ti列, i=1 , 2, A, MX N,得到C'。

将等差序列D做相同置换,得到D'。

最后,B'是一个MX N 的矩阵,B' (i ,j)=C ' ((i-1) X M+j),其中i=1 , 2, A, Mj=i=1 , 2, A, N,则B'就是加密后的图像文件。

解密算法与加密算法相似,不同之处在于第3步中,以序列C'代替随机序列{k1, k2, A, kMX N},即可实现图像的解密。

2. 用MATLAB勺实现基于混沌的图像置乱加密算法本文借助MATLAB^件平台,使用MATLAB!供的文本编辑器进行编程实现加密功能。

根据前面加密的思路,把加密算法的编程分为三个主要模块:首先,构造一个与原图a等高等宽的矩阵b加在图像矩阵a后面形成复合矩阵c: b=zeros(m1, n1); ifm1>=n1ifm1> n1fore=1: n1b=(e,e);end elsefore=1: n1endfore=1:( n1-m1)b((m1+e-1),e)=m1+e-1 endendc=zeros(m1*2, n1);c=zeros(m1*2,1);c=[b,a];然后,用Logitic映射产生混沌序列:forn=1: n1+100x( n+1)=q*x( n)*(1-x( n));endn=101:1: n1+100;y(n-100)=x( n);最后,采用冒泡法将产生的混沌序列值由小到大进行排序,并利用同样的换序条理依次对复合矩阵的列和行进行打乱排序:forf=1: n1-1forh=f: n1ify (f) >y(h)k=y (f);y(f)=y(h);y(h)=k;c1=c(:,f);c(:,f)=c(:,h);c(:,h)=c1;end forh=g:m1 if y(f>y<h) k=y(f) y(f)=y(h) y(h)=k; d1=d(:,f); d(:,f)=d(:,h); d(:h)=d; end 解密的程序与加密的相反3. 基于混沌的图像置乱加密算法效果分析利用Logistic 混沌序列对图像像素点置乱对图像文件加密,其效果要比用Logistic 混沌序列直接对图像文件加密好,令x0=0. 3001,图2 (b)为用Logistic 混沌序列直接对图像文件爱你进行加密的图像,图2(c)为用Logistic混沌序列对图像像素点置乱对图像文件进行加密的图像,图2( d)为其的解密图像文件。

4. 设计原理运用异或运算将数据进行隐藏,连续使用同一数据对图像数据两次异或运算图像的数据不发生改变,利用这一特性对图像信息进行加密保护。

用户输入的密码必须在0~1之间任何一个数据进行加密,并且加密的程序与解密的程序输入的密码必须一致才能正确解密。

四.源程序------------加密密钥明文密码生成算^法__________混沌序号序列解密密钥%该程序针对图像近似系数和高频系数进行加密,以达到加密的效果 clear all;t0 = clock; % im=imread('tank.jpg'); im1=rgb2gray(im); % im1=medfilt2(im1,[3 3]); % figure;imshow(im1); title(' 灰度化处理 '); im1=double(im1);%小波变换,获取图像的低频高频系数 [ca1,ch1,cv1,cd1]=dwt2(im1,'bior3.7');figure(3); subplot(231); imshow(ca1,[]); title(' 图像近似 '); subplot(232);imshow(ch1);title(' 低频水平分量 ');subplot(233);imshow(cv1);title(' 低频垂直分量 ');subplot(234);imshow(cd1),; title(' 高频分量 ');%%%%以%下%为混沌加密算法 %%%%%% [M,N]=size(ca1);e=hundungen(M,N,0.1); tt=0.1;fca1=mod(tt*ca1+(1-tt)*e,256);subplot(235);imshow(fca1,[]);title(' 加密 ');im2=idwt2(ca1,ch1,cv1,cd1,'bior3.7');figure(4);imshow(uint8(im2),[]);title(' 灰度图像小波重构 ');im3=idwt2(fca1,ch1,cv1,cd1,'bior3.7');figure(5);imshow(uint8(im3),[]);测试程序运行时间图像灰度化 图像平滑处理title(' 加密图像小波重构'); %%%%以%下%为混沌解密算法%%%%%% e=hundungen(M,N,0.1);[fca1,ch1,cv1,cd1]=dwt2(im3,'bior3.7');fca2=(fca1-(1-tt)*e)/tt;im4=idwt2(fca2,ch1,cv1,cd1,'bior3.7');figure(6);imshow(uint8(im4),[]);title(' 解密图像小波重构');%置乱后图像的均值figure(7);subplot(221)imhist(uint8(im1));title(' 初始图像的直方图');subplot(222)imhist(uint8(fca1));title('ca1 系数加密之后的直方图');subplot(223)imhist(uint8(im3));title(' 加密之后的直方图');subplot(224)imhist(uint8(im4));title(' 解密之后的直方图');ssy=sum(sum(im3));%置乱后图像的均值uy=ssy/(M*N); vy=sum(sum((im3-uyF2)); ssx=sum(sum(im1));%原图像的均值ux=ssx/(M*N); vx=sum(sum((im1-ux)A2));Variancey=vy/uy; % 置乱后图像的方差Variancex=vx/ux; % 原图像的方差%置乱度DDD=Variancey/Variancex;etime(clock,t0)五. 运行结果及分析总结1. 运行结果:灰度化处理图像近似低频水平分量高频分量加密灰度图像小波重构加密图像小波重构解密图像小波重构cal系数加密之后的直方图2. 结果分析:由程序的运行结果来看,原图被加密后在显示出来,已经无法辨别其内容,实现了图像数据的隐藏,这种混沌序列方法对图像数据的加密是十分有用,实现了信息的保密,在网络传输中能够很好地保护图像数据不被第三方轻易获取其内容,实现数据的隐藏保护。

3. 心得体会通过运用matlab 语言进行图像数据的加解密,不仅了解了matlab 本身处理信息的优越性也了解了信息安全的必要性,对于信息的保密是十分重要的,尤其是一些安全部门。

对于图像信息的加密了解了混沌序列的一些初步知识,对于混沌序列的思想有的一些了解,本程序是通过异或运算的特性对图像信息进行加解密,使图像信息的到保护。

相关文档
最新文档