跳到正文
SpruceNovel
封面加载中…
小说

查尔斯河畔的实验室

共 24 章

故事始于1954年,一位名叫马克·哈里斯的年轻人踏入了查尔斯河畔的麻省理工学院(MIT)。在这个科技革命的前夜,他一头扎进了由庞大的真空管计算机、穿孔卡片和闪烁的磁芯存储器构成的世界。小说以第一人称视角,带领读者亲历那个激动人心的时代。马克不仅在传奇的“飓风”计算机实验室中从整理电缆做起,更在克劳德·香农、约翰·利克里德、杰伊·福雷斯特等科学巨匠的指导下,参与了“SAGE”防空系统等尖端项目。他见证了从真空管到晶体管的技术飞跃,聆听了“人工智能”概念的首次提出,并与朋友们在宿舍里激辩技术的未来与人生的理想。这不仅是一部计算机发展史的缩影,更是一个关于青春、友谊和在时代浪潮中探索个人价值的成长故事。它将晦涩的科技原理融入生动的情节,再现了数字世界的黎明时分,那群在查尔斯河畔用智慧与梦想点亮未来的先行者们。

正在阅读 · 第10话

第10话

7月初,暑假正式到来,为了将来可以进入林肯实验室,我跟大黄报名了香农教授的密码学讲座和利克里德教授的人机共生讲座。耶子报名了数学系的数学竞赛,强调说数学是这个世界的核心逻辑,什么都离不开数学,计算机更是以数学为基础。大黄跟我说耶子其实抽象代数没考过,导师让他必须参加数学竞赛。

上午8点,我和大黄来到7号楼讲堂。暑假和正常上课的区别就在于很多老师不穿正装了,大概他们只需要去实验室完成项目,不再面向学生,就稍微放松了一些。

8点10分,香农教授依然身着深蓝色西装走进讲堂,脸型轮廓分明,颧骨稍高,眉毛浓密。看向讲台下的学生说同学们,欢迎来到今天的讲座。相信在座的各位都对计算机科学和通信技术充满了热情。作为电气工程系的一员,或许你们已经开始意识到,计算机不仅仅是用来进行复杂的数学运算,它们还可能成为我们社会中最重要的信息传递工具。

今天,我想让大家想象一个场景:假设你正在和世界各地的科学家交流最新的研究成果。信息从一个地点传输到另一个地点,可能经过多个中转点。而正是这些中转点,成为了潜在的威胁——信息可能被盗取或篡改。没有任何保护的情况下,信息就像是暴露在街头的信件,任何人都可以查看它的内容。那么我们该如何保护我们的信息安全呢。教授的目光扫过全班同学。

我赶紧收起看向教授的目光,低头假装记笔记。有不少同学还是很积极的举起手表示想发言,教授指向一名带着黑框眼镜,黄色头发的男生。男生说可以使用频率表,发射器和接收器使用一个频率表,不同时间使用不同的频率进行连接通讯。教授认真的点点头说非常正确,这种技术叫做跳频扩频,通过不断改变传输信号的频率,使得信号变得难以截获或拦截,有点类似于电报用的编码表。

不过今天我们拥有了超强计算能力的计算机,可以把复杂的问题交给计算机处理。密码学为我们提供了工具,能够加密信息,确保即使信息在网络中被截取,也无法被解读。通过加密,我们可以确保只有授权的接收者,拥有解密的钥匙,它们都能确保信息传递的安全性和完整性。

今天我们要讲解密码学的基本原理,但在我们进入现代密码学之前,我想给大家讲讲它的起源。密码学有着悠久的历史,最早可以追溯到古代文明。古人发现了通过将信息进行“掩盖”,使得信息只有特定的接收者能够理解的技巧。最著名的古代密码之一是凯撒密码,它的名字来源于罗马帝国的凯撒大帝。香农教授举起手中的粉笔,开始在黑板上演示凯撒密码的工作原理。凯撒密码是最简单的替换密码,原理是将每个字母替换为字母表中按某个固定位置偏移的字母。例如,偏移3个字母,那么A就变成D,B变成E,依此类推。他在黑板上写出以下例子:

