APP下载

“谜”与“如谜的解谜者”(+)

2019-08-31花卷

科学Fans 2019年7期
关键词:波兰人小雷转轮

花卷

前情提要

经过艰苦卓绝的努力,波兰数学家雷耶夫斯基和他的同事们终于成功地设计出了一套破译Enigma每日密钥的方法,波兰人也因此在情报方面胜了德国人一招。但同时,德国人也在不断调整和完善Enigma的规格和运用,这给波兰人的破译工作制造了很大的困难。面对一次又—次的挑战,雷耶夫斯基和他的同事们也创造出了循环测定机、穿孔纸片等装置和方法来加以应对。

雷氏炸弹机

我们之前提到过,1938年,德国人对指标组的加密方式来了一个彻底大换血,这让小雷之前搞的循环测定机变成了一堆废铁。还好,小雷的同事小齐(齐加尔斯基)特别靠谱,他发明的穿孔纸片法拯救了波兰人于水火。不过小雷在这个时候也并没有闲着,他觉得小齐这个穿孔纸片的原理挺棒的,就是用起来比较麻烦,要是能把这个过程自动化,用机器代替人工来完成那多好呀。

这个主意真的是太妙了,说干就干。于是,小雷设计了一台大机器,这台大机器上有6组Enigma的转轮,每组转轮都可以模拟真正Enigma转轮的步进旋转——简单来说,这台机器就相当于同时控制6台Enigma,测试转轮位置的不同组合。这台机器的原理和小齐的穿孔纸片本质上是一样的,都是利用“samiczki”——也就是加密后的指标组中1/4、2/5、3/6位置上出现相同字母的情况——来寻找满足条件的转轮位置组合。不同的是,小雷这台机器是全自动的,而且是6组转轮一起找,那效率当然就高多了。

我们知道,Enigma有3个转轮,每个转轮有26种位置,那么3个转轮就一共有26x26x26=17 576种位置。小雷的机器上面有6组转轮一起找,假设每秒可以尝试一种转轮位置,那么只需要17 576/6≈3 000秒就可以尝试所有的可能性了,还不到一个小时(根据小雷的说法,实际需要的时间差不多是两个小时,这可能包括了尋找和收集“samiczki”所需要的时间)!当然了,转轮本身还有6种排列顺序,而且到了1938年,这个排列顺序还是每天换的,这可咋办呢?波兰人用了个简单粗暴的办法,既然转轮有6种排列顺序,那我就造6台机器呗! 波兰人给小雷设计的这台机器起名叫“炸弹机(bomba,就是波兰语中的bomb -词)”。这个名字听起来特别出戏也特别搞笑,关于为啥要叫“炸弹”,也有几种不同的说法。有人说这个名字是波兰三杰中最年轻的鲁日茨基给起的,意思是一种冰激凌的名字。这个说法听起来实在是有点扯,冰激凌跟破译密码怎么看都没有半毛钱关系啊。那么,设计这台机器的小雷本人又怎么说呢?也是奇了怪了,小雷对这个名字的来历好像讳莫如深,他在1981年的那篇文章中说:“我们管它叫炸弹机,是因为实在起不出什么更好的名字了。”

小雷给出的这个理由也真的是太不负责任了。不过我们可以确定的是, “炸弹”这个名字肯定是密码局工作人员叫的一种“外号”,后来因为“起不出什么更好的名字”,大家就把这个外号当成正式的名字了。那么这个外号又是怎么来的呢?答案据说很简单粗暴——是因为这玩意儿工作起来实在是太!吵!了!对,就跟个大炸弹似的,轰隆隆,轰隆隆,相当扰民。据说,还有些工作人员给它起名叫“洗衣机”,想想就特别有画面感是不是?

必杀一击

小雷的炸弹机大约是1938年10月左右鼓捣出来的,有了这种神器,哪怕德国人每天都换转轮顺序,波兰人也可以在两个小时之内破译当天的每日密钥,然后就可以大张旗鼓地解密这一天的所有电文了,这简直是爽翻了。波兰人本以为可以高枕无忧一段时间了,没想到德国人实在太“鸡血”,新的挑战很快就降临了。

1938年12月,也就是炸弹机搞出来短短两个月之后,德国人使出了一个超级必杀技——原本Enigma上只有3个转轮换来换去,现在德国人又给加了两个,变成了5个转轮!当然,Enigma机器上依然还是有3个槽位,机器本身的结构没有变,但是现在可以从5个转轮里面选出3个,再排列成不同的顺序,利用我们数学课上学习的排列组合知识,可以计算出转轮的排列方式总共有5x4x3=60种,从原来的6种足足增加到了它的10倍!

现在摆在小雷面前的问题非常棘手。首先,这两个新转轮的接线方式完全是未知的;其次,即便知道了新转轮的接线方式,密码局也必须再造出54台炸弹机才能覆盖所有可能的转轮排列顺序。要知道,造一台炸弹机很贵的,波兰也不是什么有钱的国家,这预算妥妥地申请不下来啊!但如果不解决这个问题,波兰人就只能碰运气了——假设某一天德国人的每日密钥恰好没有使用这两个新转轮,那原来的炸弹机还能搞定。但这样的好运气太难碰到了,大部分日子里,波兰人都只能望机兴叹。

这可怎么办呢?作为一个数学家,小雷还是很脚踏实地的,他的想法是,无论能不能造出那么多炸弹机,如果能够破解两个新转轮的接线方式,那将来总归是可以派上用场的。然而,就是这件事也并没有那么容易。未知的转轮只有两个,而且Enigma机器本身的结构没有变化,但是别忘了,德国人已经全面改变了指标组的加密方式,小雷之前发现的那个循环模式已经没用了,那要怎么样才能计算出这两个新转轮的接线方式呢?

接力赛

1938年底到1939年初的这段时间,德国人在Enigma上的动静上为什么这么大呢?正所谓司马昭之心路人皆知,德国人肯定是要搞事情了呗。我们之前讲过,波兰是德国与苏联之间的一块重要的缓冲地带,因此让波兰保持独立是牵制德国的一个重要砝码。1939年,英国和法国宣布与波兰结盟,并放出话来说只要德国威胁到波兰独立,英法决不会坐视不管。希特勒听说之后一拍大腿,好哇,你们跟波兰拜了把子,莫不是要把我德国给包围起来吗?这种事情我可忍不了。

德国原本跟波兰是签过一个互不侵犯条约的,但是一听说波兰又转过头跟英法结了盟,希特勒一怒之下把这个条约给撕了。这件事传到波兰,可把波兰人给吓尿了,你说英国和法国离得那么远,万一德国真打过来,根本扛不了多久就得被干趴下,他们就算想帮我也来不及啊!眼看战争一触即发,小雷他们也挺焦虑的——毕竟这些研究成果耗费了他们数年的心血,一旦落在德国人手里,那他们一定会迅速部署新的密码装置,破译Enigma的这些努力也就前功尽弃了。

面对如此严峻的形势,不得不说波兰人做了一个十分英明的决定——既然这些东西不能落在德国人手里,那交给英国和法国恐怕是最好的选择了——因为英法和波兰是盟友,而且在“一战”时他们就是对抗德国的老功臣,这浓眉大眼的怎么都不会叛变的是吧。另一个原因,就是英法在密码学研究方面都还算有两把刷子,尽管在Enigma这件事上他们没有波兰人走得远,但既然现在波兰人给铺好了路,相信他们一定有能力把这条路继续走下去。

1939年7月25日和26日,波兰密码局长格维多-兰杰上校召集了英国和法国情报部门的代表在华沙开了两天的会。作为情报同盟,他们三个国家其实是经常在一起开会的,但这次开会的意义可以说是空前重大。作为破译Enigma的核心人物,小雷当然也去开会了。原本波兰人的打算是,眼看要打仗了,在破译Enigma这个问题上,大家互通一下有无,分享一下各自的成果。但出乎意料的是,英国和法国直接两手一摊,说我们真没什么成果,Enigma那玩意儿太妖了,我们怎么都整不明白啊!

小雷一听,行吧,反正波兰朝不保夕,我就给你们看看这几年我们都干了啥。首先,小雷拿出5个Enigma转轮,你看,这些都是我们根据电文计算出来的,跟真机的转轮一模一样哦。接下来,小雷拿出两台波兰复刻版的Enigma密码机,你看,这两台机器是我们自己造的,真机什么样我们没见过,但差不多就这么回事吧。除此之外,还有齐加尔斯基发明的这个穿孔纸片,再加上这几台炸弹机,这些东西你们带回去研究一下先。

来开会的法国代表是我们的老朋友古斯塔夫·贝特兰上尉,大家应该还记得他买通德奸偷资料给波兰的故事。贝特兰看见这些玩意儿之后眼珠子差点掉出来,心想当初给你们那些资料的时候根本没想到你们能搞到这种程度啊,波兰还真是卧虎藏龙,转眼瞥了一下英国人,啧啧,看来你们也没波兰人厉害嘛。兰杰跟贝特兰说,这两台复刻版的Enigma机器你都带走吧,其中一台还要拜托你想办法送到英吉利海峡另一边的英国去。贝特兰说放心,这件事就包在我身上了。

除了给法国人布置了任务之外,小雷还给英国人留了个作业。现在德国人有5个转轮,一其60种排列顺序,你看造60台炸弹机不太现实,但是做60套穿孔纸片好像还问题不大——毕竟只要有足够的人手就搞定了。听说你们英国的密码部门兵精粮足,要不这个任务就交给你们了吧。

波兰沦陷

接下来的事情大家在历史课本上应该都学过了。1939年9月1日,德国对波兰发动了闪电战,第二次世界大战正式爆发。英國和法国说好了要保护波兰,但是正如波兰人一开始所预料的那样,英法能给予的支援对德国来说简直就是挠痒痒。更可气的是,开战之前,德国还跟苏联秘密签订了一个所谓的“互不侵犯”条约,里面说如果德国打波兰,苏联就也可以对波兰出兵——这不是明摆着狼狈为奸要把波兰给瓜分了嘛。果不其然,9月17日,苏联军队就浩浩荡荡地开进波兰了。

德国跟苏联一起上,波兰立马就撑不住了,但是波兰人非常有骨气,面对如此糟糕的局面,波兰政府自始至终也没有宣布投降,而是搞起了游击战。眼看德国人就要打过来了,密码局也开始张罗着跑路,但是在跑路之前,为了不让德国人发现他们已经破译了Enigma,他们销毁了相关的所有资料和设备。在贝特兰上尉的安排下,15名密码局成员,包括小雷和他的两位同事,连夜撤离到了法国巴黎附近的一座城堡里。但由于所有的设备和资料都已经销毁了,因此他们也没能够继续进行Enigma的破译工作。也就是说,从那次会议开始,破译Enigma的接力棒就已经交到了英国和法国手上,波兰人则功成名就,退居幕后去了。

至于小雷他们后来的境况,只能说是跌宕起伏。法国沦陷之后,他们被迫辗转逃亡英国,但在途中兰杰被德国人抓走,鲁日茨基则死于沉船,只有小雷和小齐两个人成功逃到了英国,并加入了一个波兰军事组织。“二战”结束后,小雷回到波兰与亲人团聚。到了20世纪70年代,一些作者开始出版讲述Enigma破译过程的书,小雷也看了几本,发现这里面很多东西都是瞎扯淡,特别是对波兰人的贡献,要么轻描淡写,要么写得驴唇不对马嘴。

于是,小雷写了好几篇文章,详细回忆了他和他的两位同事为破译Enigma所做的工作,这才还原了历史的真相。他还对一些不太靠谱的说法进行了辟谣,比如一位英国的密码学家在他的书里说波兰人之所以把成果分享给英国和法国是因为他们碰上了搞不定的难题而进行不下去了。小雷对此大为恼火,心想你们英国人啥都没搞出来居然还倒打一耙,我们当时这样做纯粹是因为战争一触即发,不想让之前的工作白白浪费,而所谓的困难是不存在的,因为德国人加了两个转轮,这也只是“量变”而不是“质变”,我们只不过是没时间了。

1980年2月13日,雷耶夫斯基因心脏病去世,享年74岁。2000年,雷耶夫斯基和齐加尔斯基被授予波兰大十字复兴勋章,这也是波兰平民所能获得的第二高级别的荣誉。2014年,电气和电子工程师协会(IEEE)授予雷耶夫斯基、齐加尔斯基和鲁日茨基“IEEE里程碑奖”,这一奖项用来表彰那些曾经改变世界的伟大成就。

猜你喜欢

波兰人小雷转轮
小雷和小闪
姜撞奶
姜撞奶
词语大转轮
——“AABC”和“无X无X”式词语
寺庙里有座大书架——神奇的转轮藏
我国第一台分半铸造的30万千瓦水轮发电机转轮实制成功
“享受排队”的波兰人
转轮热回收计算方法及节能分析