本章主要介绍了几种著名的密码:

  • 凯撒密码
  • 简单替换密码
  • Enigma

以及两种破译密码的方式:

  • 暴力攻击
  • 频率分析

凯撒密码

凯撒密码(Caesar cipher) 是凯撒使用过的密码,于公元前100年左右诞生于古罗马。

凯撒密码是通过将明文中所使用的字母表按照一定的字数平移进行加密的。

例如,要加密的信息为 alfons 这个名字。将明文中的字母逐一进行加密得到 BMGPOT。解密时只需将密文反向平移姐可以得到明文 alfons

(上述的凯撒密码至平移了一位,也可以平移任意位)


替换密码

替换密码(substitution cipher) 使用对特定字符进行替换的方式进行加密。

例如下面,就是对字母表的字母进行一对一的替换。

1
2
abcdefghijklmnopqrstuvwxyz
qwertyuiopasdfghjklzxcvbnm

假设我们要加密的明文为 alfons,则加密后的密文为 qsygfl

当接收者拿到发送者的密码本后,就可以对密文进行解密。

替换密码很难通过暴力破解来破译

但有经验的语言学家可以通过 频率分析 来破译。


Enigma

Enigma是二十世纪初,德国人发明的一种能够进行加密和解密操作的机器。

发送者将明文通过 密码本 中的 每日密码 使用 Enigma 加密得到密文,通过无线电发送到接收者,接收者通过读取 密码本 中的 每日密码 使用 Enigma 解密得到明文。类似于加密函数。

Enigma 与 1940 年被 阿兰·图灵 研制的机器破解。


暴力破解

暴力破解,遍历所有有可能的密钥,直至找到正确的密钥。


频率分析

频率分析,在替换密码方式中使用较广,通过对使用字母的频率进行分析,能够较快的得出明文。