【图像加密解密】基于混沌序列结合DWT+SVD实现图像加密解密(含相关性检验)含Matlab源码

简介: 【图像加密解密】基于混沌序列结合DWT+SVD实现图像加密解密(含相关性检验)含Matlab源码

1 简介

混沌密码学作为混沌应用的一个重要部分仅出现十几年的时间,但其发展非常迅速,不仅理论方面有了长足的进展,在实际应用的探索方面也取得了较大的成果,特别是近几年又出现了许多新思想、新方法,在实用性、安全性方面都有很大进展,极大的推进了其走向实用阶段的进度。

混沌密码学是一个对抗性很强的领域,一方面新的保密方法不断提出,另一方面相应的攻击方法也随继出现。早期的混沌加密方法多采用低维混沌算法加密,在这样的背景下,对混沌加密算法[1]的攻击大都针对低维混沌算法,低维混沌算法在相空间中有明显的几何结构(即奇异吸引子),通过以相空间重构理论为基础的时间延迟重构技术,可以很容易地从低维时间序列中重构整个吸引子的结构。对于低维混沌算法加密而言,重构吸引子意味着密钥流生成结构的暴露,据此可以构造出各种相应的破解方法。其中比较有代表性的有非线性预测法以及直接利用奇异吸引子特征的破解方法等。

混沌密码学[2]作为一个新研究领域自诞生以来仅仅经历了几十年,理论方面与使用方面还不十分成熟,随着破译方法的出现,混沌加密也面临着挑战。混沌在密码学中的应用从一开始就得到美国军方的高度重视和大力支持,美国军方于1998年前后与California大学,Stanford大学等签署了为期4年的科研合同,以资助如何将非线性动力学,特别是混沌技术,应用于信号编码、加密及调制等通信领域的各个方面的探讨和研究,由此可见美国对混沌加密技术的重视。国内在这方面大规模的研究虽然近几年才开始,但进展很快,己经出现了多种应用混沌算法构造序列密码的方法。同时,关于算法安全性,密钥流产生方式,密钥流随机检验,混沌序列游程测试等方面的理论成果也相继出现,使混沌序列密码加密研究无论是在理论上还是在实际应用上都具备了一定的规模。

二十世纪九十年代以来,网络信息技术在全世界范围内得到了迅猛发展,它极大地方便了人们之间的通信和交流。借助于计算机网络所提供的强大的多媒体通信功能,人们可以方便、快速地将数字信息(数字音乐、图像、影视等方面的作品)传到世界各地,一份电子邮件可以在瞬息问传遍全球。但同时计算机网络也成为犯罪集团、非法组织和有恶意的个人利用的工具。

信息隐藏技术使用的载体有图像、视频、语音及文本等数字媒体,包括数字隐写与隐写分析两个方面的内容,本文以使用最为广泛的数字图像作为研究对象,以基于数字图像的隐写方法作为研究内容。文章介绍了信息隐藏技术的基本知识和图像信息隐藏的常用算法,像信息隐藏技术,并且运用MATLAB7.0进行大量的实验测试,对该方法的性能进行检验分析,表明该方法具有一定的优点。本文内容主要如下:

1)混沌加密与信息隐藏技术的背景、研究意义,国内外研究现状,信息隐藏技术的基本原理,信息隐藏技术的术语和模型,信息隐藏系统的基本属性,信息隐藏技术的分支及其应用。

2)数字图像处理的基本概念和知识,空域隐藏算法,变换域隐藏算法。着重讨论了基于离散余弦变换的图像信息隐藏算法及其应用。

论文各章节安排如下:

2章主要介绍混沌加密与信息隐藏、以及各种攻击检测方法的定义做一下简单的介绍。使读者对本文研究的领域有整体的了解。

3章是系统的总体结构设计部分,给出了系统的整体架构。

4章是系统的具体设计与实现,包括混沌加密、图像隐藏、图像提取、图像解密、攻击检测、绘图分析。

5章是对结果进行安全性分析测试。

小波分析(Wavelet Analysis)是自1986年以来由Y.Meyer S.MattatL.Daubechies等的奠基工作而发展起来的新兴学科,并迅速应用到图像和语音分析等众多领域的数学工具,是继110多年前建立傅立叶(Joseph Fourier)分析之后的一个重大突破。经过近二十年的努力,由多尺度分析、时频分析、金字塔算法等发展起来的小波理论基础已经基本建立并成为应用数学的一个新领域,引起了众多数学家和工程技术人员的极大关注,成为国际上科技学术界高度关注的前沿领域。图像分析和处理领域的专家认为小波分析是数字图像处理的空间一尺度分析(Space.Scale Analysis)和多分辨分析(Multiresolution Analysis)的有效工具。当前最新的图像压缩标准—JPEG2000和视频的MPEG7压缩标准都采用了小波变换。

