密码本 · 2022-08-19

跳舞的小人密码

《福尔摩斯:跳舞的小人》(The Dancing Men,又译作“跳舞的人”)的故事发生于1898年,那是一个连现代计算机的概念都还没有提出的年代,福尔摩斯却凭借自己的智慧和推理,就破解了替换密码。

影片讲述的是英国富人希尔顿·库比特的妻子在庭院里看到一串跳舞小人的图案后极度害怕,在此之后一个多月库比特家中开始陆续出现跳舞的小人。

库比特先生希望能够保护他的妻子,并希望福尔摩斯能够破解跳舞的小人,就给福尔摩斯写了第一封信,同时附上了上面的小人。

两个星期后,丘比特先生在工具间的门上发现:

两天后:

三天后:

最后又发现:

福尔摩斯破解跳舞的小人密码画面:


解密过程  

首先,每个小人代表一个字母,运用解读所有密码的套路,就能解开。

第一条信息

根据英文字母出现概率不同,破译密码。

英文中出现概率最高的字母,E概率依次向下为T,A,O,I,N,S,H,R,D,L

所以从第一条信息可知下图出现了4次。

所以代表E。这四个相同的小人中有的拿着旗子有的没拿,从分布来看,旗子可能是分隔符。现暂定这个假设。

因为T,A,O,I的使用率几乎不相上下,所以要根据其他的信息破解。

接下来,从第四条信息入手。

图中没有旗子,可能是个单词。先确定二和四是E,可以选择的答案有SEVER(切割),LEVER(杠杆),NEVER(永不)。该信息出现在第四说明可能用于回答。根据语境判断,应该是库比特太太的回复。如果上图为NEVER,说明第一个代表N,第三个代表V,第五个代表R。

通过人物信息,提出请求的人应该是埃尔西(Elsie)多年前认识的。

所以从第三条信息看出两个E中间夹三个字母的可能是她的名字,这样就对上了L,S,I。名字前还有四个字母,以E结尾的请求,得出为COME。

接着继续破解第一条信息,将每个单词根据拿旗小人分隔开。不确定的用点表示。

.M .ERE ..E SL.NE.

第一个字母只能是A,这样就换掉三个点。第二个单词也很明显,是H。

所以,这句话变成 AM HERE A.E SLANE.

最后两个词明显为名字,补充:

AM HERE ABE SLANEY

(我到了。艾贝 斯莱尼)

接下来破解第二条信息

按照上面得出的字母进行替换,得:

A. ELRI.ES

要使这句话有意思,只能用T和G 补上。

AT ELRIGES

(在埃尔里格)

最后看第五条信息

用已知字母转换,变成:

ELSIE .RE.ARE TO MEET THY GO.

加上P和D,意思完整。

ELSIE PREPARE TO MEET THY GOD

(埃尔西,准备见上帝)


跳舞小人密码,归根结底是一个简单的替换密码,不过由于当时福尔摩斯并不知道跳舞小人码表,所以对于破解密码,一时间几乎难以下手。

如今在研究者的不断研究下,已经归纳出了一个完整的密码表,如下图所示:

从上表中,我们可以看到,每个英文字母分别用两个小人表示,其区别是其中一个小人手中没有旗帜,而另一个小人手中有旗帜,这个旗帜的作用是什么呢,它的作用就是用于分隔开单词。

前面已经说过,跳舞小人密码其实就是一个简单的替换密码,其加密方式是这样的,举个简单的例子:

我们要加密两个明文单词:Apple potatoes

首先我们在码表中,找出Apple potatoes的小人位置。

其中Appl用该字母代表的小人的第一个小人进行替换,也就是用没有旗帜的小人进行替换,而e则用该字母代表的小人的第二个字母进行替换,也就是那个手中有旗帜的小人。

接着我们继续在码表中找出potatoe代表的小人,然后用第一个小人进行替换,而s则用该字母代表的小人的第二个字母进行替换,也就是那个手中有旗帜的小人。

最终,我们加密后的密文为:

如果要加密数字,因为数字在码表中只有一个小人,因而可以直接进行替换。如果要破解跳舞小人密码,只需要将小人对照码表,替换回字母即可。


练习

跳舞的小人密码谜题

评论 (1)