单表代换密码
代换是对每个字母逐个进行。在单表代换中,明密文一一对应。所以说,一般有两种方式来进行破解:
- 密钥空间小时可采用暴力破解
- 密文长度足够长时,使用词频分析
凯撒密码(Keyed Caesar)
凯撒密码(Caesar)加密时会将明文中的 每个字母 都按照其在字母表中的顺序向后(或向前)移动固定数目(循环移动)作为密文。
特定的凯撒密码:
- 1)偏移量为 13时 ROT13
- 2)一种基于密钥的凯撒密码 Keyed Caesar:利用一个密钥,将密钥的每一位转换为数字(一般转化为字母表对应顺序的数字),分别以这一数字为密钥加密明文的每一位字母。
破解:
- 遍历26个偏移量
- 词频分析(密文多时适用)
移位密码
与凯撒密码类似,区别在于移位密码不仅会处理字母,还会处理数字和特殊字符,常用 ASCII 码表进行移位。
破解:遍历所有的可能性
简单替换密码
简单替换密码(Simple Substitution Cipher)加密时,将每个明文字母替换为与之唯一对应且不同的字母。它与恺撒密码之间的区别是其密码字母表的字母不是简单的移位,而是完全是混乱的。
破解:由于这种加密方式导致其所有的秘钥个数是26!,所以几乎上不可能使用暴力的解决方式。所以我们 一般采用词频分析。