Hill密码是一种简单的加密手段。
可以实现同一个字母在不同的上下文中,对应密文中不同的字母。
加密前明文是几个字母,加密后还是几个字母。容易被穷举。
以下,我们都用英文字母举例,比较简单明了
下面简要介绍一下加密过程
首先,要将26个字母,编号,例如
a:1 b:2 c:3 d:4 e:5 f:6 g:7 h:8 i:9 j:10 k:11 l:12 m:13
n:14 o:15 p:16 q:17 r:18 s:19 t:20 u:21 v:22 & w:23 & x:24 y:25 z:0
其次,确定密钥,在这里其实就是加密矩阵,Hill2密码对应的是一个二阶矩阵,Hill n密码对应的就是一个N接矩阵了,
我们这里取二阶,比较简单。如:
取个加密矩阵 A=(1 2;0 3)&& 说明:大家凑合着看啊,其实是& 1 2是一行,0 3是一行。画个矩阵太麻烦了
以下说明,矩阵里加了& 分号 就表示换行哈
有了 字母编号表和密钥 就万事具备了。
我们来将下面一段& 字母加密
woshigetiancai
首先,将字母两两分组 wo&,sh, ig, et, ia, nc, ai。
这里刚好是偶数个字母,如果是奇数个,就重复一次,最后一个字母,凑成偶数。
其次,查询字母标号表,将分好组的字母,写成向量形式,其实就是写成一个1*2的矩阵(我就讨厌,那些书,
明明就是个1*2矩阵,偏偏要要定义成向量,增加无谓的概念):如
w 对应 23,o对应15,写成向量(23;15)(这个是竖着写的,实在不好意思,矩阵实在不太好画,手头没matlab)
以此类推,得到7组向量,分别是
wo对应的(23;15)&&&&& sh对应的(19;8)&& ig对应的(9;7)&& et对应的(5;20)& ia对应的(9;1) nc对应的(14;3)&& ai对应的(1;9)
将 这些向量分别 左乘 密钥 注意:这里矩阵这个东西比较麻烦,不符合乘法交换律,两个矩阵左乘和右乘的结果是不一样的
左乘就是将 密钥放到 左边,右边是 向量& A*P(向量)
又得到7组向量,分别是
(38;45),(27;24),(16;24),(25;60),(10;3),(17;9),(10;27)
这时候,我们就遇到了一个问题,我们定义的字母标号表是& 0~25的,这里又是45 ,又是 60的,怎么办??
没关系,遇到比25大的,我们就 减26 知道,让数字落在 0~25之间就可以了
例如 原向量 (38;45) 我们就变成了 (12;19),这样就落在我们的字母标号表里了,很简单吧
以此类推,最后得到的 7组向量就变成了
(12;19),(1;24),(14;24),(25;8),(10;3),(17;9),(10,1)
最后再将数字通过字母标号表 对照过来就可以了
这里是 lsaxnxyhjcqija& 这样就和原字符有很大的区别了吧。
hill密码,加密是通过三个手段 一个是:字母标号表,一个是:加密矩阵,就是密钥,最后一个是:加密矩阵的阶数。
如果想简单的通过 穷举 来破解的话 ,还是有一定难度的。
阅读(...) 评论() &密码学习题_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
密码学习题
上传于||暂无简介
阅读已结束,如果下载本文需要使用1下载券
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,查找使用更方便
还剩1页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢 上传我的文档
下载
收藏
该文档贡献者很忙,什么也没留下。
下载此文档
正在努力加载中...
中山大学密码学与网络安全期末复习题
下载积分:3000
内容提示:中山大学密码学与网络安全期末复习题
文档格式:PDF|
浏览次数:1|
上传日期: 12:31:48|
文档星级:
该用户还上传了这些文档
中山大学密码学与网络安全期末复习题
官方公共微信