明文: A B C D E F G

密文: D E F G H I J

只要对方猜到偏移量,就能还原出原文。因此,这种加密方法非常不安全。他擦掉黑板上的内容,接着写下“维吉尼亚密码”。到了16世纪,维吉尼亚密码被发明,它比凯撒密码更为复杂。这是一种基于字母表的多重替换加密系统,使用了一个关键字来进行加密。关键字的每个字母决定了替换字母的偏移量。他在黑板上举例:

明文: T H I S I S A T E S T

密钥: K E Y K E Y K E Y K E

密文: D L G C M Q K X C C X

这里,“T”通过“K”被加密成“D,”H“通过”E“变成”S“,依此类推。这种方式的优点是,相同的字母会使用不同的加密字母,从而提高了安全性。这种方式缺点也显而易见,密钥是非常好推理出来的,在20世纪初,密码学的真正飞跃发生在第二次世界大战期间。恩尼玛密码机的发明让我们见识到了复杂密码系统的威力。德国的恩尼玛机使用了多轮加密和可调的轮盘系统,使得密钥也作为可以实时改变的一部分。但缺点是需要一个密码本,这本密码本列出了每天的设置和轮盘配置。每个操作员都需要在开始加密时根据密钥本设置机器,而密钥本是固定的,这就给了盟军的密码分析团队机会,尤其是波兰和英国的密码破译者,开始采用数学和统计分析方法,尝试破解这种系统。

著名的艾伦·图灵和他的团队为了破解恩尼玛密码机,发明了邦比解密机。该机器结构类似于一台大型机械计算机,它的内部包括多个转轮和插头,每个转轮代表恩尼玛机器中的一个轮盘。通过一系列机械系统,模仿恩尼玛机的加密过程,通过与已知的明文进行比对,逐步缩小可能的密码组合。邦比机能够在几分钟甚至几秒钟内测试成千上万种配置,而手动计算则需要数月甚至更长的时间。这大大加速了密码破解的进程。

我兴奋的对大黄说,我竟然听明白了。大黄说我也明白了,而且现在的真空管计算机应该可以替代邦比解密机。就用穷举法,把恩尼玛密码机轮盘上的密钥都拿出来,和明文计算一下,最后与密文比对就行。我说对,密钥其实就是一个偏移量。按照26个字母,A代表1,B代表2,计算一遍,都不用知道恩尼玛密码机上的轮盘是什么排列组合了。大黄说那不行把,除非已知的明文和密文量足够大,否则还是得按照轮盘上的组合来穷举。我说也是。

香农教授说,下面给各位同学半小时的时间讨论一下,是否可以根据我讲的几种加密逻辑,延展出一些新的加密逻辑?或者总结一下这些加密的特点,看看我们能从中得到什么新的启发。

学生们开始窃窃私语,之后讨论声渐渐响起,课堂气氛变得活跃起来。教授走下讲台,走到黄色头发男生面前讨论着什么。我对大黄说,你看那个黄头发的男生你认识吗。大黄说不认识,香农教授认识,要不你去问问教授。我胳膊支起身子准备站起来,大黄把我拉回椅子上说能别这么好事吗。

香农教授离开学生座位,一边在讲堂溜达,一边听学生们讨论。我说大黄快点讨论,一会教授过来了。大黄说过来正好问问教授那个学生是谁。我说我想到了一个逻辑,你看看行不行。加密重点不是密钥得选择吗,密钥得长度跟加密信息长度保持一致。我们就选择从圆周率小数点后截取一段,当作密钥怎么样?大黄说那如何选择起始位置呢?我想了想说用两台计算机一直计算着圆周率,然后加密得时候将当前时间记录下来,当作锚点与密文一起发送给接收方。接收方根据锚点时间找到圆周率计算得结果当作起始位置截取出对应得密钥。

