数学实验—Hill密码的加密、解密与破译

数学实验—Hill密码的加密、解密与破译

ID:42431464

大小:102.50 KB

页数:20页

时间:2019-09-15

数学实验—Hill密码的加密、解密与破译_第1页
数学实验—Hill密码的加密、解密与破译_第2页
数学实验—Hill密码的加密、解密与破译_第3页
数学实验—Hill密码的加密、解密与破译_第4页
数学实验—Hill密码的加密、解密与破译_第5页
资源描述:

《数学实验—Hill密码的加密、解密与破译》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、黔南民族师范学院数学实验报告题目Hill密码的加密、解密与破译制作成员班级学号任务杏成肃11数应(1)班1105015152问题求解和程序设计流程黎庭庭110501535建立数学模型r机实验结果的分析与结论2013年5月26日Hill密码的加密、解密与破译(A)•、实验目的1.复习线性代数,矩阵,线性空间与线性变换等概念和运算2.熟悉Hill密码体制的加密,解密和破译过程.3.Hill密码体制的加密,解密和破译过程的Matlab编程实践.实验问题Hill2密码的加密,解密和破译1.利用所介绍的Hill2密码体制原理,根据给定的26个英文字母的乱

2、序表值(表A1)表A1:26个英文字母的乱序表值20O1-91-21-241-271-1O.=A设29=A235812-——IHL一一AKLM0161XYZ22_5411I9_237I41-验证矩阵Ai(i=1;2;3;4)能否作为HIII2密码体制的加密矩阵•2.设明文为HILLCRYPTOGRAPHICSYSTEMISTRADITIONAL利用上面的表值,任选一个加密矩阵Ai给此明文加密,并将得到的密文解密.画出加密与解密过程的框图并编写相应的Matlab程序.3.表1明文字母的表值ABCDEFGHIJKLM1234567891011121

3、3N0PQRSTUVWXYZ1415161718192021222324250甲方截获了一段密文:BKOPGATRHMMBFCSDJCCAUU经分析这段密文是用H川2密码编译的,且这段密文的字母SDJC依次代表字母IJIA,请破译这段密文的内容建立数学模型二、冋题求解和程序设计流程2、1分别计算4个矩阵行列式的值为:3,22,4,21可以判断,A1和A4能作为加密矩阵。2、2求倒数的程序:functionb=Hill2_countdown(a)喘mod26情况下求倒数%ifa==1b=1;elseifa==3b=9;elseifa==5b=21

4、;elseifa==7b=15;elseifa==9b=3;elseifa==11b=19;elseifa==15b=7;elseifa==17b=23;elseifa==19b=11;elseifa==21b=5;elseifa==23b=17;elseifa==25;b=25;elseerror('该数在mod26下没有倒数')endend判断矩阵A是否为加密矩阵并求其逆矩阵:functionA1=Hill2_key(A)辔U断A矩阵是否能作为加密矩阵并求逆矩阵a=mod(det(A),26);ifa==13

5、rem(a,2)==0erro

6、r(*A矩阵不能作为加密矩阵')endb=Hill2_countdown(a);A仁mod((b*[A(2,2)-A(1,2);-A(2,1)A(1,1)]),26);end将字母转化为数字:functionY=letter_num(X)%按照数学实验书P111表10.4将字母转化为数字%参数说明,输入项:X由每个字母组成的字符串%输出项:丫由每个数字组成的行向量%例如ABCD对应的数字是523220%其调用格式为:Y=letter_num(7BCD').n=length(X);ifrem(X,2)~=0X(n+1)=X(n);n=n+1;e

7、ndY(i)=2;elseifX(i)=='D'Y(i)=20;elseifX(i)=='E*Y(i)=10;elseifX(i)=='F'Y(i)=15;elseifX(i)=='G'丫(i)=&elseifX(i)='H'Y(i)=4;elseifX(i)==TY(i)=18;elseifX(i)=='J'Y(i)=25;elseifX(i)=='K'Y(i)=O;elseifX(i)==,L,Y(i)=16;elseifX(i)=='M'Y(i)=13;elseifX(i)=='N'Y(i)=7;elseifX(i)=='O'Y(i)=3

8、;elseifX(i)==PY(i)=1;elseifX(i)=='Q'Y(i)=19;elseifX(i)=='R'Y(i)=6;elseifX(i)==,S,Y(i)=12;elseifX(i)==TY(i)=24;elseifX(i)=='U'Y(i)=21;elseifX(i)=='V'Y(i)=17;elseifX(i)=='W'Y(i)=14;elseifX(i)=='X*Y(i)=22;elseifX(i)=='Y'Y(i)=11;elseifX(i)=='Z*Y(i)=9;elseerror('请正确输入A到Z的字母)enden

9、dendfunctionY=letter_num(X)%按照数学实验书P111表10.4将字母转化为数字渗数说明,输入项:X由每个字母组成的字符串%输

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

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

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