Enigma 英格玛密码机是谁最先破译的 (图灵enigma密码)

2023-04-01 15:19:48 密码用途 思思

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

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

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

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

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

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

带你深入理解图灵机--天才所在的时代

这几年由于区块链的大热,以太坊独特的solidity语言实现智能合约功能, 图灵完备 这个词走进大家的视线。

没有计算机专业知识的同学其实很难理解这个词的意思,其实计算机专业的同学都没有深入理解图灵机,图灵完备,图灵测试等概念包含的内涵。为了方便理解区块链技术,理解智能合约,笔者准备分几篇文章来带大家从浅入深,一步一步带你深入理解图灵机,相信通过这几篇文章能就能够理解什么是图灵完备。

艾伦·麦席森·图灵(Alan Mathison Turing,1912年6月23日-1954年6月7日),英国数学家、逻辑学家, 被称为计算机科学理论之父,人工智能之父。

1931年,图灵考入剑桥大学国王学院,由于成绩优异而获得数学奖学金。

1936年5月,年仅24岁的图灵发表一篇题为《论数字计算在决断难题中的应用》的论文,论文中提出一种计算装置,后被称为 “图灵机” ,图灵机不是具体的计算机,而是一种计算概念、计算理论。

1938年在普林斯顿获博士学位,其论文题目为“以序数为基础的逻辑系统”,在数理逻辑研究中产生了深远的影响;同年图灵回到英国,在剑桥大学国王学院任研究员。

第二次世界大战期间,1939年图灵到英国外交部通信处从事军事工作,主要是破译敌方密码的工作。由于破译工作的需要,他参与了世界上最早的电子计算机的研制工作。他的工作取得了极好的成就,破译了德国人Enigma密码,于1945年获政府的最高奖——大英帝国荣誉勋章。

1945年,图灵结束了在外交部的工作,他试图恢复战前在理论计算机科学方面的研究,具体研制出新的计算机来。

1950年他发表论文《计算机器与智能》( Computing Machinery and Intelligence),为后来的人工智能科学提供了开创性的构思。提出著名的 图灵测试 。

1950年,1950年10月,图灵发表论文《机器能思考吗》。这一划时代的作品,使图灵赢得了“人工智能之父”的桂冠。此时,人工智能也进入了实践研制阶段。随着这几年AI技术的不断成熟,人们越来越认识到图灵思想的深刻性:它们至今仍然是人工智能的主要思想之一。

1954年6月7日,年仅41岁的图灵被发现死于家中的床上,床头还放着一个被咬了一口的苹果。这就是现在大名鼎鼎的苹果电脑公司logo的来源。

从图灵的生平中,我们知道,他出生在20世纪初,1912年。

在世界国家格局上,这个时候刚刚爆发第一次世界大战(1913~1921),紧接着1939年至1945年第二次世界大战,大家知道,这两次世界大战倒逼了很多科技的发展,二战期间恰好是图灵青年时代。

在科技文明发展上,由于逻辑的数学化,促使了数理逻辑学科的诞生和发展。但同时这个时期数学上发生了第三次数学危机,具体介绍在下方。图灵在剑桥读大学期间,修读了“数学基础”课程,授课人是纽曼,纽曼整个课程包含对哥德尔不完备性定理的证明和尚未解决的判定性问题。

这些科技事件的背后,其实是人们在认知上,对 可计算性理论 的研究,图灵正是这个问题终结者。

随便提一下,爱因斯坦1905年提出狭义相对论,1927年年仅15岁的图灵为了帮助母亲理解相对论,还写过论文的摘要。

在20世纪以前,人们普遍认为,所有的问题类都是有算法的,人们的计算研究就是找出算法来。1900年,当时著名的大数学家希尔伯特在世纪之交的数学家大会上给国际数学界提出了著名的23个数学问题。

其中第十问题是这样的:

“丢番图方程”指:有一个或者几个变量的整系数方程,它们的求解仅仅在整数范围内进行。

上面这个问题简单点解释是:随便给一个不确定的方程,是否通过有限的步骤运算,判断这个方程是否存在整数解。

这个问题在1970年,苏联一个数学家证明了其实很多数学问题,是没有答案,甚至没有答案的问题比有答案的问题还要多。

