古典密碼

密碼

在現今資訊爆炸的年代,溝通容易變得公開,故加密 (Coding) 的工作尤其重要。

所謂「加密」,即把一段訊息,我們通稱「明文」(Message) ,加上密碼,成為「密文」(Code) ,再行傳輸,即使被別人看了,別人也不明其意。

當指定接收訊息的人經過一個「解密」(Decode) 或稱「解碼」的程序後,便得知原本的「明文」。

以往的加密方法有很多,如易位、代替等,我們通稱「古典密碼」。

 

易位密碼

易位密碼通常用於西方字母組成的文句中,方法是把明文的字母次序改變,使人難於明白。如:

明文:「Amy Attended A Meeting」

上文合共有 19 個字母 (不計空白),我們作一 4x5 的方陣,如下。

A
M
Y
A
T
T
E
N
D
E
D
A
M
E
E
T
I
N
G

我們改變次序,得

密文:「ATDT MEAI YNMN ADEG TEE」

 

代替密碼

代替密碼是指用別的字母 (或單一漢字) 代替原本「明文」上的字母 (或單一漢字) ,使之「密文」。如:

明文:「Amy Attended A Meeting」後移 (5)

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
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
A
B
C
D
E

把「明文」字母作一一對應的替換得:

密文:「FRD FYYJSIJI F RJJYNSL」

當中的「後移五」,我們稱為「密鑰」,即解密的鑰匙。當然密鑰有很多不同的樣式,可如上例般,稱「加法替代」;當然也有「乘法替代」,即利用與 26 互素 (Coprime) 的數作模 (Modulo) 26 的乘法運算;也可混合二者或經多次替代,增加解密的難度。

古典密碼的不足

古典密碼的不足在於其依然以字母為基礎,要知道英文中各字母出現的頻率不一:

字母
頻率
字母
頻率
字母
頻率
字母
頻率
字母
頻率
A
0.0856
B
0.0139
C
0.0297
D
0.0378
E
0.1304
F
0.0289
G
0.0199
H
0.0528
I
0.0627
J
0.0013
K
0.0042
L
0.0339
M
0.0249
N
0.0707
O
0.0797
P
0.0199
Q
0.0012
R
0.0377
S
0.0607
T
0.1045
U
0.0249
V
0.0092
W
0.0149
X
0.0017
Y
0.0199
Z
0.0008

 

這現象在中文上亦是相類似,只要我們計算字母出現頻率,再加推敲,破解密文實不難。當然古典密碼在一些短語的傳遞上仍有作用,但整篇文章以此法加密,其保安能力已顯然不足了。

 

Hosted by www.Geocities.ws

1