四方密碼、二分密碼、三分密碼
四方密碼
是一種對(duì)稱式加密法,由法國(guó)人Felix Delastelle(1840年–1902年)發(fā)明。
這種方法將字母兩個(gè)一組,然后采用多字母替換密碼。
四方密碼用4個(gè)5×5的矩陣來加密。每個(gè)矩陣都有25個(gè)字母(通常會(huì)取消Q或?qū),J視作同一樣,或改進(jìn)為6×6的矩陣,加入10個(gè)數(shù)字)。
首先選擇兩個(gè)英文字作密匙,例如example和keyword。對(duì)于每一個(gè)密匙,將重復(fù)出現(xiàn)的字母去除,即example要轉(zhuǎn)成exampl,然后將每個(gè)字母順序放入矩陣,再將余下的字母順序放入矩陣,便得出加密矩陣。- s$ f$ p% ?% L& |. p7 o" o, w/ o
將這兩個(gè)加密矩陣放在右上角和左下角,余下的兩個(gè)角放a到z順序的矩陣: ' r" p: |" B+ r
a b c d e E X A M P
f g h i j L B C D F
k l m n o G H I J K
p r s t u N O 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 j
F G H I J k l m n o
L M N P S p r s t u
T U V X Z v w x y z1
加密的步驟
兩個(gè)字母一組地分開訊息:(例如hello world變成he ll ow or ld)
找出第一個(gè)字母在左上角矩陣的位置
a b c d e E X A M P
f g h i j L B C D F
k l m n o G H I J K
p r s t u N O 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 j
F G H I J k l m n o
L M N P S p r s t u '
T U V X Z v w x y z
同樣道理,找第二個(gè)字母在右下角矩陣的位置:
a b c d e E X A M P
f g h i j L B C D F
k l m n o G H I J K
p r s t u N O 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 j
F G H I J k l m n o
L M N P S p r s t u
T U V X Z v w x y z
找右上角矩陣中,和第一個(gè)字母同行,第二個(gè)字母同列的字母:
a b c d e E X A M P
f g h i j L B C D F
k l m n o G H I J K
p r s t u N O 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 j
F G H I J k l m n o
L M N P S p r s t u
T U V X Z v w x y z
找左下角矩陣中,和第一個(gè)字母同列,第二個(gè)字母同行的字母:
a b c d e E X A M P
f g h i j L B C D F
k l m n o G H I J K
p r s t u N O 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 j
F G H I J k l m n o
L M N P S p r s t u 0
T U V X Z v w x y z
這兩個(gè)字母就是加密過的訊息。
hello world的加密結(jié)果:
he lp me ob iw an ke no bi ,
FY GM KY HO BX MF KK KI MD
二分密碼(enTwo-square_cipher)
比四方密碼用更少的矩陣。
得出加密矩陣的方法和四方密碼一樣。
例如用「example」和「keyword」作密匙,加密lp。首先找出第一個(gè)字母(L)在上方矩陣的位置,再找出第二個(gè)字母(D)在下方矩陣的位置:
E X A M P
L B C D F
G H I J K
N O R S T
U V W Y Z
K E Y W O、
R D A B C
F G H I J
L M N P S
T U V X Z
在上方矩陣找第一個(gè)字母同行,第二個(gè)字母同列的字母;在下方矩陣找第一個(gè)字母同列,第二個(gè)字母同行的字母,那兩個(gè)字母就是加密的結(jié)果
E X A M P
L B C D F
G H I J K
N O R S T
U V W Y Z
K E Y W O
R D A B C
F G H I J
L M N P S
T U V X Z
help me的加密結(jié)果:
he lp me
HE DL XW
這種加密法的弱點(diǎn)是若兩個(gè)字同列,便采用原來的字母,例如he便加密作HE。約有二成的內(nèi)容都因此而暴露。 $
三分密碼
三分密碼
三分密碼由Felix Delastelle發(fā)明(他也發(fā)明了四方密碼和二分密碼)。二分密碼是二維的,用5×5(或6×6)的矩陣加密,但三分密碼則用3×3×3的。它是第一個(gè)應(yīng)用的三字母替換密碼。
首先隨意制造一個(gè)3個(gè)3×3的Polybius方格替代密碼,包括26個(gè)英文字母和一個(gè)符號(hào)。然后寫出要加密的訊息的三維坐標(biāo)。訊息和坐標(biāo)四個(gè)一列排起,再順序取橫行的數(shù)字,三個(gè)一組分開,將這三個(gè)數(shù)字當(dāng)成坐標(biāo),找出對(duì)應(yīng)的字母,便得到密文。
二分密碼的做法w相近,和后來出現(xiàn)的ADFGVX密碼差不多。
例:加密"HELLO WORLD"
1 2 3 1 2 3 1 2 3( d
1 L E O N A R D V I
0 t4 a P9 e9 k s4 o
2 C B F G H J K M P 2 B'
3 V1 A3 ?, Y2 M& U& v
3 Q S T U W X Y Z /
1 2 3 1 2 3 1 2 3
然后寫出"HELLO WORLD"的每個(gè)字母的坐標(biāo),先上橫再豎再下橫
如下:
H E L L O W O R L D
2 1 1 1 1 2 1 2 1 3
2 1 1 1 1 3 1 1 1 1
2 2 1 1 3 2 3 3 1 1
將所得的表格橫著讀出,每三個(gè)數(shù)字一組
211 112 121 321 111 311 112 211 323 311
再回頭按坐標(biāo)找出第一個(gè)表中對(duì)應(yīng)字母,即:
211 112 121 321 111 311 112 211 323 311
N E C K L D E N P D
則"HELLO WORLD"的密文即為:NECKLDFNPD |