这里就提出来了有限的、机械的证明步骤的问题,其实就是算法。但在当时,人们还不知道“算法”是什么。实际上,当时数学领域中已经有很多问题都是跟“算法”密切相关的,因而,科学的 “算法” 定义呼之欲出。之后到了30年代的时候,终于有两个人分别提出了精确定义算法的方法,一个人是图灵,一个人是丘奇。而其中图灵提出来的图灵机模型直观形象。

图灵思考这个问题的方式和常人不一样,在写前面提到的论文《论可计算数及其在判定性问题上的应用》的时候,图灵在思考三个问题

图灵这样的天才考虑问题的认知是高屋建瓴的。

图灵首先考虑的是是否所有数学问题都用解,如果这个问题不解决,辛辛苦苦解题,最后发现无解,一切的努力都是浪费时间和精力。

对于存在答案的数学问题,只有部分是可以在有限步骤内完成,这样把计算机的边界确定下来了。

确定了边界之后,就要设计一种通用、有效、等价的机器,保证可以按照这个方法做事,最后得到答案。而图灵机就是图灵设计出来的这样的一个机器,严格来讲是一种数学模型、计算理论模型。

从图灵机提出到现在已经过去了80多年,今天所有的计算机,包括量子计算机都没有超出图灵机的理论范畴。

第三次数学危机产生于十九世纪末和二十世纪初,当时正是数学空前兴旺发达的时期。首先是逻辑的数学化,促使了数理逻辑这门学科诞生。

早在19世纪末的时候,康托尔为集合论做了奠基性的研究。人们发现,运用集合这个概念可以概括所有的数学,也就是说集合是一切数学的基础。然而就当这座大厦即将完工的时候,一件可怕的事情发生了,罗素提出来的罗素悖论粉碎了数学家的梦想。

关于罗素悖论的一个通俗化版本是:

为什么要第三次数学危机呢?

因为有个很重要的概念: 停机问题 ,停机问题是逻辑数学中可计算性理论中很重要的问题,也是第三次数学危机的解决方案。

停机问题 通俗地说,停机问题就是判断任意一个程序是否能在有限的时间之内结束运行的问题。该问题等价于如下的判定问题:是否存在一个程序P,对于任意输入的程序w,能够判断w会在有限时间内结束或者死循环。

有人猜测图灵机模型是图灵在思考 停机问题 而顺带设计出来的,是很有道理的。

图灵在剑桥大学国王学院期间,研究过一本叫做《量子力学的数学基础》的新书,这本书由年轻的匈牙利数学家约翰·冯·诺依曼所著。图灵意识到计算可以用确定性的机械运动来进行表示。其实我们现在的电子计算机虽然不是我们传统意义上的机械,但是CPU内部的电子运动等价于机械运动。

同时图灵也意识到人的思想、意识来自于量子力学中的测不准原理,这不光是微观世界,同时也是这个宇宙本身的规律。所以图灵意识到计算是确定性的,可判定的,而意识是不定的,不可计算的。

在AI人工智能有巨大发展的今天,很多人担心计算机是否会和人一样有意识,其实图灵在80多年前已经考虑过这个问题了。

前面提到,图灵在1950年写过一篇论文《计算机器与智能》,在这篇论文中,图灵测试一词被提出来:

这个测试有多难?目前我们所有的人工智能都没有完成这个测试。最近2018年3月份的谷歌I/O大会上演示的AI产品,据说“部分通过图灵测试”。这个部分到底有多少也未可知。

从人类科技发展的历史上来看,19世纪末到20世纪中期,是第二次工业革命和第三工业革命过渡的时期。第二次工业革命主要电和磁、内燃机的发明和使用,发展到这个时候科学家对世界的认知越来越多,越来越清晰,物理学和数学等自然科学发展迅速。这个时候的数学家发现很多现象可以用数学模型来表示,从物体的运动到星球的运动、从热能到动能的转换、从电到磁的转换等等。那问题来了是否所有的现象都可以用数学模型来表达呢?真是这个问题,让人们对数学很多根本性问题进行思考和研究。

中国有句古话说:乱世出英雄。在图灵的时代,在科学历史上出了很多的科学英雄,包括爱因斯坦、冯诺依曼、图灵、哥德尔等等,一方面是时代背景使然,一方面真是他们的天赋和努力让以信息化为代表的第三次工业革命的进程大大加快了。

