簡(jiǎn)述ADFGVX密碼
在之前的文章中,我們了解了波利比烏斯密碼,它是一種棋盤方陣密碼,而我們今天要了解的密碼是由它改良而來(lái),在第一次世界大戰(zhàn)中被德軍廣泛使用的ADFGVX密碼。
ADFGVX密碼簡(jiǎn)介
ADFGVX密碼被認(rèn)為是“人力加密時(shí)代的巔峰密碼”,它是由Fritz Nebel上校結(jié)合波利比烏斯方格替代密碼與單行換位密碼發(fā)明而來(lái)。但事實(shí)上它是ADFGX密碼的增補(bǔ)版,二者在加密原理上基本一致,只是字母表略有不同。
ADFGX密碼表通常將i和l視為同個(gè)字,使字母數(shù)量符合5×5格,而ADFGVX密碼表則加入字母“V”,使其成為6×6格共36個(gè)字符加密。這使得所有英文字母以及數(shù)字0到9都可混合使用。

ADFGVX密碼的加密流程
將26個(gè)字母和0-9數(shù)字打亂順序,插入橫縱坐標(biāo)為“ADFGX”的表格中,如下圖所示:

假設(shè)需要發(fā)送的明文信息為“Attack at once”,那么經(jīng)過(guò)字母表轉(zhuǎn)換之后就為“VA FA FA VA FV DF VA FA GD GA FV AV”。我們將其按照順序書寫在表格中,如下所示:

假設(shè)選擇密鑰為“cargo”,我們就將其書寫為:

隨后,將“cargo”按照字母順序排列為“acgor”,將信息按照豎列抄寫為“AVFGV VADAF AFAGV FVFA FAVDA”,而這就是加密后的密文。
ADFGVX密碼的解密流程
ADFGVX密碼的解密需要雙方提前約定好字母表和密鑰,然后通過(guò)收到的密文進(jìn)行反推,即可進(jìn)行解密。
ADFGVX密碼的破解
ADFGVX密碼是被法國(guó)陸軍中尉Georges Painvin所破解的。以古典密碼學(xué)的標(biāo)準(zhǔn)來(lái)說(shuō),此密碼破解的工作是屬于格外困難的。在這期間,Painvin 更因此健康蒙受了嚴(yán)重?fù)p傷。他破解的方法是依靠于找到多份開頭相同的訊息,這表示說(shuō)它們是被相同的分解鑰匙和移位鑰匙加密的。這意味著只有在訊息傳輸量高時(shí)才會(huì)有這種影響,但幸運(yùn)的是,這時(shí)恰好也是最重要的訊息發(fā)送的時(shí)刻。
免責(zé)聲明:素材源于網(wǎng)絡(luò),如有侵權(quán),請(qǐng)聯(lián)系刪稿。



