混沌加密程序混沌加密程序
tic
close all;
clc
clear
ri=[1 1 0 0 1 1 0 0];
I=imread('lena0.bmp');
imshow(I),title('原图像');
I=double(I);
mi=zeros(1,8);
[y,z]=size(I);
I2=zeros(y,z);
j1=10;
x=0.2733469348;
for i=1:y
for j=1:z;
mi=bin(I(i,j));
for p=1:8
q=xor(ri(8),m...
混沌加密程序
tic
close all;
clc
clear
ri=[1 1 0 0 1 1 0 0];
I=imread('lena0.bmp');
imshow(I),title('原图像');
I=double(I);
mi=zeros(1,8);
[y,z]=size(I);
I2=zeros(y,z);
j1=10;
x=0.2733469348;
for i=1:y
for j=1:z;
mi=bin(I(i,j));
for p=1:8
q=xor(ri(8),mi(p));%输出qi
x=sqrt(abs(2*x-1));
if q==0
x0=x;
else
x0=1-x;
end
c=mod(floor(x0*(2^j1)),2);%非线性变换进行处理后的密文值
I2(i,j)=I2(i,j)+c*(2^(8-p));
r=xor(xor(ri(1),ri(5)),xor(ri(6),ri(7)));
for ai=7:-1:1 %移位操作
ri(ai+1)=ri(ai);
end
ri(1)=r;
end
end
end
figure,imshow(I2,[0,255]), title('加密图像');
%图像解密
%I3=imread('加密图像.bmp');%读入加密图像
j2=10;
ri=[1 1 0 0 1 1 0 0];
[y1,z1]=size(I2);
x=0.2733469348;
I4=zeros(y1,z1);
for i1=1:y1
for j1=1:z1
k=bin(I2(i1,j1));%%%%
for p1=1:8
x=sqrt(abs(2*x-1));
s1=floor(x*(2^j2));%非线性变换
s2=mod(s1,2);
qi=xor(s2,k(p1));%和密文进行异或
f=xor(ri(8),qi);
I4(i1,j1)=I4(i1,j1)+f*2^(8-p1);
r=xor(xor(ri(1),ri(5)),xor(ri(6),ri(7)));
for ai=7:-1:1 %移位操作
ri(ai+1)=ri(ai);
end
ri(1)=r;
end
end
end
figure,imshow(uint8(I4)), title('解密图像'); toc
本文档为【混沌加密程序】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。