传统密码技术
2016-11-28 18:55
148 查看
密码(cryptography)是一种信息处理体系,涉及信息的机密性、完整性、认证性和不可否认性等许多方面。
密码学发展大致分为古典密码时期、近代密码时期以及现代密码时期, 其中,古典密码时期与近代密码时期成为传统密码时期。
1976年后,美国数据加密标准DES公布,使得密码学研究公开,并得到迅速发展里程碑事件
1976年,Diffe和Hellman发表了《密码学的新方向》,提出了一种新的密码设计思想,从而开创了公钥密码学的新纪元。第二次飞跃
1978年,Rivest、Shamire和Adleman首先提出第一个实用的公钥密码体制RSA。里程碑事件
譬如将明文“Beijing 2008 Olympic Games”加密,则代表明文的矩阵为: M=⎡⎣⎢⎢⎢BglGe2yai0mmJ0pei8isnOc⎤⎦⎥⎥⎥
其密钥可表示为 (1,4,3,5,6) 以矩阵形式表示为: σ=⎡⎣⎢⎢⎢⎢⎢⎢00001010000001010000000000010000010⎤⎦⎥⎥⎥⎥⎥⎥
则加密过程就是M×σ
解密过程就是将加密矩阵叉乘σ−1
假设明文可以等长度划分为若干个分组,则每个分组的字母可以看作是一个m维向量。 倘若密钥为(1 5 6 2 3) 则对应的密钥为:σ=⎡⎣⎢⎢⎢⎢⎢⎢⎢⎢001000000001010000000100100000000010⎤⎦⎥⎥⎥⎥⎥⎥⎥⎥
假设某明文段所表示的向量为 p=(A,B,C,D,E,F)
则加密过程为:p×σ=(C,F,B,D,A,E) 解密过程就是将密文叉乘 σ−1
代换密码通常是指建立一个代换表,加密时需要将加密的明文依次通过查表,替换为相应的字符,明文字符被逐个替换后,生成无任何意义的字符串就是密文。 这样的代换表称为密钥。
按照一个明文子母是否总是被一个固定的字符替代,可以划分为单表代换密码 和 多表代换密码 两种。
多表代换密码分析 - 重合指数
Hill密码分析 - 明文/密文对
值得注意的是,在单表代换的情况下, 明文与密文的IC值是相同的。
由于在现实世界中密文的长度有限,一般采用IC的无偏估计值来近似计算IC。IC′=∑i=1nxi(xi−1)L(L−1)
交互重合指数的性质等同于重合指数的性质
任何两列的一组 MIC(yi,yj) 中可能存在一个值在0.065左右,那么 ki−kj≡h mod 26
密码学发展历程
自从人类社会有了战争,就有了保密通信,就需要信息处理体系。在1949年以前,密码的研究与应用仅仅是文字变换技术,简称为密码术。自1949年之后,Shannon做了相关的工作,发表了《保密系统的通信理论》一文,为密码学的发展奠定了坚实的理论基础。密码学发展大致分为古典密码时期、近代密码时期以及现代密码时期, 其中,古典密码时期与近代密码时期成为传统密码时期。
密码学的两次飞跃与两个里程碑事件
1949年Shannon发表题为《保密系统的通信理论》,为密码系统建立了理论基础,从此密码学成为了一门科学。第一次飞跃1976年后,美国数据加密标准DES公布,使得密码学研究公开,并得到迅速发展里程碑事件
1976年,Diffe和Hellman发表了《密码学的新方向》,提出了一种新的密码设计思想,从而开创了公钥密码学的新纪元。第二次飞跃
1978年,Rivest、Shamire和Adleman首先提出第一个实用的公钥密码体制RSA。里程碑事件
传统密码技术
传统密码体制的技术、思想以及分析方法虽然很简单,但是反映了密码设计和分析的思想,是学习密码学的基本入口,对于理解、设计和分析现代密码学仍然具有借鉴意义。置换密码
根据一定规则重新排列明文,以便打破明文的结构特性。置换密码的特点是保持明文的所有字符不变,只是利用置换打乱了明文字符位置和次序。列置换密码
其加密过程是,首先将明文以设定的固定分组宽度m按行写出,即每行有m个字符。若明文长度不是m的整数倍,则不足部分用双方约定的方式填充。按照1,2,⋯,m 的某一置换σ 交换列的位置次序得到字符矩阵[MP]m×n 。然后,将矩阵按[MP]m×n 按照列1,2,⋯,m 的顺序依次读出得到密文序列C。譬如将明文“Beijing 2008 Olympic Games”加密,则代表明文的矩阵为: M=⎡⎣⎢⎢⎢BglGe2yai0mmJ0pei8isnOc⎤⎦⎥⎥⎥
其密钥可表示为 (1,4,3,5,6) 以矩阵形式表示为: σ=⎡⎣⎢⎢⎢⎢⎢⎢00001010000001010000000000010000010⎤⎦⎥⎥⎥⎥⎥⎥
则加密过程就是M×σ
解密过程就是将加密矩阵叉乘σ−1
周期置换密码
周期置换密码是将明文串P按照固定的长度m分组,然后对每组中的子串按照1,2,⋯,m 的某个置换重排位置从而得到密文C。其中,密钥σ 包含分组长度信息。解密时同样对密文C按长度m分组,并按照 σ 的逆置换 σ−1 把每组子串重新排列为欸之从而得到明文P。假设明文可以等长度划分为若干个分组,则每个分组的字母可以看作是一个m维向量。 倘若密钥为(1 5 6 2 3) 则对应的密钥为:σ=⎡⎣⎢⎢⎢⎢⎢⎢⎢⎢001000000001010000000100100000000010⎤⎦⎥⎥⎥⎥⎥⎥⎥⎥
假设某明文段所表示的向量为 p=(A,B,C,D,E,F)
则加密过程为:p×σ=(C,F,B,D,A,E) 解密过程就是将密文叉乘 σ−1
代换密码
所谓代换,就是将明文中的一个字母由其它字母、数字或符号替代的一种方法。代换密码通常是指建立一个代换表,加密时需要将加密的明文依次通过查表,替换为相应的字符,明文字符被逐个替换后,生成无任何意义的字符串就是密文。 这样的代换表称为密钥。
按照一个明文子母是否总是被一个固定的字符替代,可以划分为单表代换密码 和 多表代换密码 两种。
希尔密码
与上文所属周期置换密码神似, 只不过叉乘的右部的矩阵可以扩充为n×n 的非奇异矩阵,且满足 (det(k),26)=1 即满足结果与26互素。维尔姆密码
这种密码是序列密码的起源。 其原理是 ci=mi xor ki mod 2 i=1,2,3,⋯传统密码体制分析
单表代换密码分析 - 频率多表代换密码分析 - 重合指数
Hill密码分析 - 明文/密文对
频率分析法
统计密文中每个字母出现的频率,确定其对应的范围。 再辅助以字母组合、位置特殊性以及连续的同一字母等特性,容易确定明文字母与密文字母的对应关系。 然后根据上下文之间的关联和构词规则来进行密文分析。重合指数法
假设某种语言由n个字母组成,每个字母i发生的概率为pi,1≤i≤n , 则重合指数就是指两个随机字母相同的概率: IC=∑i=1np2i值得注意的是,在单表代换的情况下, 明文与密文的IC值是相同的。
由于在现实世界中密文的长度有限,一般采用IC的无偏估计值来近似计算IC。IC′=∑i=1nxi(xi−1)L(L−1)
交互重合指数
假设x和y是两个长度分别为n和n’的字符串,x和y的交互重合指数定义为x中的一个随机元素与y中的一个随机元素相同的概率,记为MIC(x,y) 假设英文字母在x,y中出现次数分别为 fif′i 那么交互重合指数就是MIC(x,y)=∑25i=0fif′inn′交互重合指数的性质等同于重合指数的性质
交互重合指数的应用
假设已经确定密钥的长度m,密文子串yi 中的各个密文字母都是由同一个加法密码得到的。MIC(yi,yj)=∑h=025ph+ki(mod 26)pkj (0≤h≤25)任何两列的一组 MIC(yi,yj) 中可能存在一个值在0.065左右,那么 ki−kj≡h mod 26
相关文章推荐
- 传统密码技术
- 密码学复习笔记1【基本概念与传统密码技术】
- 【密码学笔记】传统加密技术——对称密码模型
- 技术人员如何跟传统行业打交道?
- 2010年技术文章 Apache生成密码文件
- “读心术”或将代替传统密码:EEG识别脑电波,以此来鉴别身份
- 第七次作业 信息安全、评估、密码技术
- 高端技术:椭圆曲线密码体制与电子政务
- ajax技术 vs 传统的asp无刷新技术.(转)
- 技术点-MD5密码加密-32/16 位
- 信息安全导论-密码技术部分-读书笔记-1
- 系统恢复技术-忘记root密码,怎样改
- 密码技术应用系列之开篇
- 业务零影响!如何在Online环境中巧用MySQL传统复制技术
- 替代传统C/S和B/S技术的下一代客户/服务器编程技术
- 登录工程一:传统 Web 应用中的身份验证技术
- 一种将传统机床主轴革命性升级技术(德国)
- 高校应该利用网络技术充实和完善传统图书馆建设
- QQ空间密码破解技术
- Android DataBinding数据绑定技术在传统ListView中的使用简例