波雷費密碼

波雷費密碼(英語:Playfair cipher)是一種對稱式密碼,是首種雙字母取代的加密法

發明人惠斯登

歷史

關於波雷費密碼最早的紀錄出現在一份1854年3月26日由查爾斯·惠斯登簽署的文件。惠斯登的朋友波雷費勛爵普及了這個加密法。最初英國外交部拒絕使用這種密碼,認為它太複雜。當惠斯登證明鄰近學校的四個男孩中,有三個可以在15分鐘內學會這種方法,外交部副秘書長的回應是:「這是有可能的,可惜你不能教曉那些高層人員。」

在第二次布爾戰爭第一次世界大戰,英軍用了它;在二戰澳大利亞人也用了。波雷費密碼所用的工具很少,而且很快便能加密訊息。它主要用來加密重要而又不關鍵的訊息。當時,敵軍的密碼分析員很快解出密碼,可惜得到的訊息都不重要。現時,波雷費密碼被視為十分不安全的。

1914年,Joseph O. Mauborgne刊出了19頁解密法。

 
波雷費勛爵

用法

  1. 选取一个英文字作密鑰。除去重覆出现的字母。将密鑰的字母逐个逐个加入5×5的矩阵内,剩下的空间将未加入的英文字母依a-z的顺序加入。(将Q去除,或将I和J视作同一字。)
  2. 将要加密的讯息分成两个一组。若组内的字母相同,将X(或Q)插入两字母之间,重新分组(例如 HELLO 将分成 HE LX LO)。若剩下一个字,也加入X字。
  3. 在每组中,找出两个字母在矩阵中的地方。
  • 若两个字母不在同一直行或同一橫列,在矩阵中找出另外两个字母,使这四个字母成为一个长方形的四个角。
  • 若两个字母在同一橫行,取这两个字母右方的字母(若字母在最右方则取最左方的字母)。
  • 若两个字母在同一直列,取这两个字母下方的字母(若字母在最下方则取最上方的字母)。

新找到的两个字母就是原本的两个字母加密的结果。

例子

取「playfair example」為密鑰,得

P L A Y F
I R E X M
B C D G H
K N O Q S
T U V W Z

要加密的訊息為「Hide the gold in the tree stump」:

HI DE TH EG OL DI NT HE TR EX ES TU MP

就會得到「BM OD ZB XD NA BE KU DM UI XM MO UV IF」。