代表代替密码
凯撒密码
加密 C=(p+3)mod26
Playfair密码
Playfair算法基于一个5*5的字母矩阵,该矩阵使用一个关键词构造,方法是按从左到右、从上到下顺序,填入关键词的字母(去除重复字母)后,将字母表其作余字母填入。
关键词取:monarchy(密钥) 得到一个playfair矩阵
M | O | N | A | R |
C | H | Y | B | D |
E | F | G | I/J | K |
L | P | Q | S | T |
U | V | W | X | Z |
加解密规则参考https://www.cnblogs.com/0zcl/p/6105825.html
Hill 密码
定义M的逆矩阵M^(-1) 有M*M^(-1)=I,I为单位矩阵.
C=E(K,P)=PKmod26
P=D(K,C)=CK(-1)mod26=CKK(-1)=C
字母频率统计攻击
- 对单表代换密码的破译步骤:
- 统计密文字母出现频率
- 将统计结果与自然语言频率表对比,确定部分密钥
- 结合连接特征和重复特征,确定部分密钥
- 语义上,猜测其它密钥
双、三字母的频率统计表往往很有帮助
多表替换
维吉尼亚密码
![[d804122d43323968001c920a.jfif]](https://yyxyy-1259114291.cos.ap-chengdu.myqcloud.com/weijiniya.jpg)
一次一密
- 使用与消息一样长且无重复的随机密钥来加密消息。密钥只对一个消息加解密,之后丢弃不用。
- 不可攻破
难点
- 产生大规模随机密钥有实际困难
- 密钥的保护和分配