波利比奥斯方阵密码(Polybius Square Cipher或称波利比奥斯棋盘)是棋盘密码的一种,是利用波利比奥斯方阵进行加密的密码方式,简单的来说就是把字母排列好,用坐标(行列)的形式表现出来。字母是密文,明文便是字母的坐标。
工具链接:
棋盘密码的加密方法,其实方法十分简单,在密码学并不发达的古代,也够用了。棋盘密码的解题思路是这样
这种密码的原理是:通信双方各掌握一个m*n列的矩阵,比如A列第一行写上“我”,A列第2行写上“的”……以此类推,构成:
所以,“我的名字叫XXX”的密文即:A1 A2 A3 A4 B1 B2。这样,一份密文就出来了。
使用这种密码表的加密也叫作 ADFGX 密码(密文中只有 A D F G X)
明文:HELLO 密文:DD XF AG AG DF
对于解密,对密文每两个字符一组,分别进行解密
由于密文仅包含5个字符,所以其密钥(也就是密码表)只有5!种可能
写脚本暴力攻击(brute-force)即可
棋盘密码的由来:
公元前2世纪前后希腊人提出了棋盘密码,在当时得到了广泛的运用。同时,它也是密码史上第一个密码。棋盘密码通过将26个字母设法变成十位数来达到加密的目的。棋盘密码的密钥是一个5×5的棋盘,将26个英文字母放置在里面。其中 i 和 j 共用一个密码。
也称棋盘密码,是利用波利比奥斯方阵(Polybius Square)进行加密的密码方式,产生于公元前两世纪的希腊,相传是世界上最早的一种密码。 假设我们需要发送明文讯息 “Attack at once”, 用一套秘密混杂的字母表填满波利比奥斯方阵,像是这样: A D F G X A b t a l p D d h o z k F q f v s n G g j c u x X m r e w y i和j视为同一个字,使字母数量符合 5 × 5 格。之所以选择这五个字母,是因为它们译成摩斯密码时不容易混淆,可以降低传输错误的机率。使用这个方格,找出明文字母在这个方格的位置,再以那个字母所在的栏名称和列名称代替这个字母。可将该讯息转换成处理过的分解形式。 明文:A T T A C K A T O N C E 密文:AF AD AD AF GF DX AF AD DF FX GF XF A,D,F,G,X也可以用数字1,2,3,4,5来代替,这样密文就成了: 13 12 12 13 43 25 13 12 23 35 43 53