云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 实验十 Hill密码的加密、解密与破译 - 图文

实验十 Hill密码的加密、解密与破译 - 图文

  • 62 次阅读
  • 3 次下载
  • 2025/6/5 20:35:25

实 验 报 告

课程名称: 数学实验 学院名称: 数学与统计学院 班 级: 姓 名: 学 号: 2013-2014 学年第 2 学期

数 学 与 统 计 学 院 制

实验地点 实验日期 应用数学实验室 课程类别 第 组 ①公共课□ ②专业课■ 实验所 用时间 2小时 实验 编组 实验名称 Hill加密、解密与破译 实验目的: 1. 复习线性代数中模运算意义下的矩阵乘法、求逆矩阵、线性无关、线性空间与线性变换等概念和运算; 2. 学习掌握线Hill密码体制的加密、解密和破译过程. 实验环境 MatlabR2012b 实验内容: 实际问题:(1)甲方收到与之有秘密通信来往的乙方的一个密文信息,密文内容:QSIUYSBACPGZSAVCOVKPEWCPADKPPABUJCQLYXQEZAACPP 按照甲方与乙方的约定,他们之间的密文通信采用Hill2密码。密钥为二阶矩阵?12?A???。且汉语拼音的26个字母与0~25之间的整数建立一一对应的关系,称03??之为字母的表值,具体的表值见表10.1.问这段密文的原文是什么? 表10.1 明文字母的表值 A B C D E F G H I J K L M 1 2 3 4 5 6 7 8 9 10 11 12 13 N O P Q R S T U V W X Y Z 14 15 16 17 18 19 20 21 22 23 24 25 0 (2)甲方截获了一段密文: QJWPISWAZUXAUUISEABAUCRSIPLBHAAMMLPJJOTENH,经分析这段密文是用Hill2密码编译的,且这段密文的字母UCRS依次代表字母TACO,问能否破译这段密文的内容? (3)甲方截获了一段密文: TYITSFAFIRAFXKOLWRPSFUXXPI 已知这段密文是用Hill2密码编译的,且这段密文的字母PS对应的明文字母为KE,问能否破译这段密文? 实验任务: 1.利用所介绍的Hill2密码体制的原理,根据给定的26个英文字母的乱序表值(见表10.4),设计与建立Hill4密码体制的加密、解密与破译框图并建立必要的计算机程序.设英文26个字母以下面的乱序表与Z26中的整数对应: A B C D E F G H I J K L M 5 23 2 20 10 15 8 4 18 25 0 16 13 N O P Q R S T U V W X Y Z 7 3 1 19 6 12 24 21 17 14 22 11 9 ?8695???69510?,验证A能否作为Hill4密码体制的加密矩阵.用框图画出(1)设A???5849???106114??你的验算过程,并编写相应的计算机程序. (2)设明文为 HILL CRYPTOGRAPHIC SYSTEM IS TRADITIONAL 利用上面的表值与加密矩阵给此明文加密,并将得到的密文解密.画出加密与解密过程的框图并编写相应的计算机程序. (3)已知在上述给定表值下的一段Hill4密码的密文为 JCOW ZLVB DVLE QMXC 对应的明文为 DELAY OPERATIONSU 能否确定对应的加密矩阵?给出你的判断过程. 实验过程(模型公式、程序、运算结果): 1.(1) disp('输入密钥矩阵的为数'); n=input(''); disp('输入密钥矩阵(按行输入)'); key=zeros(n,n); for j=1:n for k=1:n key(j,k)=input(''); end end d=round(mod(det(key),26)); if d==0,2,4,6,8,10,12,13,14,16,18,20,22,24 error('A不可作为加密矩阵') else sprintf('A可作加密矩阵') end 输出结果:A可作加密矩阵 (2)MAYLAB程序: clc;clear; bm=[5,23,2,20,10,15,8,4,18,25,0,16,13,7,3,1,19,6,12,24,21,17,14,22,11,9]; A=[8 6 9 5;6 9 5 10;5 8 4 9;10 6 11 4]; s='jintianshixingqisi'; dxzm='A':'Z'; xxzm='a':'z'; for k=1:length(s) if k>length(s) break end if s(k)==' '; s(k)=[]; end end n=length(s); for k=1:n if s(k)>='A'&&s(k)<='Z' sh=(s(k)==dxzm); [a,b]=max(sh); elseif s(k)>='a'&&s(k)<='z' sh=(s(k)==xxzm); [a,b]=max(sh); end b=mod(b,26); if b==0 b=26; end X(k)=bm(b); end n=length(X); if mod(n,4) X(ceil(n/4)*4)=0; end X=reshape(X,4,length(X)/4); Y=mod(A*X,26); y=Y(:)'; miwen=''; for k=1:length(y) [a,b]=max(y(k)==bm); miwen(k)=dxzm(b); end mw0=''; for k=1:n mw0(k)=miwen(k); end disp(['密文是',mw0]) 执行结果: 密文是:BFQYYXRBSGTDPJJZXK (3) function Y=invmod(C,P) D=det(P); D=round(D) if gcd(D,26)~=1 disp('Error'); else for i=1:25 if mod(i*D,26)==1 break end; end; invD=i; Y=mod(D*inv(P)*invD,26); end; Y=mod(C*Y,26); y=true 运行结果:y=[25 9 20 19 ;2 16 17 13;3 17 16 22;14 23 10 2] 实验分析:通过计算机程序可以实现Hill加密、解密与破译,但并不是每个矩阵都可以作为加密矩阵,作为加密矩阵必须满足一定的条件。 考核结果

教师签名: 年 月 日

  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

实 验 报 告 课程名称: 数学实验 学院名称: 数学与统计学院 班 级: 姓 名: 学 号: 2013-2014 学年第 2 学期 数 学 与 统 计 学 院 制 实验地点 实验日期 应用数学实验室 课程类别 第 组 ①公共课□ ②专业课■ 实验所 用时间 2小时 实验 编组 实验名称 Hill加密、解密与破译 实验目的: 1. 复习线性代数中模运

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com