1、密码的加密与解密的数学模型密码学的基本概念 密码学基本模型发送方 接收方Encryption加密Decryption解密加密: c= EK (m) 解密: m= DK (c)不安全信道密码分析( Cryptanalysis)Plaintext 明文Key解密密匙Key加密密匙Plaintext 明文Ciphertext 密 文 明文用 M( Message, 消息)或 P( Plaintext, 明文)表示,它可能是比特流、文本文件、位图、数字化的语音流或者数字化的视频图像等。 密文用 C( Cipher) 表示,也是二进制数据,有时和M一样大,有时稍大。通过压缩和加密的结合, C有可能比 P
2、小些。 加密函数 E作用于 M得到密文 C, 用数学公式表示为:E( M) =C。 解密函数 D作用于 C产生 M, 用数据公式表示为: D( C) =M。 先加密后再解密消息,原始的明文将恢复出来, D( E( M) =M必须成立。置换密码Caesar 密码 ABCDEFGHIGKLMNOPQRSTUVWXYZDEFGHIGKLMNOPQRSTUVWXYZABCCaesar was a great soldier密码本密文Fdhvdu zdv d juhdw vroglhu明文密文CAESAR 密码 : c=( m+ 3) Mod 26A B C D E F J H I J K0 1 2 3
3、 4 5 6 7 8 9 10仿射变换密码上面移位置换密码的一个简单变种就是仿射变换密码,其数学表示为在上面例子移位置换密码下,明文中相邻的字母对应的密文字母也是相邻的,如 A和 B对应的密文字母分别为 D和 E,但在仿射变换下, 对应的密文字母分别为F(3*0+5)mod26=5=F)和 I, 它们有 3个字母的间隔 (a=3)例 8.3假设下面是仿射变换加密的,试破译此文FSFPR EDLFS HRLER KFXRS KTDMM PRRKF SFUXA FSDHKFSPVM RDSKA RLVUU RRIFE FKKAN EHOFZ FUKRE SVVS假设此问题由 26个英文字母组成,取 m=26.由于与 26互素, a有 12种不同的取法, b有 26种不同的取法,所以放射变换有 12*26=321种。可采取穷举法来破译。可以用频率法,即密文中出现次数最多的字母与英文中最常见的字母对应。在密文中 在平常统计中F: 出现 12次 E: 出现频率 13.04%R: 出现 12次 T: 出现频率 13.04%S: 出现 9次 Z: 出现频率 0.08%K: 出现 8次 GTGAE RCSGT KESRE RKLGU GXDER TMMT利用上述解密公式对密文进行解密得到:这是一串没有意义的字符串,解密失败