zoukankan      html  css  js  c++  java
  • 保存密文图像在对此图像利用解密算法进行解密能不能行得通

    最近密码学比赛刚结束,又回来研究同态加密这块了,一直以来,我纠结不会c语言怎么写代码来对图像进行加密,今天师兄提出了一个想法,比如我用c语言实现了图像的加解密,

    然后,保存密文图像信息,然后再用解密算法对图像进行解密。好像在理论上是行得通的,那我先找个简单的加解密算法试验一下,同时看看字符串是如何处理的?

    用matlab来实验。

    我为了区分,写了两个主函数main和main1,写了一个简单的行列变换的作为加密函数jiami.m和解密函数jiemi.m

    加密函数jiami.m

    function[C]=jiami(I)
    %加密过程
    [M,N] = size(I);
    for i = 1:M
    for j = 1:N
    C(i,j) =I(j,i);
    end
    end
    end

    解密函数jiemi.m

    function[P]=jiemi(C)
    %解密过程
    [M,N] = size(C);
    for i = 1:M
    for j = 1:N
    P(i,j) =C(j,i);
    end
    end
    end

     首先在主函数main()中读取原图,并保存为jiami.bmp

    clc;
    close all;
    I=imread('lena256.bmp');
    figure(1);imshow(I);
    title('original image');
    C1=jiami(I);
    figure(2);imshow(uint8(C1));
    imwrite(C1,'jiami.bmp');

    如果这时我把密文图像拿到别的平台去用对应的解密方法解密,图像是以矩阵的形式存储的,是可以解密出来的,

    我只需要记住相应的参数,注意保存图像数据和字符串间的转换处理就行了

    clc;
    close all;
    C2=imread('jiami.bmp');
    figure(1);imshow(C2);
    title('original image');
    P1=jiemi(C2);
    figure(2);imshow(uint8(P1));
    imwrite(P1,'jiemi.bmp');

  • 相关阅读:
    奇数
    简单的登录基于代码的
    偶数
    寻找特定的值
    'k1': 大于66的所有值, 'k2': 小于66的所有值
    差数和
    day1
    页面滑动监听
    jq的ajax初级使用
    在vue中引入swiper
  • 原文地址:https://www.cnblogs.com/fanglijiao/p/11838374.html
Copyright © 2011-2022 走看看