敬畏传奇——直面第一台可编程电子计算机:Colossus

作为程序员或任一种IT从业者,致敬第一台可编程电子计算机 Colossus!它的诞生有趣且颇多曲折——二战期间被发明后先是用于机密事务,历经Enigma代码、密码机、转子系统等时期。这凝聚了多人心血的宏大工程令人敬畏。

敬畏传奇——直面第一台可编程电子计算机:Colossus


发明故事被反反复复地传诵,年轻一代对此深信不疑。然而人们对这些故事的态度仿佛它们是有着发明家名字的某个故事——在这些事件之前,发明并不存在,之后仿佛魔法一般,发明就出现了。你一定听过落在牛顿头上的苹果、阿基米德浴缸里的水溢出之类的故事。有时,发明家的名字会由于国家不同而有所变化,这也引起人们对发明故事区别的思考。事实上,很多情况下,一个发明的产生存在不止一处激动人心的时刻;相反,如今为人所知的伟大发明家的发明是构筑在前人的努力之上,他们只是一群幸运的工程师和科学家,点子在其他人之前演变成了奇迹般的突破。

计算机的演变史也无例外,许多人的努力才成就了如今不可或缺的电子设备,例如17世纪法国Blaise Pascal发明的机械计算器、英国Charles Babbage 和伯爵夫人Ada Lovelace 19世纪的研究、美国Herman Hollerith于19世纪末发明的穿孔制表机、德国Konrad Zuse的研究等。

因此在计算机领域里查找一名发明家时,我们要更加具体提出问题,而不仅仅是类似“谁发明了第一台计算机?”这样的问题,因为实在有太多的答案人选。如果我们进一步约束问题范围,例如“谁发明了第一台可编程电子计算机?”,这样答案会简单的多,因为问题透露了关于计算机足够多的信息。答案往往是“第一台可编程电子计算机是Colossus,在英国布莱切利园由Alan Turing在二战期间发明,用于解读纳粹恩尼格玛(Enigma)代码,而这直到20世纪70年代才公布于众”。

这是一段看似几乎完美的简短引述,然而包含着许多无用的谬误。Colossus的确是你找寻的答案,在二战期间发明,随后多年作为机密事项,但剩下的部分则毫无根据。Colossus并不是在英国布莱切利园发明,其目的也不是解读恩尼格玛代码,而Alan Turing的直接参与更是微乎其微。真实故事要比这有趣得多。


英国布莱切利园,奇迹之处

敬畏传奇——直面第一台可编程电子计算机:Colossus

Heinz Guderian将军在对法战争中查看恩尼格玛机器的操作。Bundesarchiv, Bild 101I-769-0229-11A / Borchert, Erich (Eric) / CC-BY-SA 3.0, via Wikimedia Commons

首先我们来看布莱切利园的部分,现在有现代布莱切利园和国家计算机博物馆(The National Museum Of Computing)。博物馆有着众多藏品,而这其中两处画廊与我们今日主题相关。首先是Tunny展馆,其展示了促使Colossus发明的一系列时间和相关背景;再者是Colossus展馆,其收藏了全面功能性的二代Colossus计算机复制品。

最为著名的纳粹编码系统是恩尼格玛,便携式机器组装上打字机后就成为努力解码的标志。这是一种德国军事作战单位使用的代码,不同通讯线路有细微不同的组成方式。并且根据照片显示,这些编码机器往往在前沿征地或移动信号单位操作。

当然,恩尼格玛不是唯一德军使用的编码系统,也不是唯一被协约国截获的代码,更不是唯一布莱切利园人员需要破解的代码。

Tunny展馆的第一部分向人们阐述了洛仑兹密码机(也称Tunny)是如何保障德军最高指挥部之间的交流,并实时对电传打字机交流进行编码。表面上,洛仑兹密码机和恩尼格玛编码系统很相像因为其采用了转子系统(rotor system);而在恩尼格玛系统的线路交流方面,其转子通过使用和二进制电传交流相异或(XOR)的伪随机二进序列来生成加密输出。同样,与恩尼格玛不同的是,洛仑兹密码机的破译者没有现成的机器研究,所以他们只能通过研究其密码编译的截获信息来解读信息。

 

缩短战争的“鱼”(即Tunny,原意金枪鱼)

敬畏传奇——直面第一台可编程电子计算机:Colossus

博物馆的洛仑兹密码机

在博物馆,游客可以参观监听电台。在这儿,他们可以观察到在截获的电文被送到布莱切利园的加密分析专家处研究之前,电文是如何记录在纸带(早期计算机使用的一种五孔纸条),手写的;感受电台人员收集电文付出的努力。运气所致,人们迎来了突破。1941年8月,雅典的一位操作员失误用其洛仑兹密码机、相同密码设置,发送了一条4000字的信息两遍,为布莱切利园的破译人员降低了解码难度。随后数学家Bill Tutte被委任任务,利用这两封密文和译码方式推演密码机运转方式,而这项任务直到近1942才完成。在雅典通讯线路有所突破后,这项任务被授予代号“Tunny”。这些任务代号都以鱼的种类命名。

