未来与历史的碰撞,当PicoScope与世界上第一台计算机相连

楔子

第二次世界大战期间,为了破译德国军事密码,Colossus解码机在英国Bletchley Park被发明出来,它堪称世界上第一台计算机,艾伦.图灵是开发团队的核心成员,卷福出演的电影《模仿游戏》再现了那一段历史。Colossus在1994年被重新建造并展出,PicoScope很荣幸地与之连接以展示其内部工作的信号。PicoScope作为下一代新型示波器的先驱,与古老计算机的这一次碰撞堪称历史经典。


英国隐藏最深的秘密

在英国伦敦市郊外西北50英里的地方,有一座Bletchley庄园,它是第二次世界大战期间,英国情报部门破译密码的中心机构(当时也被称为XStation)。正是在这里,一群天才数学家(其中包括著名的艾伦.图灵)破解了德国的Enigma密码机,从此对希特勒的军事行动了如指掌,扭转了二战的局势。

在Bletchley庄园工作的工作人员在顶峰时曾达到数千人,他们专门从事密码分析和破译工作。当然,德军除了了解此地的人员规模以外,对Enigma已被破解一无所知,仍然坚信它是世界上绝对安全的密码机。

历史学家公认,密码机的破解是盟军胜利的重要因素之一,整个战争因此缩短了2年,拯救了千千万万的生命。

战后,庄园里所有的痕迹都被抹掉了,好像这里什么也没有发生过。直到1970年代中期,曾经在这里工作过的人们仍然不愿提起当年的往事。当年,许多天才的工具和机器被发明出来,在庄园里辅助密码的破解,其中之一就是Colossus——世界上第一台电子计算机。(我们在课本上都学到过冯诺依曼的ENIAC是世界上第一台计算机,这也是许多年来业界公认的,然而随着历史资料逐渐解密,英国和美国政府发布了更多Colossus相关的信息,目前业界已经大多认可Colossus才是世界上第一台计算机)。

德军的密码

二战期间,德军非常依赖Enigma机来加密信息。最早在战前的波兰就曾经截获过这种机器加密的电报,此后Bletchley就主要负责破解它。(凯特.温丝莱特主演的一部电影Enigma讲述了一些背景故事)。德军的最高指挥,并不依赖Enigma,而是使用一套更加复杂的、基于加密发报机的系统,它是由Lorenz公司开发的。

Lorenz 机使用打点的纸带来记录报文(如下图,用的是32字符的Baudot编码),把明文的信息和一组干扰字符串二进制相加(在逻辑运算中相当于异或运算),接收解码信息时再进行一次相同的加法运算就行了。

假如干扰字符串是真正随机的,那么就无法破解这种加密,但是破译的人发现,这组干扰字符串序列是通过旋转加密机的机械齿轮来产生的,实际上是一组伪随机码,那么如果伪随机码序列能够被解出来,密码也就被破译了。

在Bletchley工作的Brigadier John Tiltman和 剑桥毕业生Bill Tutte 抓住了德国电报员的错误,并开始反推伪随机序列,以及Lorenz机是怎样加密的(这一段在卷福的电影里有)。在1942年,这项工作就完成了,DollisHill的邮电研究实验室(Post Office Research Lab)被指派复制一台Lorenz机,他们那时候连真的Lorenz长什么样子都不知道。他们的这台复制品命名为Tunny,接下来破解工作开始了,但是问题随之而来,破解一组信息花的时间太长了,因为完全是手工劳动,一条信息竟然需要几个星期甚至几个月来破译,失去时效性,所以破解就变得毫无意义。

Colossus简史

Max Newman,著名的数学家,想出了一种自动方法来搜索Lorenz机的排列组合,这需要用到两条纸带。第一个上面记载着需要解码的信息,另一条是周期性的伪随机序列。每当纸带转动一次,就用一组伪随机序列尝试解码一次,完成以后再移动到下一组序列,再解码。最后给每组解码的结果评分,也就是评价他算不算有效文字。解出来结果评分最高的一组,就被当成最终密码,交给Tunny机去解码。

电信研究所的Malvern被指派实现这个想法,这台机器是利用机械继电器来控制工作的,名字取作Robinson(Heath Robinson 的意思是十分复杂),虽然Robinson机能够工作,却十分的不稳定。特别是转动速度快的时候(比如1秒1000个字符),机械控制的两条纸带不能很好的同步。Newman为了解决Robinson的问题,和Tommy Flowers商量,后者是一个天才电子工程师,也在DollisHill供职。

TommyFlowers用了一种很有创意的方法来解决Robinson的问题。他把移动的纸带替换成了真空管阵列。当然,在那个时代,使用电子开关控制的真空管是非常打破常规的一种选择,它极大地提高了整套系统的操作速度,在那之前真空管被普遍认为是一种不可靠的元器件,一般用来放大模拟信号。

