普莱费尔密码-密码术的奥秘

时间:2024-07-01 19:53:05

普莱费尔密码

普莱费尔密码是查尔斯·惠特斯通(Charles Wheatstone)爵士与莱昂·普莱费尔(Lyon Playfair)男爵于1854年发明的,在英国战争部一直使用到20世纪初,包括在布尔战争期间。它是“双字母组”密码的一个例证,这意味着字母是成对而不是单个加密的。密钥是一个5行5列的方阵(内含25个字母,即在字母表中删去J之后剩下的字母),密钥个数达到25!,亦即

普莱费尔密码-密码术的奥秘

15,511,210,043,330,985,984,000,000。

在用普莱费尔密码加密之前,信息必须稍稍重新排列一下,方法如下:

●用I代替J;

●将信息写成字母对的形式;

●避免出现同样的字母组成的字母对——如果出现,则在它们中间插入Z;

●如果写出的字母个数是奇数,则在结尾处加上Z。

为了解释该密码的运作方式,我们选取一个具体的密钥,当然我们的选择不失一般性。

一旦信息得到了适当的重新排列,我们便给出加密规则。为了使我们的叙述更清楚,我们将原来的密钥扩充为6行6列。第六行与第一行相同,第六列与第一列相同。于是,在我们的例子中,扩充后的密钥如下图。

加密规则如下:

●如果两个字母位于密钥中的同一行,则每个字母都替换为扩充后的密钥中位于它右侧的字母。

●如果两个字母位于密钥中的同一列,则每个字母都替换为扩充后的密钥中位于它下方的字母。

●如果两个字母既不在同一行,也不在同一列,则第一个字母替换为与它同行,但列数与第二个字母相同的字母,第二个字母替换为与刚使用过的三个字母形成矩形的那个字母。

现在我们来加密下述信息:GOOD BROOMS SWEEP CLEAN(好扫帚扫得干净)。

由于该信息中没有字母J,我们只须在用字母对的形式写这条信息时适当地加入字母Z,这样便得到:

GO OD BR OZ OM SZ SW EZ EP CL EA NZ

于是,根据我们选定的密钥,GO变为FP;OD变为UT;OM变为PO等,全部密文变为

FP UT EC UW PO DV TV BV CM BG CS DY

与简单代换密码一样,使用者倾向于使用一个密钥短语来确定密钥矩阵。方法与简单代换密码相同,即完整地写下这个密钥短语,去掉重复字母,再按字母表的顺序加上没用到的字母。因此,如果这个短语是UNIVERSITY OF LONDON,去掉重复字母后就变为UNIVERSTYOFLD,那么所得方阵就如下图所示。

解密总是加密的逆过程。任何一位希望确保自己真正理解了普莱费尔密码是如何运作的读者,不妨解密一下MBOUBTZE,可利用下面的方阵作密钥(答案是一个由7个字母组成的英文单词,我们希望该词并不反映读者的精神状态)。我们就不讨论这种密码的密码分析问题了。容易描绘又很有趣的密码例子还有很多。最后会提供合适的参考资料。