古代密码的书写方法主要涉及两种基本类型:置换密码和代换密码。
置换密码
纵行换位密码:将明文按固定宽度水平写在图表纸上,密文按垂直方向读出,解密时则按相反顺序读出明文。
列置换密码:将明文按固定长度分组,然后在密钥控制下按某一顺序交换列,最后按列优先的顺序读出密文,解密时则按相反顺序读出明文。
代换密码
棋盘密码:将26个字母放在5×5的方格里,每个字母对应由两个数构成的字符,其中第一个数是该字母所在行的标号,第二个数是该字母所在列的标号。例如,字母c对应13,s对应43等。
具体实例
纵行换位密码示例
明文:`I LIKE ENGLISH SO MUCH.`
分组:每行5个字母
密钥:24135
排列:
```
I L K E N
G H I S
M U C H
E S T A
```
密文:`IESU LNHC IGSH KLO EIM`
解密过程:
```
I -> E
L -> S
K -> H
E -> I
N -> G
...
```
棋盘密码示例
明文:`State Key Laboratory of Networking and Switching`
密钥:15623
排列:
```
S 6 5 3 1
t 2 0 4 7
a 1 4 5 3
t 2 0 4 7
e 5 3 1 6
r 4 7 2 0
y 3 1 6 5
N 5 3 1 6
e 5 3 1 6
t 2 0 4 7
o 7 2 0 4
r 4 7 2 0
k 6 5 3 1
L 5 3 1 6
a 1 4 5 3
b 2 0 4 7
o 7 2 0 4
r 4 7 2 0
```
密文:`aKttSeLoyaebtyaorrNwfeotkgriondinSawhgcitn`
解密过程:
```
a -> S
K -> t
t -> a
S -> t
e -> r
t -> a
...
```
这些古代密码虽然简单,但它们为现代密码学的发展奠定了基础,通过研究这些方法,可以更好地理解密码学的基本原理和技巧。