改进后的机器就是Colossus,从1943年3月开工,到1944年在Bletchley庄园投入使用。几乎在投入使用的一刻,Colossus立刻获得了成功,它和Tunny配合使用,能够在几小时之内就破解德军的高等级密码。后来它被证明了在

诺曼底登陆中起到了极大的作用。Colossus的并行计算设计,使得它工作速度出人意料的快,甚至超过了奔腾处理器的电脑,例如解码一串同样的加密信息,花费的时间只要需要奔腾PC的一半。

Colossus一共建造了10台,在整个战争中它的设计不断改进升级,这些机器解码了数万条德军信息,为盟军的胜利做出了不朽的贡献。

战争结束时,为了不让外界知道他们的存在,这10台Colossus被拆掉并且所有的技术图纸和文档全部焚毁。一直到30年后,它们的秘密才被人揭晓。

重建Colossus

上面提到过,1970年代关于Bletchley庄园的秘密泄露出来,在1970年代早期,就有人发起了重建庄园废墟的运动。其中Tony Sale担任了第一任Bletchley博物馆的馆长。(Tony Sale 曾在军情5处工作,并曾担任Peter Wright的技术助理,人称“间谍终结者“)。

1993年Tony Sale收集了所有和Colossus有关的信息,包括一些战时的照片,电路图的残片和幸存的设计人员的访谈录。基于这些,他决定重建Colossus.

重建工程于1994年在Bletchley庄园启动,在Colossus9号机的原址上建造。到了1996年6月,Tony和他的团队已经完成了大部分的工作,即使只有2bit可以工作,而不是原版的5bit(32字符Baudot编码需要5个bit)。开机仪式由Kent郡公爵在1996年6月6日主持,TommyFlowers本人也参加了仪式。

重建工作此后继续进行了若干年,直到博物馆开展,人们可以前往一睹Colossus的风采,更多背景故事请访问:Tony Sale的网站:Tony Sale has an excellent website.

PicoScope与纸带读取

当年Colossus的前身,Robinson机的一个问题就是纸带读取。用纸带记录加密信息是一种很传统的方式,用机械结构拉动纸带的读取速度不能太快,如果超过了每秒钟1000个字符,纸带就会被扯断。

Colossus使用的是光学方法读取纸带内容,这是Arnold Lynch博士在1942年发明的,它的读取速度能达到每秒5000个字符。这种光学装置不光读取5个bit的有效数据,还把纸带上的定位孔也记录下来。这些孔正好形成一种时钟脉冲(ClockPulse)来同步信号,类似于我们今天所有计算的主同步时钟。这种装置的好处是,纸带本身不需要高速移动,因为每次可以读取的面积很大内容很多,纸带就可以缓慢移动了。

下图中的重建的Colossus,左边白色的一条就是纸带。用一片很亮的光照在纸带上,穿过数据和定位孔,然后聚焦到真空光电管。重建用到的光电管都是Colossus当年的原装配件,所有工作人员都小心翼翼,因为没有任何备件可用。

在光打到光电管之前,先经过一个掩模(钉在图上黄色的木板上),把信号整形成一个标准的方波。光电管的顶部装的黑色胶带是重建人员加上的,用来防止头顶上的日光灯干扰的。

Bletchley重建Colossus用的房间一侧有一扇窗户给外面的游客参观,不幸的是,光电管里窗户很远,可能看不太清,为了让游客更好地看清纸带是怎么读取的,重建团队决定用一台示波器来抓取光电管的信号,并展示出波形。

考虑到需要很大的屏幕,供许多人一起参观,PC示波器是一个理想的选择。

由此,PicoScope闪亮登场。

当Pico的技术团队自告奋勇的搭建这套展示系统时,还一度以为会很简单。毕竟,我们习惯于用一台时钟速度1000倍于Colossus的计算机来连接PicoScope示波器,不过很快他们就发现问题没这么简单。困难在于远距离的信号传输(这篇文章写于2000年,远距离USB数据传输尚不具备),起初的想法是把PicoScope和计算机屏幕都放到窗口,让游客能够清楚地看到捕获的波形,然后把真空管的信号用一根很长的导线引导窗口的示波器上。实际调试的时候发现,线缆的容性负载太大,导致真空管没法正常工作了。为了解决这个问题,Pico的工程师David Sabine搭建了一个缓冲放大器,高输入阻抗,低容性负载。

下图中的就是缓冲放大器,经过它以后的信号,可以传输30英尺远,到达窗口的PicoScope示波器输入端。

借此PicoScope能够很好的捕获真空光电管读取纸带信息的波形,下图是中的蓝色曲线是读取定位孔产生的时钟同步脉冲,红色的则是纸带记录的有效数据孔。在界面的最下面我们开启了示波器的自动测量功能,测到了时钟信号的频率,约5KHz,也就是每秒钟可以读取5000个字符。

有关重建Colossus的更多信息,欢迎访问 www.codesandciphers.org.uk
或者Bletchley庄园的官方网站visit www.bletchleypark.org.uk

2019年12月3日 09:10