在Tunny画廊的中心是重建的Tunny机器,由伦敦多利士山的邮政研究局(Post Office Research Station)重制的洛仑兹密码机复制品。人们可以通过一块和洛仑兹密码机转子装置类似的插板设置机器、解码,但仍需要转子装置确保可使用。1943年中期的一台叫做“Heath Robinson”的机器导致了自动推动了人们对于转子设置的发现。Heath Robinson是一名英国漫画家,表达用复杂机械完成简单任务的设计)。如果你没听说过他,但你了解Rube Goldberg,那么恭喜,你和我们思路一致。


重建的 Heath Robinson 机器

敬畏传奇——直面第一台可编程电子计算机:Colossus

博物馆在其洛仑兹密码机复制品边上重建了一台Heath Robinson机器,与原版相同,在滑轮装置产生的张力下,机器装有一对长条的打孔纸带环。其一记有密文,而另一个有一组转子可能的设定序列,并且一组取自Tunny机器的逻辑能和转子设置中的每一个轮流验证密文。由此而得的输出结果将会用来生成轮子设置组,大幅降低密文分析专家的破译难度。

一旦游客观摩了两台机器的运转过程,导游会展示由于Heath Robinson机械原理,损坏的部分纸带,侧面说明了机器运转缓慢且不可信。尤其是两纸带的紧密同步,这对机器运转十分重要,但同时这也是机器往往失败的地方。导游随后会讲解Alan Turing是如何推荐他在恩尼格玛项目中合作过的工程师参与Heath Robinson团队,而这也是Turing对Colossus的唯一直接贡献。

Tommy Flowers是多力士山交换小组的领头人,而这也是他的想法:如何使Heath Robinson关于Tunny转子装置的纸带序列能通过闸流管在电子层面上生成,这促使了机器Colossus的产生。密文仍能从打孔纸带上读得,但密文还能输入至Colossus机器的电子可编程功能区。虽然它并不是我们现在熟知的存贮程序计算机,但它符合可编程电子计算机的描述。


 直面伟大之作

敬畏传奇——直面第一台可编程电子计算机:Colossus

二代Colossus机器的前部

和周末第一批访客一样,我们走进了博物馆的Colossus展廊,十分幸运地看到它正在重获新生。位于房间中心的这台机器是2007年完成的二代Colossus的复制品,唯一的障碍是摆放的安全隔离栏,旨在使大众远离高电压。此外,我们可以看到有两根平行、几近天花板高度的长支架,除非它们在一间没有天花板的战时小屋;两根支架上都镶满了成千上万的真空管。在远处末端有类似于Heath Robinson机器的纸条读卡器,接近中间的是编程机器的插板和开关,离你最近的末端是记录结果的电子打印机。

机器缓慢供电以避免过热风险,并延长试管的使用寿命。我们的导游告诉我们机器一年仅需更换个位数试管,而考虑到其拥有的试管数,这是令人惊奇的。一旦机器开始运转,你会发现原本在房间内感受到的早晨的微冷迅速被试管灯丝所产生的巨大热量所替代;尽管机器可能比你预想的还要安静,纸带读取器仍在周而复始地呼呼作响。

与种子机器共处一室对于工程师来说是一次有趣的经历,即使这是复制品。一些其他游客似乎是因为机器与世界大战的联系而非其科技重大意义来这儿,但看到我们不是唯一那些同这一两块焊接金属打交道的人,感觉真有趣。这一刻体会到我们这七十年走了有多远,无论是赞扬那些建造了Colossus的人——尽管Colossus的存在是国家机密——还是赞扬他们工作的深远影响。机器的运转规模和复杂程度巨大,是令人惊叹的宏伟工程。


敬畏传奇——直面第一台可编程电子计算机:Colossus

布莱切利园的真正洛仑兹密码机,从挪威武装部队博物馆暂借。破译人员直到大战末期才看见密码机,这也是为什么我们将这张图片摆在文末。

英国国家计算博物馆(The National Museum Of Computing)拥有一系列令人惊奇的老式、具有历史意义的计算机,远不止本文提到的战时计算机。如果你在布莱切利附近,这里绝对值得一去。博物馆由一家慈善受托基金机构管理,以合理价格的门票收入和捐助维持经营。还不快将英国国家计算博物馆提上旅游日程!



来源:漏洞银行
链接:http://www.bugbank.cn/news/detail/57c4270a7515bcff109b786b.html
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值