资源描述:
《2现代密码学第二讲:古典密码学》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、《现代密码学》第二讲古典密码学1上讲内容回顾密码学分类密码学与信息安全的关系本章主要内容代换密码置换密码Hill密码转轮密码古典密码的惟密文攻击方法密码分类代换密码(substitution):代换是古典密码中用到的最基本的处理技巧。所谓代换,就是将明文中的一个字母由其它字母、数字或符号替代的一种方法。凯撒密码仿射密码单表代换多表代换置换密码(permutation):将明文字符按照某种规律重新排列而形成密文的过程。Hill密码转轮密码注意事项本讲中,被加密的文本均假设为26个英文字符,在算
2、法描述中,也常常用数字表示每个字母,对照表如下:abcdefghijklm0123456789101112nopqrstuvwxyz13141516171819202122232425本章主要内容代换密码置换密码Hill密码转轮密码古典密码的惟密文攻击方法凯撒密码已知最早的代换密码,又称移位密码•代换表(密钥):abcdefghijklmnopqrstuvwxyzDEFGHIJKLMNOPQRSTUVWXYZABC•数学描述:c=E(p)=(p+k)mod(26)p=D(c)=(c–k)mo
3、d(26)明文p∈Z26,密文c∈Z26,密钥k取[1,25],只有25个凯撒密码例:使用其后的第三个字母代换该字母明文:meetmeafterthetogaparty密文:PHHWPHDIWHUWKHWRJDSDUWB仿射密码移位密码的扩展明文p∈Z26,密文c∈Z26,密钥k=(a,b)∈Z’26×Z26且gcd(a,26)=1.加密:c=E(p)=(a×p+b)mod26解密:p=D(c)=(c–b)×a-1mod26仿射密码例:令密钥k=(7,3),且gcd(7,26)=1.明文hot=(7
4、,14,19)加密:(7×7+3)mod26=0(7×14+3)mod26=23(7×19+3)mod26=6密文为(0,23,6)=(a,x,g)解密:7-1=15=-11mod26(0-3)×15mod26=7(23-3)×15mod26=14(6-3)×15mod26=19明文为(7,14,19)=(h,o,t)仿射密码练习:令密钥k=(9,3),且gcd(9,26)=1.明文hot=(7,14,19),求加解密过程。加密:7*9+3=14mod2614*9+3=25mod2619*9+3=1
5、8mod269*3-26=1所以9-1=3mod26解密:(14-3)*3=7mod26(25-3)*3=14mod26(18-3)*3=19mod26单表代换密码代换表是26个字母的任意置换例:加密函数:abcdefghijklmnopqrstuvwxyzDKVQFIBJWPESCXHTMYAUOLRGZN解密函数:ABCDEFGHIJKLMNOPQRSTUVWXYZsgmakexofhbvqzujdwlptcinry明文:ifwewishtoreplaceletters密文:WIRFRWAJUH
6、YFTSDVFSFUUFYA单表代换密码练习:•明文:nicework,使用上例中的单表代换表,求密文。•密文:XWVFRHYE多表代换密码加密明文消息时采用不同的单表代换,由密钥具体决定采用哪个表代换消息,密钥通常是一个词的重复。简化多表代换密码-维吉尼亚密码(VigenèreCipher):由26个类似caesar密码的代换表组成多表代换密码维吉尼亚密码:在长为m的密码中,任何一个字母可被影射为26个字母中的一个明文p∈(Z26)m,密文c∈(Z26)m,密钥k∈(Z26)m加密c=(p1+k1
7、,,p2+k2,,„,pm+km)mod26;解密p=(c1-k1,,c2-k2,,„,cm-km)mod26.多表代换密码例:多表代换密码练习:•明文:nicework,密钥:hot,求密文。•密文:UWVLKHYY本章主要内容代换密码置换密码Hill密码转轮密码古典密码的惟密文攻击方法置换密码加密变换使得信息元素只有位置变化而形态不变,如此可以打破消息中的某些固定模式(结构)明文p∈(Z26)m,密文c∈(Z26)m,密钥k∈{∏
8、定义在1,2,…,m上的置换}加密c=(p∏(1),p∏
9、(2),…,p∏(m))mod26;解密p=(c∏-1(1),c∏-1(2),…,c∏-1(m))mod26.置换密码例:密钥x123456∏(x)351642x123456∏-1(x)361524明文:shesellsseashellsbytheseashore分组:shesellsseashellsbytheseashore置换:EESLSHSALSESLSHBLEHSYEETHRAEOS置换密码练习:明文:niceworkX1234Pi(x)2413求密文和逆置