【图像加密】基于改进Logistic混沌图像加密与解密含高斯噪声、中值滤波并计算相关性、恢复相关性、均方根误差附matlab代码

简介: 【图像加密】基于改进Logistic混沌图像加密与解密含高斯噪声、中值滤波并计算相关性、恢复相关性、均方根误差附matlab代码

1 简介

随着互联网的蓬勃发展,各种信息通过网络飞速增长传播,为社会提供便利的同时也带来了许多负面效应。大量个人隐私被泄露、财产损失不断增加、企业重要数据被截取篡改以及国家各种机密保密文件泄露,信息安全岌岌可危。信息作为极其重要的战略资源,如何获取、处理信息和保障信息安全成为体现一个国家综合国力的重要部分。信息安全关乎社会稳定和国家安全,成为人们普遍关注的一个热点问题。同时随着互联网多媒体技术的迅速发展,图像成为信息的主要载体之一。据统计,人们通过视觉从外界获得的信息量高达 80%。图像信息的安全问题成为人们关注的热点问题。


数字图像图像具有信息量大、像素相关性高以及冗余度高等特征。传统的加密方法,例如高级加密标准(Advanced Encryption Standard,AES)、数据加密标准(Data Encryption Standard,DES)、公钥加密算法(Rivest-Shamir-Adleman,RSA)基本都是针对一维的文本数据加密设计的,没有结合图像本身的特征,并且往往算法复杂、加密效率低,很难满足实际应用的需求,因此不适用于图像加密。而基于矩阵的图像加密算法密钥空间无法抵挡穷举攻击;传统的压缩图像加密算法运算速度慢、效率低,越来越不满足网络实时性的要求;基于秘密分存的图像加密的缺点是由于图像数据量会发生膨胀,若图像数据很大、网络带宽不足,会给图像的网络传输增加困难,并且使用这种算法恢复出的图像的对比度会下降,因此这种加密算法在实际中应用受到了限制。因此找寻新的图像加密方法成为当前信息安全研究的重点。混沌是指在确定性非线性系统中出现的类似随机的行为,具有对初值条件敏感、随机性强、不可预测性和遍历性等特点,混沌序列具备非常优良的密码学特性。混沌学与密码学有许多相似之处,比如混沌映射的初始值通过迭代运算得以扩散到整个相空间,而传统密码算法通过增加加密轮次产生扩散和混乱。自 1997 年 Fridrich 首次应用混沌图像加密起,大量相关混沌图像加密算法被提出,比如基于各种维度的混沌映射图像加密算法,基于混沌映射与其他加密算法相结合的图像加密算法等等。然而随着各种攻击破坏手段的提升以及计算机运算速度的提高,一些原本被认为是安全的加密算法逐渐被破译,同时部分混沌算法存在着密钥空间小、安全性不高或是过于复杂不利于硬件实现的问题。因此进一步探究混沌图像加密算法,不断完善混沌图像加密模式,仍然具有非常重要的理论意义和实用价值。

2 部分代码

clc;clear;I0=imresize(rgb2gray(imread('1.jpg')),[256 256]); %imresize函数:用于图像大小调整插值(双三次方插值),对图像做缩放处理figure(1);subplot(251);imshow(I0);title('原始图像');n=15;%置乱次数I1 = arnold(I0,5,7,n);J=imnoise(I1,'gaussian',0.05);  %添加方差为0.05的高斯噪声I2=arnold_refresh(I1,5,7,n);J1=arnold_refresh(J,5,7,n);subplot(252);imshow(I1);title('原始图像置乱');subplot(253);imshow(I2);title('原始图像置乱恢复');subplot(254);imshow(J);title('置乱后添加高斯噪声');subplot(255);imshow(J1);title('添加高斯噪声后置乱恢复');subplot(256);imhist(I0);title('原始图像图像直方图');subplot(257);imhist(histeq(I1));title('原始图像置乱直方图');subplot(258);imhist(I2);title('原始图像置乱恢复直方图');subplot(259);imhist(J);title('置乱后添加高斯噪声直方图');subplot(2,5,10);imhist(J1);title('添加高斯噪声后置乱恢复直方图');sha_val=shannon(I0);%信息熵sha_val1=shannon(J1);%信息熵fprintf('原始图像信息熵:%.3f 添加高斯噪声后置乱恢复信息熵:%.3f\n',sha_val,sha_val1);val_c=corr2(I0,J1);fprintf('原始图像与添加高斯噪声后置乱恢复相关性:%.3f\n',val_c); Nc=nc(I0,J1); fprintf('原始图像与添加高斯噪声后置乱恢复归一化相关系数:%.3f\n',Nc); ss=std2(J1-I0);fprintf('原始图像与添加高斯噪声后置乱恢复均方根误差:%.3f\n',ss);

