替代密码
单表替代
每个字母对应的密文字母固定。
- 一般单表替代
密钥空间n = 26!
- 移位密码
凯撒密码就是密钥为3的移位密码。 - 仿射密码
加密:k1*m + k0 (mod 26)
要求k1与26互素,避免出现多个明文对应同样的密文。 - 密钥短语密码
密钥是一个短语(单词),写在替代表最前端,整张替代表去掉所有重复字母。
多表替代
- 维吉尼亚密码
a-z用0-25编号,明文对应数字按位加上密钥(长度不够就循环使用)对应数字mod26,得到的数字译成字母就是密文。 - 希尔密码
密钥是一个n*n矩阵,将明文分为长度为n的组,密钥矩阵乘上每个分组矩阵,结果mod26得到密文对应矩阵,按原顺序拼成完整密文。 - 一次一密密码
难以做到。 - Playfair密码
基于一个5*5方格。
密钥去除重复字母按行从左上开始填入,具体类似于密钥短语密码填替换表的方法。i和j填在同一格。
明文两个分为一组。遵循下述复杂规则:
- 若两字母同行,分别加密为右侧紧邻字母。
- 若两字母同列,分别加密为下方紧邻字母。
- 若不同行不同列,分别加密为由两字母确定的矩形的同行字母。
- 若两字母相同,则在两字母中间插入一个事先约定的字母,按上述规则处理。
- 若明文长度为奇数,在末尾插入事先约定字母。
- 上下边界、左右边界进行循环。
置换密码
周期置换密码
给出一个置换密钥Π,按密钥长度将明文分组,每一组按照密钥进行置换后按顺序拼成密文。
列置换密码
给出一个置换密钥Π,明文按密钥长度为一行写出,按列执行密钥的置换。
转轮机密码
慢、中、快三个转子,慢端输入明文,快端输出密文。每次按键,快端向下移动一个位置,26次后中端移动,中端移动16次后慢端移动。加解密双方需要使用同样的转轮机。
标签:字母,明文,密码,密钥,古典,密文,密码学,置换 From: https://www.cnblogs.com/ww0809/p/18061825