在之前的文章中,我们了解了波利比乌斯密码,它是一种棋盘方阵密码,而我们今天要了解的密码是由它改良而来,在第一次世界大战中被德军广泛使用的ADFGVX密码。

ADFGVX密码简介

ADFGVX密码被认为是“人力加密时代的巅峰密码”,它是由Fritz Nebel上校结合波利比乌斯方格替代密码与单行换位密码发明而来。但事实上它是ADFGX密码的增补版,二者在加密原理上基本一致,只是字母表略有不同。

ADFGX密码表通常将i和l视为同个字,使字母数量符合5×5格,而ADFGVX密码表则加入字母“V”,使其成为6×6格共36个字符加密。这使得所有英文字母以及数字0到9都可混合使用。

ADFGVX密码

ADFGVX密码的加密流程

将26个字母和0-9数字打乱顺序,插入横纵坐标为“ADFGX”的表格中,如下图所示:

ADFGVX密码

假设需要发送的明文信息为“Attack at once”,那么经过字母表转换之后就为“VA FA FA VA FV DF VA FA GD GA FV AV”。我们将其按照顺序书写在表格中,如下所示:

ADFGVX密码

假设选择密钥为“cargo”,我们就将其书写为:

ADFGVX密码

随后,将“cargo”按照字母顺序排列为“acgor”,将信息按照竖列抄写为“AVFGV VADAF AFAGV FVFA FAVDA”,而这就是加密后的密文。

ADFGVX密码的解密流程

ADFGVX密码的解密需要双方提前约定好字母表和密钥,然后通过收到的密文进行反推,即可进行解密。

ADFGVX密码的破解

ADFGVX密码是被法国陆军中尉Georges Painvin所破解的。以古典密码学的标准来说,此密码破解的工作是属于格外困难的。在这期间,Painvin 更因此健康蒙受了严重损伤。他破解的方法是依靠于找到多份开头相同的讯息,这表示说它们是被相同的分解钥匙和移位钥匙加密的。这意味着只有在讯息传输量高时才会有这种影响,但幸运的是,这时恰好也是最重要的讯息发送的时刻。

免责声明:素材源于网络,如有侵权,请联系删稿。