使用一次加密的形式对图像进行加密。
采用异或的方式实现。
加密、解密结果如下:
程序代码如下:
% 读取原始图像并显示
originalImage = imread('lena256.bmp'); % 更换为你的图像文件名
subplot(1,3,1),imshow(originalImage);
title('Original Image');% 生成与图像相同大小的随机一次性密钥
key = uint8(rand(size(originalImage)) * 255);% 加密图像
encryptedImage = encryptImage(originalImage, key);
subplot(1,3,2); imshow(encryptedImage);
title('Encrypted Image');% 解密图像
decryptedImage = decryptImage(encryptedImage, key);
subplot(1,3,3),imshow(decryptedImage);
title('Decrypted Image');function encryptedImage = encryptImage(image, key)% 将图像数据和密钥转换为向量imageVector = image(:);keyVector = key(:);% 执行异或操作进行加密encryptedVector = bitxor(imageVector, keyVector);% 将加