‘壹’ 请详细解释下面程序各步骤的含义(图像加密,matlab),谢谢!
clear;clc; % 清空命令行和workspace变量
x=imread('加密后的mozhun.bmp','bmp'); %读取图像
[a b c]=size(x); %获取图像3个通道的大小
N=a*b;
m(1)=input('请输入密钥: '); %input输入命令,提示输入密钥
disp('解密中'); %显示字符串‘解密中’
for i=1:N-1 %判断是否是正确的密钥
m(i+1)=4*m(i)-4*m(i)^2;
end
m=mod(1000*m,350); %求模运算
m=uint8(m); %将m中的每个元素设置为Uint8型的元素而不是double型
n=1;
for i=1:a
for j=1:b
e(i,j)=bitxor(m(n),x(i,j)); %对图像中每个像素点进行按位异或
n=n+1;
end
end
imwrite(e,'解密后的mozhun.bmp','bmp'); %将解密后的图片以位图形式写入文件
disp('解密成功'); %显示提示信息
winopen('解密后的mozhun.bmp');% 打开解密图片
总的来说,这个程序的作用就是读一张经过加密的图片,然后通过输入的密钥对图像进行解密,并将解密之后的图片保存并显示。
‘贰’ 图像加密是什么意思
图像加密是一种将图像数据转换为无法被直接读取的形式的技术,用于在传输和存储期间保护图像数据。以下是关于图像加密的详细解释: