移位密码
将明文中字母重新排序形成密文。
倒序
顾名思义。
Rail-fence Cipher 栅栏密码
将明文分成N个一组,再将每组的第1、2、3...个字连起来,形成密文。
例子:
对password使用栅栏3加密。
分组:pas swo rd竖着读得到密文
psrawdso
曲路密码
将明文按约定的行列格式写好,再按一定的顺序读,得到密文。
例
明文: The quick brown fox jumps over the lazy dog
假如约定了格式为7列,将明文按顺序填入
从右下角开始,按顺序读得到密文:gesfcinphodtmwuqouryzejrehbxvalookT
替换密码
按照替换表或某种规则,将明文中每个字母替换成另一个字母形成密文。替换表可以自定义,也可以使用一些现成的。
有时候编码和单表很相似,所以一部分编码也会出现在这里。
Caesar 凯撒密码
将每个字母在字母表上向左或向右按照一定的位数(密钥)进行移动。
ZOO经过凯撒3后变为CRR
ROT13
密钥为13的凯撒密码。
Atbash
所有 A 都替换为 Z,所有 B 都替换为 Y,依此类推。
Affine Cipher 仿射密码
字母转编号,A=0、B=1……
加密:E(x) = (ax + b) mod 26
解谜:D(x) = (x - b)/a mod 26
a、b为密钥,a和26互质
ASCII
用二进制表示字母或数字。

摩尔斯电码
| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 |
|---|---|---|---|---|---|---|---|---|---|
| .---- | ..--- | ...-- | ....- | ..... | -.... | --... | ---.. | ----. | ----- |
| a | b | c | d | e | f | g | h | i | j | k | l | m | n | o | p | q | r | s | t | u | v | w | x | y | z |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| .- | -... | -.-. | -.. | . | ..-. | --. | .... | .. | .--- | -.- | .-.. | -- | -. | --- | .--. | --.- | .-. | ... | - | ..- | ...- | .-- | -..- | -.-- | --.. |

盲文
| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| a | b | c | d | e | f | g | h | i | j | k | l | m | n | o | p | q | r | s | t | u | v | w | x | y | z |
| ⠁ | ⠃ | ⠉ | ⠙ | ⠑ | ⠋ | ⠛ | ⠓ | ⠊ | ⠚ | ⠅ | ⠇ | ⠍ | ⠝ | ⠕ | ⠏ | ⠟ | ⠗ | ⠎ | ⠞ | ⠥ | ⠧ | ⠺ | ⠭ | ⠽ | ⠵ |
盲文都是三行二列的,每当题目中出现这个格式的信息或者六个一组的信息或者长宽比大概在3:2的矩形,都需要可以考虑盲文的可能性。
旗语 (semaphore)

每个旗语包含两个方向,随时注意这种信息。
猪圈密码 (pigpen 猪笔)

夏多密码

作者麦克斯韦·格兰特(Maxwell Grant)的中篇小说《Shadow Magazine》中,Shadow(“影子”)是该系列的英雄。小说第十期《死亡之链(Chain of Death)》中出现的密码。
死亡之链

出处同上。
北约音标字母
| 字母 | 代码 |
|---|---|
| A | Alpha |
| B | Bravo |
| C | Charlie |
| D | Delta |
| E | Echo |
| F | Foxtrot |
| G | Golf |
| H | Hotel |
| I | India |
| J | Juliett |
| K | Kilo |
| L | Lima |
| M | Mike |
| N | November |
| O | Oscar |
| P | Papa |
| Q | Quebec |
| R | Romeo |
| S | Sierra |
| T | Tango |
| U | Uniform |
| V | Victor |
| W | Whiskey |
| X | X-ray |
| Y | Yankee |
| Z | Zulu |
要熟悉这几个单词,每当这些单词出现就能联想到。
九键
使用手机九键输入法键盘加密。每个字母被加密成两个数字,第一个数字是字母所在键对应的数字,第二个数字是该字母为该键上的第几个字母。

例:
hello加密后为4232535363
键盘
以下几个加密方法用到字母在键盘上的位置。
QWER
按照键盘上字母顺序加密,Q 替换为 1、W 替换为 2、E 替换为 3……
注意:不同国家的键盘排布可能有区别!
键盘坐标
将键盘的主键盘区第一行(数字行)作为横坐标。纵坐标自定义,q行、a行、z行分别为1、2、3。
每个字母加密成两个字符,即横坐标和纵坐标。
例:
hello加密为6231929291
V
每个字母加密为两个字符,第一个字符是该字母左上方向对应数字行的键,第二个字符是该字母右上方向对应数字行的键。