3 仿真结果

4 参考文献

[1]廖雪峰. 基于Logistic混沌系统的图像加密算法分析与改进[J]. 软件导刊, 2017, 16(5):3.

[2]曾祥秋, 叶瑞松. 基于改进Logistic 映射的混沌图像加密算法[J]. 计算机工程, 2021, 47(11):9.

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

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

相关文章
|
7月前
|
传感器 机器学习/深度学习 编解码
MATLAB|主动噪声和振动控制算法——对较大的次级路径变化具有鲁棒性
MATLAB|主动噪声和振动控制算法——对较大的次级路径变化具有鲁棒性
319 3
|
6月前
|
存储 JSON 安全
加密和解密函数的具体实现代码
加密和解密函数的具体实现代码
862 136
|
8月前
|
编解码
基于MATLAB的ISAR目标仿真回波在加入不同噪声下利用不同时频分析
基于MATLAB的ISAR目标仿真回波在加入不同噪声下利用不同时频分析
165 0
|
7月前
|
算法 数据挖掘 定位技术
基于密度的聚类算法能够在含有噪声的数据集中识别出任意形状和大小的簇(Matlab代码实现)
基于密度的聚类算法能够在含有噪声的数据集中识别出任意形状和大小的簇(Matlab代码实现)
167 1
|
7月前
|
机器学习/深度学习 移动开发 编解码
基于人工神经网络的类噪声环境声音声学识别(Matlab代码实现)
基于人工神经网络的类噪声环境声音声学识别(Matlab代码实现)
185 1
|
8月前
|
传感器 机器学习/深度学习 存储
【弹簧阻尼器】基于卡尔曼滤波弹簧质量阻尼器系统噪声测量实时状态估计研究(Matlab代码实现)
【弹簧阻尼器】基于卡尔曼滤波弹簧质量阻尼器系统噪声测量实时状态估计研究(Matlab代码实现)
293 4
|
7月前
|
机器学习/深度学习 算法 vr&ar
【深度学习】基于最小误差法的胸片分割系统(Matlab代码实现)
【深度学习】基于最小误差法的胸片分割系统(Matlab代码实现)
156 0
|
7月前
|
机器学习/深度学习 数据采集 传感器
考虑时空相关性的风电功率预测误差建模与分析(Matlab代码实现)
考虑时空相关性的风电功率预测误差建模与分析(Matlab代码实现)
114 0
|
8月前
|
机器学习/深度学习 传感器 算法
【继电器】基于泰勒级数展开的样本估计和误差计算方法提高继电器的功率摆幅检测性能研究(Matlab代码实现)
【继电器】基于泰勒级数展开的样本估计和误差计算方法提高继电器的功率摆幅检测性能研究(Matlab代码实现)
180 0
|
9月前
|
存储 缓存 安全
php项目源码加密之Zend Guard Loader加密的代码解密可能性很小-优雅草卓伊凡
php项目源码加密之Zend Guard Loader加密的代码解密可能性很小-优雅草卓伊凡
397 2