从这些巨匠的思考问题,解决问题的方法和认知来看是超出常人的。从对 可计算性理论 的思考,给了我们很大的启示:

**更多有关区块链的技术与思维,可扫码加入我的小密圈。在这里,我陪着你,大家一起研究区块链技术,探讨区块链思维,预测区块链未来,一起做未来前10%的人

**

密码技术(二)之历史上著名的密码

 恺撒密码是一种相传尤利乌斯.恺撒曾使用过的密码。恺撒于公元前100年左右诞生于古罗马,是一位著名的军事统帅。

 恺撒密码是通过将明文中所使用的字母表按照一定的 “平移” 来进行加密的。

 恺撒密码是通过将明文中所使用的字母表平移来生成密文的。但是,如果我们将字母表的26个字母,分别与这26个字母本身建立一对一的对应关系,那么无论哪一种对应关系就都可以作为密码来使用。这种将明文中所使用的字母表替换为另一套字母表的密码成为 简单替换密码 。恺撒密码也可以说是简单的替换密码的一种。

  简单替换密码的加密过程是一次将明文中的每一个字母按照替换表替换成另一个字母。

 Enigma是由德国人阿瑟.谢尔比乌斯于20世纪初发明的一种能够进行加密和解密的机器。Enigma这个名字在德语里是“谜”的意思。谢尔比乌斯使用能够转动的圆盘和电路,创造出人类手工无法实现的高强度密码,在刚刚发明之际,Enigma被用在商业领域,后来到纳粹时期,德国国防采用了Enigma,并将其改良后用于军事用途。

 Enigma是一种由键盘、齿轮、电池和灯泡所组成的机器,通过这一台机器就可以完成加密和解密的操作。

 发送者和接收者各自拥有一台Enigma。发送者用Enigma将明文加密,将生成的密文通过无线电发送给接收者。接受者接收到的密文用自己的Enigma解密,从而得到明文。

  由于发送者和接收者必须使用相同的密钥才能完成加密通信,因此发送者和接收者会事先收到一份叫作 国防军密码本 的册子。国防军密码本中记载了发送者和接收者所使用的 每日密码 ,发送者和接收者需要分别按照册子的指示来设置Enigma。

Egnima的破译过程十分冗长和复杂,在这里就不详细介绍了,不过有一位鼎鼎大名的破译团队一员,阿兰.图灵(现代计算机之父)是一定要提的,并且研制除了破译Enigma的机器。

该系列的主要内容来自《图解密码技术第三版》

我只是知识的搬运工

CCCF专题 | 图灵和密码安全

CCCF第7期专题邀请了相关领域的6位专家学者深入探讨图灵对密码学发展的深远影响和密码学的前沿进展,涵盖了密码设计与密码分析这两个密码学的组成部分,同时兼顾了广度与深度。各专题文章原文详见CCF数字图书馆。

关键词: 密码学 图灵 网络空间安全 信息安全

从早期作为一种实用性技术,到今天发展为一门严谨的学科,密码学的发展史汇聚了人类文明的聪明才智。围绕着如何使用密码实现安全和隐私保护与如何安全地使用密码这两个本质问题,密码的设计与分析相互依存,相互促进,处在不断的博弈中,这使得密码的研究得到了持续的发展。

在发展过程中,计算机科学之父艾伦·图灵(Alan M. Turing)做出了多方面本质的贡献,对密码学的成熟产生了深远的影响。首先,在密码安全定义建模方面,图灵的可计算性理论及其发明的(通用)图灵机起着重要的作用。例如,我们知道在现代密码中,设计者首先需要证明其提出的密码算法或者协议可以抵御所有的已知和未知的攻击。然而,有很多密码算法或者协议无法证明自己是安全的,但也无法找到安全漏洞。在这种情况下,是设计者没有找到正确的证明方法呢?还是这个密码算法或者协议本身就不可能被证明呢?图灵奠基的可证明性理论对这些问题给出了答案,那就是很多我们无法证实或者证伪的密码算法或者协议,并不是由于设计者缺少正确的证明方法,而是这个密码算法或者协议本身就不可能在有限步骤内被证明。这就要求设计者不断地对其密码算法或者协议进行修改,使得其能被证明。此外,图灵发明的(通用)图灵机也被广泛应用于密码算法或协议敌手模型中对敌手的建模,使对敌手的运算时间约束可以转化成对于算法的计算步骤限制。目前被密码学界广泛接纳的通用可组合安全模型(universal composability)就是通过多项式时间通用图灵机来模拟敌手的。