例:
hello加密为68349-9-90
棋盘
波利比乌斯密码(Polybius Square)
又称为波利比乌斯棋盘方阵密码。
根据下表:
A D F G X
------------
A | a b c d e
D | f g h i/j k
F | l m n o p
G | q r s t u
X | v w x y z

加密过程是将字母转为坐标,反之为解密。
普莱费尔密码(playfair)
选取一个英文字作密钥。除去重复出现的字母。将密钥的字母逐个逐个加入5×5的矩阵内,剩下的空间将未加入的英文字母依a-z的顺序加入。(将I和J视作同一字,或将Q去除)
将明文分成两个一组。若组内的字母相同,将X(或Q)插入两字母之间,重新分组(例如 HELLO 将分成 HE LX LO)。若剩下一个字,也加入X字。
在每组中,找出两个字母在矩阵中的地方。
若两个字母不在同一行和同一列,取和每个字母同行、和另一个字母同列的字母为密文。
若两个字母在同一行,取这两个字母右方的字母为密文(若字母在最右方则取最左方的字母)。
若两个字母在同一列,取这两个字母下方的字母为密文(若字母在最下方则取最上方的字母)。
例:
取playfair为密钥,得到矩阵:P L A Y F I/J R B C D E G H K M N O Q S T U V W X Z明文为
HELLO,分组后为HE LX LO。
加密后为KGYVRV
ADFGX密码
首先要有一个方格,将明文加密为坐标,再根据密钥进行一次移位机密。
例:
明文:Hello
假如方格为:A D F G X ------------ A | b t a l p D | d h o z k F | q f v s n G | g i/j c u x X | m r e w y假如密钥为:
CARGO
加密过程:
转换为坐标:DD XF AG AG DF
将坐标抄写在密钥下:C A R G O --------- D D X F A G A G D F按照密钥字母顺序“ACGOR”依次抄下该字下整列讯息
得到密文:DADGFDAFXG
ADFGVX密码
和ADFGX密码类似,表改为6×6的尺寸,包含26个字母和0-9的数字。
四方密码
用4个5×5的方格来加密。其中两个矩阵对应明文,两个矩阵对应密文。
例子
选两个单词作密钥,例如example和keyword。
类似普莱费尔密码的方法写成两个方格,放在右上角和左下角。左上角和右下角为不带密钥的方格。(同样这里将I和J视为一个字母)a b c d e E X A M P f g h i k L B C D F l m n o p G H I K N q r s t u O Q R S T v w x y z U V W Y Z K E Y W O a b c d e R D A B C f g h i k F G H I L l m n o p M N P Q S q r s t u T U V X Z v w x y z假设明文为:
hello
分成两个字母一组,最后不够一组的话补X:he ll ox
对于每组的两个字母,在左上角找到第一个字母,在右下角找到第二个字母。分别在右上角取和第一个字母同行、第二个字母同列的字母和在左下角取和第一个字母同列、第二个字母同行的字母为密文。
得到密文:FYGFIX
维吉尼亚 Vigenère
按密钥对明文逐个进行类似凯撒密码的加密。
我们可以利用下表简化操作。

明文和密钥构成坐标,得到密文。
例如,假设明文为:
ATTACKATDAWN
假设关键词为LEMON,重复写关键词直到和明文一样长,密钥:LEMONLEMONLE
逐个使用明文和密钥作为坐标,得到密钥。如明文的第一个字母A,对应密钥的第一个字母L,于是找到表格中L行A列,得到密文第一个字母L。类似地,明文第二个字母为T,对应密钥的第一个字母E,于是找到表格中T行E列,得到密文第二个字母X……明文:ATTACKATDAWN 密钥:LEMONLEMONLE 密文:LXFOPVEFRNHR
其他
Baconian Cipher 培根密码
A = aaaaa I/J = abaaa R = baaaa
B = aaaab K = abaab S = baaab
C = aaaba L = ababa T = baaba
D = aaabb M = ababb U/V = baabb
E = aabaa N = abbaa W = babaa
F = aabab O = abbab X = babab
G = aabba P = abbba Y = babba
H = aabbb Q = abbbb Z = babbb
密码子

25-pair color code