大黄想了想说这个方案难点在于两台计算机如何同步开始计算圆周率,并且一直将结果和时间记录下来,才有可能实现。我说也不用将结果打印出来,只需要把结果保存在计算机内存里就行,只要内存足够大。大黄说这个方法好啊,逻辑是有了,能否实现就交给后人,相信后人的智慧。我说大黄你越来越油腻了。

想到了圆周率加密法后,还有点期待香农教授如何评价,于是就盯着教授转来转去。教授走到了我这一列座位,眼睛从后排看向我们,正好我也看着教授。但教授的眼光没有停留,又看向了前排三个激烈讨论的学生,并走向他们认真的听了起来。我跟大黄说教授怎么不过来呀。大黄说你那么直勾勾盯着教授,换我是教授,我也不过来,见着傻子都绕着走。我说我哪像傻子了。

教授和前排同学讨论完,抬头看教室里大部分学生都抬起头看着他,他转头走上讲台说各位同学,今天的讨论非常精彩,也让我看到了你们对密码学的深入理解和创新思维。爱德华你来说一下你刚提到的思路。台下黄色头发的男生站起来说:凯撒密码和维吉尼亚密码的共同特点是它们都依赖于一个固定的密钥模式。凯撒密码的移位数固定,而维吉尼亚密码虽然使用了一个密钥字母表,但它依然是依赖于重复的密钥模式来进行加密。我们能找到一种方法,让密钥本身具有更强的随机性,甚至与加密的数据完全匹配,可以提高安全性,我们管这种方法叫动态维吉尼亚密码。

香农教授点了点头说:非常好的思路,你提到的随机性和密钥的长度对于加密系统的安全性至关重要。事实上,一次性密钥正是基于密钥的完全随机性和与信息长度的匹配,成为了理论上最安全的加密方式。它可以消除密钥模式的重复性问题,确保每次加密都是独一无二的。

“托马斯你再来分享一下你刚才说的如何生成密钥的想法。”讲台下第三排的一个看起来很壮的男生站起来说:我注意到,虽然恩尼玛密码机使用了复杂的转子来加密,但它依然依赖于预定的机制和固定的规则来生成密钥流。假如我们能够引入更强大的伪随机数生成器,将这个密钥流的生成过程更加复杂化和不可预测,这样能够增强加密系统的安全性。

香农教授说把刚才我们讨论的内容也说一下把。托马斯刚坐下,又从椅子上反弹起来说:好的教授,刚才教授您说的使用一些外部的、不可预测的种子,比如环境噪声、硬件特性,甚至是计算机的时间戳等。这些因素本身难以被预测,能够为伪随机数生成器提供真正的随机性。

教授满意的点点头说很好,请坐。我再补充两句。我们可以设计一个伪随机数生成器,它基于一个初始的随机种子,如刚才托马斯提到的环境噪声,硬件特性。通过一些复杂的数学公式如线性同余法、梅森旋转算法等,生成一个随机序列。这些伪随机数可以用于密钥流的生成,使得每次加密时,密钥流都与之前完全不同,且难以预测。

大黄低头悄悄跟我说,我觉得你的方法很符合教授的逻辑,你赶紧举手讲讲你的方法呀。我说算了算了,万一这种方法大家都知道呢。

之后教授看了下表,环顾了一圈讲堂说:各位同学,今天的讨论非常精彩,也让我看到了你们对密码学的深入理解和创新思维。你们的讨论不仅仅局限于这些经典算法,而是能够根据现有的加密思想进行延展,探索新的加密方法,正是密码学发展的动力所在。同学们,我希望你们能够继续保持这种探索精神,将你们的理论知识和实际能力结合起来,敢于提出新的问题、寻找新的答案,未来的密码学将由你们这样的年轻人来定义。

香农教授站直了身子,环视了一圈讲堂,最后说道:今天的讲座到此为止。希望你们能将所学的知识应用到实际中,去思考、去创新,去突破那些现有的局限。明天早上8点,我们继续在这里讨论信息论与密码学的关联。希望大家不要迟到。

学生们纷纷鼓掌,香农教授谦虚的向学生鞠躬,缓步走下讲台,学生们的热烈讨论依然回响在教室内。