虽然德国武装力量和外交部的无线电通讯自1941年起就被盟军逐渐掌握,但到1942年德国突然更换了新式恩尼格码密码机,这给盟军造成了很大困扰,使得盟军的反潜力量无法追踪到德军潜艇,被击沉的货船总吨位一度超过造船总吨位。
虽然驻在布莱奇利庄园的盟国密码专家后来成功破译了新式恩尼格码密码,但有若干密文始终未获破解。现在,一名德国业余爱好者用上千台个人计算机通过互联网组成了网格计算集群,解决了其中一条。
Stefan Krah是一名德国出生的小提琴手,他的业余爱好是钻研密码和开源软件。1995年的《密码月刊》杂志曾公开发表了三条密文,这激起他莫大的兴趣,但他深知自己并非专业人员,孤军奋战显然是不现实的,于是就编写了一个破解程序,把它发到新闻组的帖子里,看看是否能吸引志同道合之士来助他一臂之力。
很快,他的周围就聚集了45名有相同兴趣的业余爱好者,他们愿意把自己的计算机贡献出来作破解之用,Krah利用这些个人计算机的计算能力组成了一个以互联网为依托的网格计算集群,用它来破解已尘封半世纪之久的密文,Krah把这个项目命名为“M4”,那正是加密这些电文的恩尼格码密码机型号。
很快,按Krah自己的话来说就是:“参与M4项目的计算机台数呈指数性增长”,共有约2500台计算机参与了这个项目,而他所要做的就是在新闻组和邮件列表里振臂高呼一声。
终于,在过了一个月零几天之后,其中一条密文被破译了。未破解前的密文如下:
“NCZW VUSX PNYM INHZ XMQX SFWX WLKJ AHSH NMCO CCAK UQPM KCSM HKSE INJU SBLK IOSX CKUB HMLL XCSJ USRR DVKO HULX WCCB GVLI YXEO AHXR HKKF VDRE WEZL XOBA FGYU JQUK GRTV UKAM EURB VEKS UHHV OYHA BCJW MAKL FKLM YFVN RIZR VVRT KOFD ANJM OLBG FFLE OPRG TFLV RHOW OPBE KVWM UQFM PWPA RMFH AGKX IIBG”
破解后的明文如下:
“遭深水炸弹攻击后紧急下潜,与敌接触的最后方位为:0830h AJ 9863;(方向)220度,(速度)8节;(我)正在尾随(敌人);(压力读数)14兆巴;(风向)北-北-偏东;(兵力)4;能见度10”
与战时记录相比对可知这是由德国海军U264艇的Hartwig Looks上尉(总击沉吨位14000吨)在1942年11月25日发来的电文。
Stefan Krah表示自己的破解程序结合了暴力破解和逻辑演算两种途径,能更好地模拟恩尼格码密码机转子和接线板的排列组合。
密码机的接线板和转子
布莱奇利庄园早已完成它的历史使命,那些未破解的密文最后留给了像Stefan Krah这样的业余爱好者,当年在《密码月刊》上发表这些密文的Ralph Erskine在得知这个消息后说:“做到了当年布莱奇利庄园一直无法做到的事,我想他们应该为此感到特别骄傲。”
庄园全景
确实值得骄傲。但是,正是当年布莱奇利庄园里的天才们培植了今日计算机世界的根基。