编程古代密码怎么写的

时间:2025-01-23 11:15:41 游戏攻略

古代密码的书写方法主要涉及两种基本类型:置换密码和代换密码。

置换密码

纵行换位密码:将明文按固定宽度水平写在图表纸上,密文按垂直方向读出,解密时则按相反顺序读出明文。

列置换密码:将明文按固定长度分组,然后在密钥控制下按某一顺序交换列,最后按列优先的顺序读出密文,解密时则按相反顺序读出明文。

代换密码

棋盘密码:将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

...

```

这些古代密码虽然简单,但它们为现代密码学的发展奠定了基础,通过研究这些方法,可以更好地理解密码学的基本原理和技巧。