基于压缩标准模型的信息隐藏算法可以很好的解决与这些标准的兼容问题,增强抵抗有损压缩攻击的能力。Xia Xiang.Gen等人较早地提出了基于离散小波变换(DWT)的信息隐藏方法。基于DWT域的图像信息隐藏算法的一般步骤为,首先对载体图像进行多级离散小波变换,得到不同分辨率下的细节子图和逼近子图,然后用秘密信息对DWT系数进行调制,最后对嵌入秘密信息后的小波系数进行相应级别的离散小波逆变换,完成信息隐藏过程。利用小波变换把原始图像分解成多频段的图像,能适应人眼的视觉特性且使得信息的嵌入和检测可分多个层次进行,小波变换域信息隐藏方法兼具时空域和DCT变换域方法的优点。因此,基于离散小波变换的信息隐藏算法已经成为当前研究的热点和最重要的研究方向。

目前,常见的几类小波变换域信息隐藏嵌入算法有:非自适应加性和乘性嵌入方式。例如针对JPEG2000基本压缩编码系统,通过自适应地选择嵌入点,提出一种基于冗余估算的小波域隐写算法;基于多分辨率嵌入方式。

2 部分代码

%Sample to perform image registration using ExtPhaseCorrelation.m%%============================================================clcimg1 = imread('1.bmp');img1 = rgb2gray(img1);img2 = imread('2.bmp');img2 = rgb2gray(img2);[deltaX, deltaY] = ExtPhaseCorrelation(img1,img2)% img1 = imread('1.bmp');% img1 = rgb2gray(img1);% img2 = imread('3.bmp');% img2 = rgb2gray(img2);% [deltaX, deltaY] = ExtPhaseCorrelation(img1,img2)% img1 = imread('1.bmp');% img1 = rgb2gray(img1);% img2 = imread('4.bmp');% img2 = rgb2gray(img2);% [deltaX, deltaY] = ExtPhaseCorrelation(img1,img2)

3 仿真结果

4 参考文献

[1]陈永红, 黄席樾. 基于混沌序列的图像加密解密算法[J]. 计算机工程, 2004, 30(21):3.

博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。

部分理论引用网络文献,若有侵权联系博主删除。


相关文章
|
7月前
|
机器学习/深度学习 传感器 算法
matlab改进鲸鱼算法GSWOA 基准函数对比与检验
matlab改进鲸鱼算法GSWOA 基准函数对比与检验
|
7月前
|
机器学习/深度学习 传感器 算法
【特征提取】语音信号端点检测+倒谱法+自相关法特征提取附Matlab源码
【特征提取】语音信号端点检测+倒谱法+自相关法特征提取附Matlab源码
|
11天前
|
存储 人工智能 机器人
【Matlab】Matlab 汉/英语(A/a)声学特征比较与基音频率分析(源码+音频文件)【独一无二】
【Matlab】Matlab 汉/英语(A/a)声学特征比较与基音频率分析(源码+音频文件)【独一无二】
|
7月前
|
机器学习/深度学习 传感器 算法
改进黑猩猩优化算法SLWCHOA 可直接运行 提供23个基准函数对比与秩和检验 注释详细适合新手小白~Matlab
改进黑猩猩优化算法SLWCHOA 可直接运行 提供23个基准函数对比与秩和检验 注释详细适合新手小白~Matlab
|
7月前
|
机器学习/深度学习 传感器 算法
【SVM分类】基于布谷鸟算法优化实现SVM数据分类matlab源码
【SVM分类】基于布谷鸟算法优化实现SVM数据分类matlab源码
|
7月前
|
机器学习/深度学习 传感器 算法
改进麻雀算法OOLSSA 可直接运行 提供23个基准函数对比与秩和检验 注释详细适合新手小白~Matlab
改进麻雀算法OOLSSA 可直接运行 提供23个基准函数对比与秩和检验 注释详细适合新手小白~Matlab
|
7月前
|
机器学习/深度学习 传感器 算法
改进海洋捕食者算法NMPA 可直接运行 提供23个基准函数对比与秩和检验 注释详细适合新手小白~Matlab
改进海洋捕食者算法NMPA 可直接运行 提供23个基准函数对比与秩和检验 注释详细适合新手小白~Matlab
|
7月前
|
机器学习/深度学习 传感器 算法
【语音处理】语音信号特技处理(延时、混响、滤波)附Matlab源码
【语音处理】语音信号特技处理(延时、混响、滤波)附Matlab源码
|
3月前
|
Perl
【MFAC】基于全格式动态线性化的无模型自适应控制(Matlab代码)
【MFAC】基于全格式动态线性化的无模型自适应控制(Matlab代码)
|
3月前
【数值分析】迭代法求方程的根(附matlab代码)
【数值分析】迭代法求方程的根(附matlab代码)