数学建模实验报告-Hill密码体系.doc

数学建模实验报告-Hill密码体系.doc

ID:52183143

大小:56.00 KB

页数:8页

时间:2020-03-24

数学建模实验报告-Hill密码体系.doc_第1页
数学建模实验报告-Hill密码体系.doc_第2页
数学建模实验报告-Hill密码体系.doc_第3页
数学建模实验报告-Hill密码体系.doc_第4页
数学建模实验报告-Hill密码体系.doc_第5页
资源描述:

《数学建模实验报告-Hill密码体系.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、东南大学《数学实验》报告学号09008132姓名张晓波成绩实验内容:Hilln密码体系一实验目的实现Hilln密码体系的关键环节(加密、解密、破译)二预备知识熟悉mod、det、find等Matlab命令三实验内容与要求(1)假设加密矩阵为A=,用MATLAB编制程序,加密下面一段明文:SHUXUEJIANMOJINGSAI命令结果disp('输入密钥矩阵的维数');n=input('');disp('输入密钥矩阵');key=zeros(n,n);forj=1:nfork=1:nkey(j,k)=i

2、nput('');endendd=det(key);ifd==0error('密钥矩阵不可逆');endmessage=input('输入明文','s');m=length(message);%得到字符串长度check=mod(m,n);%模除确定多余的字符数ifcheck>0>>jianmo输入密钥矩阵的维数2输入密钥矩阵1203输入明文SHUXUEJIANMOJINGSAI密文为IXQTEOBACPQSBABUUCAA>>8addstr(1:check)=message(m);%添加messa

3、ge=[messageaddstr];m=length(message);%重新获得长度endfori=1:mifmessage(i)>='A'&&message(i)<='Z'message(i)=message(i)-64;elseerror('输入错误');endendi=1;whilei26A(i)=mod(A(i),26);endA(i)=A(i)+64

4、;endstr=char(A);fprintf('密文为%s',str)(2)假设加密矩阵为A=,用MATLAB编制程序,解密下面一段密文:命令结果disp('输入密钥矩阵的维数');n=input('');disp('输入密钥矩阵');key=zeros(n,n);forj=1:nfork=1:nkey(j,k)=input('');>>jiemi输入密钥矩阵的维数2输入密钥矩阵1108endendd=det(key);ifd==0error('密钥矩阵不可逆!');endmessage=input

5、('输入密文','s');m=length(message);check=mod(m,n);ifcheck>0addstr(1:check)=message(m);message=[messageaddstr];m=length(message);endfori=1:mifmessage(i)>='A'&&message(i)<='Z'message(i)=message(i)-64;elseerror('输入错误!');endendwhiled>26d=mod(d,26);endswitchdc

6、ase1r1=1;case3r1=9;case5r1=21;case7r1=15case9r1=3;case11r1=19;case15r1=7;case17r1=23;3输入密文AXSTZOSAOPBSTKSANKOPSAHAUUNSUUAKGAUZCKOPDO明文为SHUXUEJIANMOYUJISUANJIYINGYONGFUXIUZHUANYE>>8case19r1=11;case21;r1=5;case23r1=17;case25r1=25;otherwisedisp('d倒数不存在!');

7、enddetk=det(key);invk=inv(key);k=detk*invk;key2=r1*k;fori=1:nforj=1:nkey2(i,j)=mod(key2(i,j),26);ifkey2(i,j)<0key2(i,j)=key2(i,j)+26;endendendi=1;whilei26B(i)=mod(B(i),26);endifB(i)=

8、=0B(i)=26;endB(i)=B(i)+64;endstr2=char(B);fprintf('明文为%s',str2)8(3)甲方截获了一段密文:BKOPGATRHMMBFCSDJCCAUU经分析这段密文是用Hill2密码编译的,且这段密文的字母SDJC依次代表字母IJIA,请破译这段密文的内容Matlab命令结果message=input('输入截获密文','s');fori=1:4ifmessage(i)>='A'&&message(

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。