《数学建模实验报告之Hill密码程序.docx》由会员分享,可在线阅读,更多相关《数学建模实验报告之Hill密码程序.docx(3页珍藏版)》请在三一办公上搜索。
1、数学建模实验报告之Hill密码程序东南大学数学实验报告 学号 09008226 姓名 毕 斌 成绩 实验内容:编写Hill密码程序 一 实验目的 编制通用的Hilln密码程序 二 预备知识 (1)熟悉Hilln密码加密过程及实现方法 (2)熟悉mod、det、inv等Matlab命令 三 实验内容与要求 用MATLAB或C+编制通用的Hilln密码程序 function encryption %加密函数 msg = input(输入要加密的明文:n,s) s = 2; %两个字符一组 msg_len = length(msg); %字符长度 col = ceil(msg_len/s); %分组
2、数 m0 = zeros(1, s*col); %初始化 m1 = double(lower(msg)-double(a)+1; m2 = m1+64*(m10); m0(1:msg_len) = m2; m3 = reshape(m0,s,col); %构造用于加密的矩阵 disp(加密密钥:) K = 1, 1; 0, 3 n = 26; c1 = mod(K*m3,n); %模意义下的矩阵运算 c2 = reshape(c1,1,s*length(c1); c3 = c2 - 64*(c2 = 0); %构造输出矩阵 disp(密文:) sct = char(c3 + a -1) %输出
3、密文 1 function decryption %解密函数 sct = input(输入要解密的密文:n, s) s = 2; sct_len = length(sct); col = ceil(sct_len/s); c0 = zeros(1,s*col); c1 = double(lower(sct)-double(a)+1; c2 = c1+64*(c1 encryption 输入要加密的明文: damn msg = damn 加密密钥: K = 1 1 0 3 密文: sct = ecap decryption 输入要解密的密文: ecap sct = ecap 解密密钥: inv_K = 1 17 0 9 msg = damn 3