本期专题邀请了相关领域的专家学者深入探讨图灵对密码学发展的深远影响和密码学的前沿进展,共组织了六篇文章,涵盖了密码设计与密码分析这两个密码学的组成部分,同时兼顾了广度与深度。

第一篇文章是由英国兰卡斯特大学助理教授张秉晟和浙江大学研究员秦湛联合撰写的《通用图灵机及其对现代密码安全建模的影响》,以(通用)图灵机的计算理论为切入点,深入浅出地分析(通用)图灵机对密码学基本算法工具的安全定义和对密码协议的安全性建模产生的深远影响。作者介绍了密码学中的加密算法是如何从AES时代逐渐演化到现在的可证明安全定义以及(通用)图灵机在其中起到的作用。另外,作者还梳理了密码协议,例如安全多方计算的安全性建模和定义是如何通过几十年的研究探讨演化到如今的通用可组合安全模型,重点解析了交互式图灵机对整个通用可组合安全模型构架的奠基作用。

第二篇文章是由山东大学教授王美琴等撰写的《从图灵破解Enigma到现代密码分析》,介绍了Enigma密码机的工作原理和图灵对Engima密码机的破解,并且解析了Enigma密码机的破解对现代密码分析的影响。作者还以针对哈希函数的破解实例来呈现现代密码分析对安全密码算法设计的重要性。

第三篇文章是由中国科学院信息工程研究所研究员胡磊和副研究员宋凌撰写的《密码杂凑函数的回顾与进展》,介绍了用于实现密码学研究中的完整性和认证性的一类关键密码学函数——密码杂凑函数(又称哈希函数、散列函数等)。作者阐述了密码杂凑函数的性质及其具体应用,梳理了密码杂凑函数的发展脉络,总结了密码分析对密码杂凑函数标准化的影响,并具体介绍美国国家标准与技术研究院(NIST)杂凑函数标准SHA-3及其最新分析进展。

第四篇文章是由香港城市大学副教授王聪和武汉大学教授王骞等联合撰写的《安全多方计算理论与实践》,从理论和实践的双重角度对安全多方计算进行深入的解析。作者从生动的现实问题入手,介绍了安全多方计算的系统模型、安全模型以及理论上的普适性解决方案。同时,文章还梳理了安全多方计算在实际应用中的前沿进展,总结了当前安全多方计算应用的现状,指出了未来安全多方计算的研究方向。

第五篇文章是由美国新泽西理工学院助理教授唐强和哥伦比亚大学教授慕梯·杨(Moti Yung)联合撰写的《抗后门的新一代密码学Cliptography研究进展》,对密码学的通用后门攻击Kleptography进行了系统的总结,并且介绍了抗后门密码学Cliptography的前沿进展。作者先阐述了密码学后门背后的科学原理,回答了如何在设计之初就考虑到这种可能的后门攻击问题,进而介绍了抗后门密码学Cliptography如何弥合这个密码学理论设计与实际实现之间的鸿沟,并对新一代密码学理论基础和密码标准提出新的建议。

第六篇文章是由浙江大学副教授张帆、上海交通大学教授谷大武等撰写的《人工智能之于旁路分析》,介绍了人工智能技术在密码旁路分析领域的研究现状,梳理了机器学习算法在旁路分析领域的发展过程,剖析了人工智能技术在密码旁路分析领域取得成果的原因,并指出了将人工智能技术与旁路分析领域结合的研究方向。

希望本专题能鼓舞更多的学者和安全从业人员参与到网络空间安全和信息安全的研究中,设计与分析新密码算法和协议,开拓新的研究方向和领域。

作者介绍

任 奎

CCF专业会员。浙江大学网络空间安全研究中心主任,国家千人计划特聘教授。主要研究方向为数据安全,云安全,人工智能安全,物联网安全等。kuiren@zju.edu.cn

CCF推荐

【精品文章】

点击 “阅读原文” ,前往CCF数图相关栏目。