替代密码又分为单表替代密码,多表替代密码
1. 单表替代密码
单表替代密码又称简单替代密码,他只使用一个密文字母表,并且由密文字母表中的一个字母代替明文字母表中的一个字母。
单表替代建立了由密文到明文的一对一的映射关系。
移位密码就是一种单表替代密码
大佬的博客又划分出了加法密码,乘法密码。我觉得加法密码就是移位密码,乘法密码就是栅栏密码。
再有就是仿射密码,仿射密码结合加法密码和乘法密码,用一个多项式来进行明文的变换。
f(x)=(ax+b) mod m
2. 多表替代密码
由于单表代替密码只是用一个密文字母表,很容易破解。提高密码强度的一个方法是采用多个密文字母表。
最典型的多表代替密码是Vigenre密码。
他有一个密码表通过密钥与明文的对应关系来确定密文,
例如,原文ATTACKATDAWN,选择某一关键词并重复而得到密钥,如关键词为LEMON时,密钥为:LEMONLEMONLE,对于明文的第一个字母A,对应密钥的第一个字母L,于是使用表格中L行字母表进行加密,得到密文第一个字母L。类似地,明文第二个字母为T,在表格中使用对应的E行进行加密,得到密文第二个字母X。以此类推,可以得到:
明文:ATTACKATDAWN密钥:LEMONLEMONLE密文:LXFOPVEFRNHR
解密的过程则与加密相反。例如:根据密钥第一个字母L所对应的L行字母表,发现密文第一个字母L位于A列,因而明文第一个字母为A。密钥第二个字母E对应E行字母表,而密文第二个字母X位于此行T列,因而明文第二个字母为T。以此类推便可得到明文。
于此行T列,因而明文第二个字母为T。以此类推便可得到明文。