资源描述:
《武汉大学密码学课件-张焕国教授76165》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、密密码码学学(第二讲)古典古典密码密码张焕国武汉大学计算机学院目目录录11、、密码学密码学的基本概念的基本概念22、、古典古典密码密码33、数据、数据加密标准(DES加密标准(DES))44、、高级高级数据加密标准(数据加密标准(AESAES))55、中国、中国商用密码(SMS4商用密码(SMS4))66、分组、分组密码的应用技术密码的应用技术77、、序列密码序列密码88、习题、习题课:复习对称密码课:复习对称密码99、公开、公开密钥密码(1密钥密码(1))目目录录1010、、公开密钥密码(公开密钥密码(22))11、、数字签名
2、(数字签名(1)12、数字签名(2)1313、、HASH函数1414、、认证认证1515、、密钥管理密钥管理1616、、PKIPKI技术技术1717、习、习题课:复习公钥密码题课:复习公钥密码1818、总复习、总复习//检查:检查:综合实验一、古典密码虽然用近代密码学的观点来看,许多古典密码是很不安全的,或者说是极易破译的。但是我们不能忘记古典密码在历史上发挥的巨大作用。另外,编制古典密码的基本方法对于编制近代密码仍然有效密码仍然有效。一、古典密码C.D.Shannon:ò采用混淆、扩散和乘积的方法来设计密码ò混淆:使密文和明文
3、、密钥之间的关系复杂化ò扩散:将每一位明文和密钥的影响扩大到尽可能多的密文位中。ò乘积和迭代:多种加密方法混合使用对一个加密函数多次迭代古典密码编码方法:ò置换,代替,加法一、古典密码1、置换密码•把明文中的字母重新排列,字母本身不变,但其位置改变了,这样编成的密码称为置换密码。•最简单的置换密码是把明文中的字母顺序倒过来最简单的置换密码是把明文中的字母顺序倒过来,,然后截成固定长度的字母组作为密文然后截成固定长度的字母组作为密文。。明文:明晨5点发动反攻点发动反攻。。MINGMINGCHENCHENWUWUDIANDIANFA
4、FADONGDONGFANFANGONGGONG密文:GNOGNGNOGNAFGNOAFGNODAFNADAFNAIDUWNIDUWNEHCGNEHCGNIMIM一、古典密码•把明文按某一顺序排成一个矩阵,某一顺序排成一个矩阵,然后按另一顺然后按另一顺序选出矩阵中的字母以形成密文,最后截成固定长度的字母组作为密文。例如:明文:MINGMINGCHENCHENWUWUDIANDIANFAFADONGDONGFANFANGONG矩阵:MINGCH选出顺序:按列ENWUDIANFADO改变矩阵大小和取出序列NGFANG可得到不同的密码
5、ONG密文:MEANOMEANOINNGNINNGNNWFFGNWFFGGUAAGUAACDDNCDDNHIOG一、古典密码•理论上:①①、、置换密码的加密钥是置换矩阵p,--11解密钥是置换矩阵p。123…nP=a1a2a3…an②②、、置换密码经不起已知明文攻击。一、古典密码2、、代替密码代替密码首先构造一个或多个密文字母表首先构造一个或多个密文字母表,,然后用然后用密文字母表中的字母或字母组来代替明文字母或字母组或字母组,,各字母或字母组的相对位置不变各字母或字母组的相对位置不变,,但其本身改变了但其本身改变了。。这样编成
6、的密码称为代替密这样编成的密码称为代替密码码。。①单表代替密码②多表代替密码③多名代替密码一、古典密码⑴⑴..单表代替密码只使用一个密文字母表只使用一个密文字母表,,并且用密文字母表中的一并且用密文字母表中的一个字母来代替明文字母表中的一个字母代替明文字母表中的一个字母。。明文字母表:A=={{aa,,aa,,......,,aa}01nn--11密文字母表:BB=={{bb,,bb,,......,,bb}01nn--11定义一个由定义一个由AA到到BB的映射:的映射:ff::A→BA→Bf(a)=)=bbii设明文:MM==
7、((mm,,mm,,......,,mm)),,01nn--11则密文:CC=(f(m=(f(m),f(m),),......,f(m,f(m))))。。01nn--11简单代替密码的密钥就是密码的密钥就是映射函数映射函数ff或或密文字母表密文字母表B。一、古典密码⑴单表代替密码①、加法密码•AA和和BB是有是有n个字母的字母表。•定义一个由定义一个由AA到到BB的映射:的映射:f:A→Bf(a)=b=aiijj=i+kmodn•加法密码是用明文字母在字母表中后面第是用明文字母在字母表中后面第kk个字母个字母来代替。•K=3K=
8、3时是著名时是著名的凯撒密码。一、古典密码⑴单表代替密码②、乘法密码•AA和和BB是有是有n个字母的字母表。•定义一个由定义一个由AA到到BB的映射:的映射:f:A→Bf(a)=b=aiijj=ikmodn其中,其中,((n,k)=1n,k)=1。。•注意:只有