脚本宝典收集整理的这篇文章主要介绍了第二章古典密码体制,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
转https://www.cnblogs.COM/WITtPEng/p/8978737.htML
古典密码体制
1.置换密码
1.列置换密码
- 加密过程:(1)明文按照固定宽度m按行写出,不足部分按照双方约定方式填充,得到字符矩阵;
(2)进行置换操作;
(3)读出后即为密文
- 解密过程:将加密密钥逆置,按照加密过程操作,即可由密文得到明文。
- 如密钥e=(143)(56) 意思是1->4,4->3,3->1,5->6,6->5
2.周期置换密码
- 明文按照固定长度m分组,对字符串编号,重新排列位置从而得到密文;解密时将加密密钥逆置得到解密密钥,重新排列位置后得到明文。
2.代换密码
- 代换密码就是将明文中的字符替换为其他字符的密码体制。
单表代换密码
- 基于密钥的代换密码,明文字母对应的密文字母在密文中保持不变
- 仿射密码:e(x)=ax+b(mod26) (a,b属于Z26,gcd(a,26)=1)
x=d(e(x))=a-1(e(x)-b)(mod26)
多表代换密码
- 明文中不同位置的同一明文字母在密文中对应的密文字母不同,能够很好地对抗统计密码分析
- 实例:
playfair密码 |
加密步骤:a.在适当位置闯入一些特定字母,譬如q,使得明文字母串的长度为偶数,并且将明文字母串按两个字母一组进行分组,每组中的两个字母不同。
b.明文m1m2对应的密文c1c2的确定:m1和m2同行或同列,则c1为m1后的字符,c2为m2后的字符;若m1和m2既不同行也不同列,则c1c2在m1m2所确定的矩形的其他两个角上,c1和m1同行,c2和m2同行。
|
Vigenere(维吉尼亚密码) |
例:
|
Vernam(维尔姆密码) |
|
Hill(希尔密码) |
- [p]1*n≡([c]1*n*[k]-1m*n)(mod 26)62333333
- 所使用的矩阵必须为非奇异矩阵
- 安全性:能较好抵抗统计分析法,对抗唯密文攻击的强度较高,但易受已知明文攻击。
- 逆矩阵的求法:
|
古典密码的分析——统计分析法
单表代换密码分析
多表代换密码分析
- 卡西斯基(Kasisks)测试法:找相同字母间隔字母数的最大公因子,有可能是周期k
- 重合指数法:计算概率分析重合指数IC=Σpi2 ,IC高的可能是单表代换,低的可能是多表代换。
- 确定密钥:拟重合指数测试法:x=Σriqi
- 恢复明文并验证
明文-密文对分析法
脚本宝典总结
以上是脚本宝典为你收集整理的第二章古典密码体制全部内容,希望文章能够帮你解决第二章古典密码体制所遇到的问题。
如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。