图像的AES加密算法的MATLAB仿真源码

 

%AES_DEMO  Demonstration of AES-components.
%
%   AES_DEMO
%   runs a demonstration of all components of 
%   the Advanced Encryption Standard (AES) toolbox.
%
%   In the initialization step the S-boxes, the round constants,
%   and the polynomial matrices are created and
%   an example cipher key is expanded into 
%   the round key schedule.
%   Step two and three finally convert 
%   an example plaintext to ciphertext and back to plaintext.

%   Copyright 2001-2005, J. J. Buchholz, Hochschule Bremen, [email protected]

%   Version 1.0     30.05.2001

% Initialization
[s_box, inv_s_box, w, poly_mat, inv_poly_mat] = aes_init;

tu=imread('5.jpg'); 
lena=tu(:,:,1);      %for color to blackwhite map


% lena=imread('lean256.jpg') %for blackwhite map 

for i=1:256
    for j=1:256
        data(i,j)=double(lena(i,j));
    end
end

cipher_data=zeros(256,256);

for i= 1:256
    for j = 1:16
        plaintext = data(i, (j-1)*16+1:j*16);
        plaintext = plaintext';
        ciphertext = cipher (plaintext, w, s_box, poly_mat, 1);
        cipher_data(i, (j-1)*16+1:j*16) = ciphertext;
    end
end

cipher_img = uint8(cipher_data);
colormap(gray)
imagesc(cipher_img);

 D115

 

おすすめ

転載: blog.csdn.net/ccsss22/article/details/120203963