线性代数在密码学中的应用.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
线性代数在密码学屮的应用(hill密码的加密与破译) (1)甲方收到与之有秘密通信往来的乙方的一个密文信息,密文内容如下: WOWUYSBACPGZSAVCOVKPEWCPADKPPABUJCQLYXQEZAACPP 按照甲方与乙方的约定,他们之间的密文通信采用Hill2密码,密钥为二阶矩阵A ==什; 且汉语拼音的26个字母与0~ 25之 间的整数建立一一对应的关系,称之为字母的表值,具体的表 值见下表?问这段密文的原文是什么? (2)甲方截获了一段密文: (2)甲方截获了一段密文: 0 JWPI SWA Z UX AU UISE AB A UCRS IPLBHAAMMLPJJOTENH 数学模型 Hill2密码是一种传统的密码体制,它的加密过程可用以 下的框图描述: 明文f |加密器|f 明文f |加密器|f密文f普通信 解密器 密码分析(敌方截获) 明文 1根据明文字母的表值,将明文字母用数字表示,设明文 信息只需要26个拼音字母A~Z,也可以不止26个,如还有数字, 标点符号等,通信双方给出这26个字母表值(表1). 2选择一个二阶可逆整数方阵A,称为Hi I密码的加密矩 阵,它是这个加密体制的 啓钥S密钥是加密的关键,仅通信 双方掌握?问题中已给出了这个二阶矩阵. 3将明文字母依次逐对分组,Hi lb密码的加密矩阵为二 阶矩阵,则明文字母2个一组,可以推广至Hilln密码,则每n 个明文字母为一组?若最后一组只有一个字母,则补充一个没 有实际意义的哑字母,这样使每一组都由2个明文字母组成?查 出每个明文字母的表值,构成一个二维列向量e 4 A乘以a,得一新的2维列向量“二Aa9由/3的两个分量 反查字母表值得到的两个字母即为密文字母. 以上4步即为Hill?密码的加密过程?解密过程,即为上述 过程的逆过程. 实例 加密 明文YICHUFA, A=仁;),求这段明文的 Hil密文. 定义字母的表值. SS = {a — 1 f b? 2. c — 3 r d — 4 9 €? — 5 t f — 6 # g — 7 # h — 8 # 1 — 9 f j — 10 9 k — 111 1 — 12 , m - 13 z n - 14 f o - 15 r p - 16, q - 17 z r - 18 , s - 19 f 20 r u - 21 z v - 22 f w - 23 # x - 24 , y - 25 r z - 0}; TT 1 - a r 2 -? b, 3 - cr 4 - d r 5 -? e, 6 f r 7 - g, 8-h, 9 -? i z 10 - j , 11 - k r 12 - 1 z 13 -? m r 14 -? n r 15 to, 16 -? p r 17 -? qF 18 - r r 19 - s # 20 t t, 21 -? u, 22tv, 23 -? w# 24 tx, 25 y r 0 - z}; 定义加密矩阵. A[l, 1] = 1; A[l, 2] =2; A[2f 1] = 0; A[2, 2] =3; AA = Array [A, {2 , 2}]; MatrixForm [AA] 输入明文. aaa = {y, i, c, h, u, f, a} 将明文字母分为每2个一组,并适当补充哑字母. nnn = Length[aaa]; If[Mod[nnn 2] == 0, bbb = aaa f bbb = Append[aaa f Last[aaa]]] ccc = Partition[bbb, 2] 将第一组明文字母根据表值转化为数字. AA?ccc [ [1] ] /? SS 将第一组明文字母加密,并反查字母表值得到 密文. ddd [1] = Mod [AA ? ccc [ [1] ] /? SS, 26] / . TT 同理可得到其余三组明文字母的 密文. ddd [2] = Mod [AA ? ucu [ [2] ] /? SS, 26] /? TT ddd [3] = Mod [AA . ccc [ [3] ] / ? SS , 26] / . TT ddd [4] = Mod [AA ? ccc [ [4] ] / ? SS, 26] / . TT 将四组密文字母连接在一起. eee = aoin[ddd[l] A ddd[2] F ddd [3] f ddd [4]] TWO,鶴剜肢伸福Pfi fflOB),科上辭槪的隸. SS = {a - 1; b - 2f c - 3,(l -4/ e-5, f - 6, g-?;h - 8/ i - 9; j - 10; k - 11; l- 12; n - 13, n - 14;

文档评论(0)

ggkkppp + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档