傅里叶加密

本文探讨了基于傅里叶变换的加密方案,利用傅里叶变换特性进行图像加密。通过乘以随机相位矩阵实现频域的平移,但如何在未知相位情况下解密仍是挑战。欢迎分享解密思路。
摘要由CSDN通过智能技术生成

理论基础:加密方案

加密公式:

解密公式:

img=imread('22.jpg'); % 读取一张图片
a=rgb2gray(img); % 彩色图变为灰度图
k=size(a);
phase_1=exp(10*1j.*rand(k)); % 产生两个随机矩阵
phase_2=exp(10*1j.*rand(k));
pa=complex_fft2(a,phase_1); % 一次加密
pb=complex_fft2(pa,phase_2);  % 二次加密
figure,imshow(abs(pb),[]), title('2 次傅里叶变换后的图 频谱图 +加密图');% 2 次傅里叶变换后的图 +加密图
saveas(gcf, '加密图', 'jpg')
ipb=ifft2(ifft2(pb));
figure,imshow(abs(ipb),[]),title('加密后的两次逆傅里叶变换图 ')   % 两次逆傅里叶变换图 
saveas(gcf, '加密后的两次逆傅里叶变换图 ', 'jpg')
phase_3=exp(10j.*rand(k));
phase_4=exp(10j.*rand(k));
error_phase_img=ifft2(ifft2(pb).*conj(phase_4)).*conj(phase_3);
  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值