古典密码——代替密码


代替密码:代替密码是指先建立一个替换表,加密时将需要加密的明文依次通过查表,替换为相应的字符。明文字符被逐个替换后,生成无任何意义的字符串,即密文。代替密码的密钥就是其替换表。

 

根据密码算法加密时使用替换表多少的不同,代替密码又可分为单表代替密码和多表代替密码。

 

单表代替密码

定义:密码算法加解密时使用一个固定的替换表

 

移位密码

 

即把26个字母与整数0,1,2,3......一一对应

 

 

 

 

使用密钥的单表代替密码

 

 

 

 

 

仿射密码

 

 

 

单表代替密码特点
1. 密钥量很小,不能抵抗穷尽搜索攻击
2. 没有将明文字母出现的概率掩藏起来,很容易受到统计分析的攻击

 

多表代替密码

定义:密码算法加解密时使用多个替换表

 

普莱费尔密码(Playfair Cipher)

 

 假设密钥为playfair is a digram cipher,可得字母矩阵为:

 

 

 

Playfair密码的特点
1. 虽然仅有26个字母,但有26*26=676种双字母组合。因此识别各种双字母组合要困难得多
2. 各个字母组的频率要比单字母呈现出大得多的范围,使得频率分析困难得多
3. 仍然使许多明文语言的结构保存完好,使得密码分析者能够利用

 

 

维吉尼亚密码(Vigenere Cipher)

 

 

 

举例:

 

 

 

 

希尔密码(Hill Cipher)

 

举例:

 

Hill密码特点
1. 可以较好地抑制自然语言的统计特性,不再有单字母替换的一一对应关系,对抗“惟密文攻击”有较高安全强度。
2. 密钥空间较大,在忽略密钥矩阵k可逆限制条件下,|k|=26^(n*n)
3. 易受已知明文攻击及选择明文攻击

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM