恩尼格玛被图灵破解(图灵破译恩尼格玛)

hacker|
100

计算机之父——图灵 108周年诞辰

艾伦·麦西森·图灵,在如今你或许对这个名字有些许陌生,但是如果说”计算机之父图灵“你一定对他这个头衔如雷贯耳,每个杰出的人才从小都会展现出与众不同的天赋,他们不会埋没在人堆里,图灵也不例外。

他在1912年6月23日出生于英国伦敦,那时的英国恰好内战失败的阴影,图灵因为他的祖父在日不落帝国时期立下了一点点功绩,被封为准男爵,结果内战之后,他们便家道中落,还好他的父亲扛起了家族复兴的大旗,乘着大英帝国前往印度的淘金热积累了些许财富,图灵的童年也算是衣食无忧。或许天才的大脑也会继承祖辈的传承,图灵的祖父约翰·罗伯特·图灵就十分有数学天赋,可惜后半生因为时运和国家境遇对生活心灰意冷,不再研究数学转学神学。图灵的童年并不像其他天才一样早早的展现出”早慧“,小时候的他甚至有些呆,不愿与别的小朋友玩耍,总爱一个人默默的呆着,或许这也是他成为”伟大“的因素之一。

1931年,图灵进入英国剑桥大学国王学院学习,毕业后到美国普林斯顿大学攻读博士。在这期间他疯狂汲取知识,充实自己,在结束学业以后恰逢二战爆发,二战期间,盟军为破解德军的恩尼格玛(Enigma)密码通讯系统,召集了一批专家进行秘密破解工作。艾伦·图灵(本尼迪克特·康伯巴奇),加入了指挥官丹尼斯顿(查里斯·丹斯)领导下的解密组。图灵通过字母排列组合,构建了“图灵机”计算密码的设想,并将其命名为“克里斯多夫”,以纪念往日逝去的好友。在图灵与解密组成员废寝忘食地努力下,最终建成了解密机,成功破解了德军的机密文件并缩短了二战的持续时间;图灵直接使德军轰炸计划破产,挽救了欧洲几千万人的生命。

在以下领域他都做出了卓越的贡献

图灵在第二次世界大战中从事的密码破译工作涉及到电子计算机的设计和研制,但此项工作严格保密。直到70年代,内情才有所披露。

从一些文件来看,很可能世界上第一台电子计算机不是ENIAC,而是与图灵有关的另一台机器,即图灵在战时服务的机构于1943年研制成功的CO-LOSSUS(巨人)机,这台机器的设计采用了图灵提出的某些概念。

它用了1500个电子管,采用了光电管阅读器;利用穿孔纸带输入;并采用了电子管双稳态线路,执行计数、二进制算术及布尔代数逻辑运算,巨人机共生产了10台,用它们出色地完成了密码破译工作。

1949年,图灵成为曼切斯特大学(University of Manchester )计算实验室的副院长,致力研发运行Manchester Mark 1型号储存程序式计算机所需的软件。

1950年他发表论文《计算机器与智能》( Computing Machinery and Intelligence),为后来的人工智能科学提供了开创性的构思。提出著名的“图灵测试”,指出如果第三者无法辨别人类与人工智能机器反应的差别, 则可以论断该机器具备人工智能。

从1952年直到去世,图灵一直在数理生物学方面做研究。他在1952年发表了一篇论文《形态发生的化学基础》(The Chemical Basis of Morphogenesis)。

他主要的兴趣是斐波那契叶序列,存在于植物结构的斐波那契数。他应用了反应-扩散公式,如今已经成为图案形成范畴的核心。他后期的论文都没有发表,一直等到1992年《艾伦·图灵选集》出版,这些文章才见天日。

1952年,39岁的图灵遭到入室盗窃后报警,警方搜查结果发现图灵是同性恋。在当时的英国,同性恋是不被允许的。图灵被以”颠倒性行为罪”起诉,之后公审判刑。法院给了他两个选择,坐牢或化学阉割,图灵选择了后者。当时的化学阉割就是鲁莽地给人注射雌激素,完全不管这种注射对健康造成的影响。图灵在遭受注射一年后,出现乳房不断发育等严重的副作用,健康也受到很大的影响。1954年6月7日,不堪重负的图灵,咬了一口浸染了氰化物的苹果,在家自杀身亡,享年41岁。一代天才,就因为同性恋,这种天生的性取向,而被迫害之死。

假如,当时的英国有那么一丝丝宽容,让他活下来,那么他的天才大脑,又将给人类带来怎样的福祉。如果图灵没有自杀,说不定现在的人工智能,比阿尔法狗还要先进一千倍。可惜,这个世界从来就没有”如果”二字。

2009年,英国计算机科学家康明(John Graham-Cumming)发起了为图灵平反的在线请愿,截止到2009年9月10日请愿签名人数已经超过了3万,为此,当时的英国政府及首相戈登布朗不得不发表正式的道歉声明。

2012年12月,霍金、纳斯(Paul Nurse,诺贝尔医学奖得主)、里斯(Martin Rees,英国皇家学会会长)等11位重要人士致函英国首相卡梅伦,要求为其平反。

2013年12月24日,在英国司法大臣克里斯・格雷灵(Chris Grayling)的要求下,英国女王终于向图灵颁发了皇家赦免。英国司法部长宣布,“图灵的晚年生活因为其同性取向而被迫蒙上了一层阴影,我们认为当时的判决是不公的,这种歧视现象如今也已经遭到了废除。为此,女王决定为这位伟人送上赦免,以此向其致敬。”

藉此,我已一名计算机小学生的身份向伟人致敬,他照亮了一个时代,因为社会的不公就草草的给自己的人生划上了句号,这是时代的悲哀。在他诞辰108周年之际,缅怀这位伟人!

密码那些事儿|(二十一)再下一城,图灵破解最高级别恩尼格玛机

在布莱切利园中,德国海军的恩尼格玛密码一直被认为是最难以破解的。

德国海军历来极其重视无线通信的可靠性和保密性,就是他们率先使用了恩尼格玛机来加密。而且,德国海军还频繁地在结构和操作方式上对恩尼格玛机进行改进,以确保它无懈可击、牢不可破。

第二次世界大战前夕,德国陆军和空军将恩尼格玛机的转子从3个增加到了5个,而德国海军则是继续增加到了7个,最后更是丧心病狂的增加到了8个。

而且,德国海军还使用了与陆军及空军不一样的新操作规程,主要包括两个方面:

一、增加“密钥手册”,规定每天0点更新初始参数。

(a)选择8个转子中的3个并规定其基左中右位置;

(b)设定各转子的内外轮之间的相对位置;

(c)设定接线板上的10对接线;

(d)设定3个转子的初始位置。

二、采用“双字替换表”

(a)发报前,先从密钥手册中选3个字母,比如ABC,作为密钥,然后把恩尼格玛机的3个转子调到当天规定的初始位置,输入ABC,假设得到FTN,再把转子调到FTN的位置,开始加密正式电文;

(b)再从密钥手册中选另一组字母,比如XYZ,在XYZ的左边和密钥ABC的右边任意增加一个字母,比如P、Q,列成两行,上下对齐。

P X Y Z 

A B C Q

(c)根据当天有效的“双字替换表”把各列的字母对PA、XB、YC、ZQ分别替换,比如替换成IS、OW、MD、UV;

(d)发送电报时,把这4对字母加在正式密文的首尾;

(e)对方接收到电报后,先对4对字母反向操作,得到3个字母ABC,再得到FTN,然后开始解密正文。

这样一来,原来重复加密3个字母密钥的操作就不存在了,以致雷杰夫斯基发明的破解方法完全失效。

在图灵来到布莱切利园之前,几乎所有人都认为德国海军的密码是无法破译的,因此没有人愿意为它浪费时间。图灵到来之后,发明了基于crib方法的“炸弹”机,理论上是可以对德国海军的密码进行破译的,但由于早期的“炸弹”机性能过低,所以破解的效率极为低下。

当时德国的U-潜艇正在严重威胁盟军的大西洋生命线,寻找有效的破解德国海军密码的方法变得刻不容缓。经过一段时间的摸索和研究,图灵终于发明了基于贝叶斯统计原理的“班布里方法”,能够有效破解德国海军的恩尼格玛机。

班布里方法基于语言学中的一个统计事实:把任意两段文字拿来排成行上下对齐进行比较,查看其中有多少对字母是相同的;当这两段文字属于同一编码系统时出现相同字母对的概率,明显高于当它们不属于同一编码系统时的相应概率。

基于这个原理,图灵找到了破解德国海军恩尼格玛机的途径。不过图灵所用的方法包含了大量数学理论,过程也相当繁琐,这里就不详细表述了,我们只说一下图灵的大致思路。

首先,通过对比分析大量的电文头尾的明文字母,部分甚至完全破解“双字替换表”,从而获得电文密钥;

其次,用班布里方法,确定右边转子是8个转子中的哪一个;

再次,重复使用班布里方法,进一步确定中间转子是哪一个;

最后,用“炸弹”机破解全部密文。

这个步骤被验证是行之有效的,图灵就这样搞定了最高级别的德国海军恩尼格玛机。

1940年5月8日,用班布里方法破解德国海军密码首次获得成功。以后的三年里,此方法结合“炸弹”机成为英国破解德国海军密码的主要手段,为盟军重创德国U-潜艇舰队、守住大西洋生命线做出了巨大贡献。

据不完全统计,破解之后,盟军全年被击沉船只的吨位下降了60%;而德军潜艇的损失率,从破译前的不到7%,猛增到50%。

更多文章:

密码那些事儿|(二十)破解恩尼格玛机的图灵方法

密码那些事儿|(十九)在人性与规则中找寻漏洞

密码那些事儿|(十八)跨越英吉利海峡的恩尼格玛机

密码那些事儿|(十七)年轻数学家首次破解恩尼格玛机

密码那些事儿|(十六)二战中大放异彩的“超级情报”

密码那些事儿|(十五)坚持就是胜利——初代恩尼格玛机

密码那些事儿|(十四)古典密码的巅峰——恩尼格玛机

密码那些事儿|(十三)尴尬的维吉尼亚3.0

密码那些事儿|(十二)短命的维吉尼亚2.0

密码那些事儿|(十一)南北战争时的维吉尼亚密码较量

密码那些事儿|(十)“钥匙”打开维吉尼亚的锁

本人是官方授权会员推广专员,点击 会员专属通道 成为会员,您将会获得钻奖励及诸多权益!

《钻奖励调整公告》

恩尼格玛密码机的破译过程

1931年11月8日,法国情报人员与德军通讯部门长官(就是他下令德军使用恩尼格玛密码机的)的弟弟,汉斯-提罗·施密特,在比利时接头。在德国密码处工作的施密特很厌恶德国,于是他就向法国情报人员提供了两份有关恩尼格玛密码机的操作和转子内部线路的资料。但是法国还是无法破译它的密码,因为恩尼格玛密码机的设计要求之一就是要在机器被缴获后仍具有高度的保密性。当时的法军认为,由于凡尔赛条约限制了德军的发展,所以即使无法破译德军的密码,将来如果在战场上相见也不会吃多大亏,于是在得出德军密码“无法破译”的结论之后就再也没有用心地研究它了。

与法国不同,第一次世界大战中新独立的波兰的处境却很危险,西边的德国根据凡尔赛条约割让给了波兰大片领土,德国人对此怀恨在心,而东边的苏联也在垂涎着波兰的领土。所以波兰需要时刻了解这两个国家的内部信息。这种险峻的形势造就了波兰一大批优秀的密码学家。他们很容易就监控住了德军内部的通讯系统,但是1926年被德军启用的恩尼格玛密码机却给他们造成了很大困难。

1921年,波兰与法国签订了一个军事合作协议。在波兰的坚持之下,法国把从施密特那里得来的情报交给了波兰人。在本文“操作步骤”一章的“指示器”一节中,我们提到了指示器步骤的严重缺点,波兰人正是以这个缺点为突破口破译了商业用恩尼格玛密码机。

但1941年英国海军在Joe Baker-Cresswell舰长的斗牛犬号军舰捕获德国潜艇U-110才真正拿到德国海军用的密码机和密码本,并将此事保密只告诉美国罗斯福总统,英国国王乔治六世称赞此事件是整个二次大战海战中最重要的事件。这让原本连数学天才图灵也破译不出的德军密码机得到破译,盟军设计的专门用来破译恩尼格玛密码的“炸弹”机也大大提高了布莱切利园的工作效率。

在战争结束以后,英国人并没有对破译恩尼格玛一事大加宣扬,因为他们想让英国的殖民地用上这种机器。1967年,波兰出版了第一本有关恩尼格玛破译的书,1974年,曾在布莱切利园工作过的英国人F.W.温特伯坦姆写的《超级机密》(The Ultra Secret)一书出版,这使外界广泛地了解到了第二次世界大战中盟军密码学家的辛勤工作。

2001年4月21日,以为破译恩尼格玛而做出了重大贡献的三位杰出的波兰密码学家马里安·雷耶夫斯基、杰尔兹·罗佐基和亨里克·佐加尔斯基命名的雷耶夫斯基、罗佐基和佐加尔斯基纪念基金在华沙设立,它在华沙和伦敦设置了这些波兰密码学家的纪念铭牌。2001年7月,基金会在布莱切利园安放了一块基石,上面刻着丘吉尔的名言“在人类历史上,从未有如此多的人对如此少的人欠得如此多。”

密码那些事儿|(十七)年轻数学家首次破解恩尼格玛机

受影视文学作品影响,提到年轻数学家破解恩尼格玛机,人们的脑海中都会浮现出图灵的名字。不可否认,图灵为最终破解恩尼格玛机确实做出了巨大的贡献,但那是他站在了“巨人的肩膀上”。事实上,在图灵之前,首次破解恩尼格玛机要归功于三位年轻的数学家,他们全部来自波兰。

一战后世界处于暂时的停火状态,波兰位于德国和苏联之间,属于在两个大国的夹缝中求生存。东边经常被苏联渗透,西边的德国又谋划着收复失地,所以波兰的警惕性极高,总感觉随时会被两边的强敌攻陷,从没放松过密码学研究。这种威胁下的恐惧感给了他们破解恩尼格玛机的最大动力。

1929年1月,波兰波兹南大学数学系的一群20多岁的大学生和部分研究生被要求宣誓保密,然后开始学习一门密码学课程。他们每周上两个晚上的课,在几星期后就开始破解各种密码,无法完成破解功课的学生则会被淘汰。最终只剩下了三名优秀者,他们分别是雷杰夫斯基、齐加尔斯基和鲁日茨基。

正是这三位年轻的波兰数学家,破译了曾经被认为不可能被破译的初代恩尼格玛机,其中尤以雷杰夫斯基居功至伟——他建立了破解恩尼格玛机的数学方程。

在破解之前,波兰密码局通过情报渠道掌握了德国人使用恩尼格玛机的一些规定:

1.相互间进行通信的恩尼格玛机都有相同的初始设定,其中包括转子的排列和起始位置,初始设定每天变更一次,操作员每个月都会收到一本新的密码簿,上面记录着每天的初始设定;

2.发报员在每发一份电文前,先按密码簿上的当天设定,初始状态为QCW(假设),然后脑子里随意想3个字母,比如说ABC,用设置成QCW状态的机器给ABC加密,比如说加密后ABC变成了BMW。但一次还不够,还要再加密一次,比如第二次ABC又变成了FTN。然后把两次加密的结果并列写一起,形成BMWFTN;

3.收报员收到加密的电文后,先把自己密码机的转子调到当天规定的起始位置,然后输入密文的前6个字母BMWFTN,解密得到ABC,再把3个转子调到ABC的位置,开始解密正式的电文。

通过这些情报,雷杰夫斯基发现: 从数学的角度来看,密码机的作用就是对26个字母进行置换。

随后,他又根据19世纪法国天才数学家伽罗瓦(这位哥们也是密码学史上的重要人物)的“置换群”代数理论——n个元素的所有置换通过合成关系形成为一种代数结构,建立了恩尼格玛机的“置换群”方程。

比如:字母a被加密成x,字母b被加密成y,字母c被加密成z,就形成了三个置换方程:

T(a)=x,T(b)=y,T(c)=z。解出这个方程的解,也就找到了破解恩尼格玛机的关键。

但是这种置换群的结构仍然十分复杂,想求解也是十分困难。雷杰夫斯基又根据恩尼格玛机的特点,发现了两个限定条件:

第一个条件是由于反射器的作用,恩尼格玛机加密与解密的过程完全一致,也即是T(a)=x与T(x)=a是一致的;

第二个条件是操作规程中的前6个字母。比如,某一天密文的前6个加密字符是BMWFTN,那就可以假设加密前的明文为ABCABC,ABC这三个字母就是该电文的密钥,也就是加密电文时3个转子的初始位置参数。

那么把它用置换方程描述出来就是,T1(A)=B,T2(B)=M,T3(C)=W,T4(A)=F,T5(B)=T,T6(N)=N。

根据第一个条件,就可以转化为,T4(T1(A))=F,T5(T2(B))=T,T6(T3(C))=N。

雷杰夫斯基把这三个置换称为这一天密码的“特征集”,想知道T1、T2、T3、T4、T5、T6,只需要把特征集置换的所有对换总结出来就可以了。

具体的工作就是,把当天截获的信息中,所有可以对应的字母都找出来。

假设波兰人截获四封电文,其中每封电文的开头六个字母分别为:

根据上述的操作方式,每封电文的第一个和第四个字母是同一字母加密而来,于是通过上面四封电文,我们可以得到第一个及第四个字母的联系如下:

如果每天可以得到足够多的电文,那么上面的关系表便可以补充完整如下:

仔细观察这个表格,我们不难发现字母关系中会有如下循环:

同样对第二和第五,第三和第六个字母我们也可以写出类似的循环。

而且三位数学家还进一步发现,这种循环,也即由每天的密钥决定的特征集,当中所包含的环的长度和个数只与转子的排列和初始位置有关。

于是他们决定把所有的特征集按其所包含的环的长度和个数分类。为此雷杰夫斯基在恩尼格码的基础上设计了一台能同时验证所有转子位置的机器,取名为炸弹(La Bomba)。经过一年多的连续运行记录,终于收集到了全部数据。这样,波兰人便从每日截获的大量电文中写出字母循环圈,然后根据循环圈的数目和长度从记录表中检索出相对应的转子位子,即是当日的密钥。

至此,第一代恩尼格玛机被全部破解。以后几年,波兰密码局每天都能破译大量的德军情报。

上面对雷杰夫斯基的工作的介绍是极其简单化的,只以举例的形式介绍了其中最重要的思路。雷杰夫斯基对于ENIGMA的分析是在密码分析史上最重要的成就之一,整个工作都是严格地数学化了的(求解关于置换矩阵的方程),决非上面所举例子可以包含。比如说,找到当日密钥中转子状态后,还需要找到连接板状态,才能真正译出密文。

为了表彰雷杰夫斯基、齐加尔斯基和鲁日茨基的功勋,2000年时他们被追授了“波兰复兴大十字勋章”。在2005年雷杰夫斯基诞辰100周年时,他的家乡比得哥市还为他建立了一座铜像,以纪念他在破解恩尼格玛机中的丰功伟绩。

往期文章:

密码那些事儿|(十六)二战中大放异彩的“超级情报”

密码那些事儿|(十五)坚持就是胜利——初代恩尼格玛机

密码那些事儿|(十四)古典密码的巅峰——恩尼格玛机

密码那些事儿|(十三)尴尬的维吉尼亚3.0

密码那些事儿|(十二)短命的维吉尼亚2.0

密码那些事儿|(十一)南北战争时的维吉尼亚密码较量

密码那些事儿|(十)“钥匙”打开维吉尼亚的锁

密码那些事儿|(九)维吉尼亚登场

密码那些事儿|(八)玛丽女王被密码改变的人生

密码那些事儿|(七)以频率之矛,攻移位之盾

密码那些事儿|(六)中外古时候的移位加密

本人是官方授权会员推广专员,点击 会员专属通道 成为会员,您将会获得钻奖励及诸多权益!

《钻奖励调整公告》

Enigma 英格玛密码机是谁最先破译的?

英格玛密码机由波兰人马里安·雷耶夫斯基、杰尔兹·罗佐基和亨里克·佐加尔斯基最先破解。

1931年11月8日,法国情报人员与德军通讯部门长官(就是他下令德军使用恩尼格玛密码机的)的弟弟,汉斯-提罗·施密特,在比利时接头。在德国密码处工作的施密特很厌恶德国,于是他就向法国情报人员提供了两份有关恩尼格玛密码机的操作和转子内部线路的资料。但是法国还是无法破译它的密码,因为恩尼格玛密码机的设计要求之一就是要在机器被缴获后仍具有高度的保密性。当时的法军认为,由于凡尔赛条约限制了德军的发展,所以即使无法破译德军的密码,将来如果在战场上相见也不会吃多大亏,于是在得出德军密码“无法破译”的结论之后就再也没有用心地研究它了。

与法国不同,第一次世界大战中新独立的波兰的处境却很危险,西边的德国根据凡尔赛条约割让给了波兰大片领土,德国人对此怀恨在心,而东边的苏联也在垂涎着波兰的领土。所以波兰需要时刻了解这两个国家的内部信息。这种险峻的形势造就了波兰一大批优秀的密码学家。他们很容易就监控住了德军内部的通讯系统,但是1926年被德军启用的恩尼格玛密码机却给他们造成了很大困难。

1921年,波兰与法国签订了一个军事合作协议。在波兰的坚持之下,法国把从施密特那里得来的情报交给了波兰人。波兰人正是以这个缺点为突破口破译了商业用恩尼格玛密码机。

但1941年英国海军在Joe Baker-Cresswell舰长的斗牛犬号军舰捕获德国潜艇U-110才真正拿到德国海军用的密码机和密码本,并将此事保密只告诉美国罗斯福总统,英国国王乔治六世称赞此事件是整个二次大战海战中最重要的事件。这让原本连数学天才图灵也破译不出的德军密码机得到破译,盟军设计的专门用来破译恩尼格玛密码的“炸弹”机也大大提高了布莱切利园的工作效率。

在战争结束以后,英国人并没有对破译恩尼格玛一事大加宣扬,因为他们想让英国的殖民地用上这种机器。1967年,波兰出版了第一本有关恩尼格玛破译的书,1974年,曾在布莱切利园工作过的英国人F.W.温特伯坦姆写的《超级机密》(The Ultra Secret)一书出版,这使外界广泛地了解到了第二次世界大战中盟军密码学家的辛勤工作。

图灵发明的人工智能,破译了德国恩格密码机

图灵发明了破译德国格恩密码机,是计算机的雏形。但并不是人工智能,但对人工智能有很多贡献。艾伦·麦席森·图灵(Alan Mathison Turing,1912年6月23日-1954年6月7日),英国数学家、逻辑学家,称为计算机科学之父,人工智能之父。图灵对于人工智能的发展有诸多贡献,提出了一种用于判定机器是否具有智能的试验方法,即图灵试验,至今,每年都有试验的比赛。图灵发明了破译德国格恩密码机,是计算机的雏形。但并不是人工智能,但对人工智能有很多贡献。艾伦·麦席森·图灵(Alan Mathison Turing,1912年6月23日-1954年6月7日),英国数学家、逻辑学家,称为计算机科学之父,人工智能之父。图灵对于人工智能的发展有诸多贡献,提出了一种用于判定机器是否具有智能的试验方法,即图灵试验,至今,每年都有试验的比赛。

2条大神的评论

  • avatar
    访客 2022-10-10 上午 05:44:54

    挽救了欧洲几千万人的生命。 在以下领域他都做出了卓越的贡献 图灵在第二次世界大战中从事的密码破译工作涉及到电子计算机的设计和研制,但此项工作严格保密。直到70年代,内情才有所披露。 从一些文件来看,很可能世界上第一台电子计

  • avatar
    访客 2022-10-10 上午 08:17:04

    福总统,英国国王乔治六世称赞此事件是整个二次大战海战中最重要的事件。这让原本连数学天才图灵也破译不出的德军密码机得到破译,盟军设计的专门用来破译恩尼格玛密码的“炸弹”机也大大提高了布莱切利园的工作效率。在战争结束以后,英国人并没有对破译恩尼格玛一事大加宣扬,因为他们想让英

发表评论