1 历史背景

1.1 二战前的密码学发展

20世纪初,随着无线电通信的普及,密码学迎来了一次技术革新。一战期间,各国广泛使用手工密码和简单的机械密码设备,如法国与德国的编码本系统。1920年代,德国工程师亚瑟·谢尔比乌斯发明了恩尼格玛密码机,采用转子和反射器实现多表替换加密,迅速被德国军方采用。同一时期,其他欧洲国家也在研发类似设备,但大多基于类似的机电原理。1930年代后期,随着计算机和通信理论的萌芽,密码学家开始探索更高效的流密码技术,其中二进制编码与伪随机数生成成为关键研究方向。

1.2 德国军事通信需求

1.2.1 电传打字机的普及

电传打字机在1920年代至1930年代逐渐成为国际商业和军事通信的标准设备。它使用五单位编码(ITA2码)将字母、数字和符号转换为等长的二进制脉冲信号,可通过无线电或有线线路实时传输。德国军方在1930年代末开始批量装备西门子和洛伦兹公司生产的电传打字机,用于前线的快速文字通信。这种设备相比语音或电报具有更高的效率和可靠性,但也带来了加密的挑战——电传信号一旦被截获,敌方可直接读取明文。

1.2.2 高层指挥链路的加密需求

二战爆发后,德国最高统帅部(OKW)与各集团军群、海军指挥链之间的通信量急剧增长。使用恩尼格玛加密的语音或电报通信存在速度慢、易出错等缺点,而且恩尼格玛的密钥管理在高频次通信中变得复杂。高层指挥官需要一种能够加密大量电传报文、同时保持高可靠性和实时性的系统。于是,洛伦兹公司被委托研发一种专门针对电传打字机的密码机,确保从柏林到前线的关键指令——如作战计划、后勤调度和战略决策——不被盟军破译。

1.3 洛伦兹公司的保密通信项目

1939年,洛伦兹公司(C. Lorenz AG)启动了代号“SZ”的绝密项目,旨在设计一种与电传打字机配合使用的流密码机。项目由工程师霍斯特·科佩尔等人主导,结合了当时最先进的机电技术与伪随机数生成理论。洛伦兹密码机最初并未获得与恩尼格玛同等水平的资源投入,但其在电信领域的专业积累使其成为德国通信加密体系中不可替代的环节。

2 技术结构

2.1 工作原理

2.1.1 电传打字机的ITA2码

洛伦兹密码机的基础是国际电报字母表第2号(ITA2码),一种五单位二进制编码。每个字符由五个高低电平脉冲表示,例如字母“A”对应“11000”,数字“1”对应“00111”。电传打字机发送时,这些脉冲序列通过物理线路或无线电波传输。洛伦兹密码机在发送端对原始ITA2码的每个脉冲进行异或(XOR)操作,产生密文;接收端使用相同的密钥流再次异或即可恢复明文。

2.1.2 十二个转子的伪随机生成机制

洛伦兹密码机共包含十二个可旋转的齿轮式转子,分为两组:五个χ转子(Chi)和两个ψ转子(Psi),另有五个μ转子(Motor)用于驱动ψ转子的步进。转子的齿数均为质数(如41、43、47等),且互不相同,以避免周期性重复。每个转子在旋转过程中,通过电刷接触产生一个系列的二进制值(高或低),十二个转子输出的组合经布尔运算后,生成最终的伪随机密钥流序列。

2.1.2.1 五齿与二齿轮的区别

χ转子组有五个转子,每个转子具有不同齿数(如41、43、47、53、59),它们以恒定速度同步旋转,每发送一个字符就步进一次。ψ转子组有两个转子,齿数分别为43和47,但它们的步进受到μ转子(五个转子,齿数分别为41、43、47、53、59)的调制:μ转子的输出决定ψ转子是否在当前位置步进,从而使ψ转子的运动呈不规则性。这种“两步进”机制大大增加了密钥流的复杂度和不可预测性。

2.1.2.2 起始设置与加密流程

每次通信前,操作员需要根据密钥表设置十二个转子的初始位置(每个转子可设0至齿数-1的起始位置)。加密时,发送端电传打字机输出的ITA2码每个字符的五个脉冲,依次与χ和ψ转子共同生成的密钥流脉冲进行异或。具体而言,密钥流由χ序列和ψ序列的组合产生(通常是异或),有时还会加入一个固定的“位移”参数。接收端使用完全相同的转子设置,通过异或恢复明文。起始设置(即密钥)通常每日更换,并通过机密打印的密钥表和额外通道分发。

2.2 与恩尼格玛的对比

2.2.1 加密方式差异

恩尼格玛密码机是一种分组密码,通过转子和反射器对每个字母进行替换加密,且替换表随转子转动而变化。洛伦兹密码机是一种流密码,对每个二进制位进行异或加密,不改变字母本身的结构,而是直接叠加伪随机序列。从速率看,洛伦兹密码机可自动加密高速电传数据(每分钟约66个字符),而恩尼格玛需要手动操作,速度较慢(每分钟约4-5个字母)。从安全性上看,洛伦兹的密钥流理论周期极长(达10^20量级),优于恩尼格玛的约2^20周期;但实际使用中,洛伦兹的密钥分发和初始设置管理同样脆弱。

2.2.2 安全强度与弱点

恩尼格玛的弱点在于不能加密相同的字母对、反射器导致的加密自反性,以及操作员的人为错误(如重复的密钥设置)。洛伦兹密码机的主要弱点在于,如果两段不同的明文使用了相同的密钥(即相同的转子起始设置,称为“深度”情况),则通过对密文的异或可消去密钥流,直接得到明文的差异,进而推导出两者明文。这一弱点被布莱切利园的密码学家发现并利用,成为破译的关键。

3 型号与演变

3.1 SZ40(Lorenz初代)

3.1.1 结构特点

SZ40是洛伦兹密码机的第一个量产型号,于1940年投入使用。它包含十二个转子(五χ、两ψ、五μ),但没有设置启动校核功能。转子齿数组合相对简单,ψ转子的步进机制较为确定,密钥流的统计特性存在规律性。整体结构紧凑,重量约50公斤,可安装于通信车内。

3.1.2 早期使用情况

SZ40主要用于德国最高统帅部与主要集团军司令部之间的高层链路,如东线战场和北非战场。初期使用频率较低,且操作员常因培训不足而错误重复使用密钥设置,导致盟军很快截获并识别出通信模式。1941年至1942年间,盟军拦截的SZ40通信成为破译的主要对象。

3.2 SZ42(改进型)

3.2.1 增加转子数量

1942年末,洛伦兹推出了SZ42改进型,主要变化是增加了转子的总数量——由十二个增至十六个?实际信息:SZ42确实改进了转子步进算法,但核心转子数仍为十二个,其改进更侧重于ψ转子步进的随机性和χ转子组合的算法变化。SZ42引入了“校验”转子(以字母Q表示),用于启动阶段的自我校验,避免操作员设置错误导致的通信中断。此外,密钥流的生成算法从简单的χ异或ψ改为更复杂的混合函数,增大了破译难度。

3.2.2 抗破译增强措施

SZ42还增加了密钥流的“跳跃”机制,即在某些特定条件下跳过密钥流中的若干脉冲,以扰乱模式。同时,密钥表的分发变得更为严格,采用分层密钥管理(主密钥与日密钥套用)。尽管这些改进提升了安全性,但盟军此时已通过统计学方法和巨人计算机积累了大量破译经验,SZ42在1944年之后仍被部分破译。

4 破译历史

4.1 盟军情报截获

4.1.1 “Tunny”代号由来

英国布莱切利园的情报人员在1941年首次截获到一种不同于恩尼格玛的新型加密电传通信,多来源于柏林与东线之间的高层链路。由于当时英国已为恩尼格玛通信赋予代号“Eel”,这种新通信被戏称为“Tunny”(金枪鱼),暗指其“不同于普通的鱼”的独特性。随后,洛伦兹密码机本身也被称为“Tunny机”,相关破译工作称为“Tunny项目”。

4.1.2 首次消息截获与分析

1941年夏,英国在维希法国和北非的监听站截获了首批洛伦兹加密报文。经过初步分析,密码学家注意到密文长度与电传报文格式相符,且存在重复的密钥流片段——这是典型的“深度”错误:某位操作员违反了安全规定,对两段不同明文使用了相同的转子设置。1942年,数学家比尔·塔特利用这一错误,结合已知明文攻击(已知部分报文内容如“No further orders”等),首次推导出洛伦兹密钥流的部分结构。

4.2 英国布莱切利园的工作

4.2.1 统计方法与“图灵测试

艾伦·图灵在1942年介入洛伦兹破译工作。他提出了应用统计学的思路:通过分析密文的脉冲分布模式,识别出ψ转子步进时产生的偏差。图灵发展了一种称为“图灵测试”(此处指一种统计假设检验方法,与人工智能的图灵测试不同)的自校准算法,用于在已知部分密钥流的情况下反推转子起始位置。同一时期,比尔·塔特和约翰·蒂尔特曼等数学家创立了“塔特图”和“双布算法”等手工统计方法,实现了对SZ40的定期破译。

4.2.2 弗劳尔斯与巨人计算机

由于手工破译速度极慢,且SZ42的复杂性需要大量计算,1943年,布莱切利园工程部负责人汤米·弗劳尔斯被要求设计一台高速电子设备来辅助破译。他运用真空管逻辑电路,制造了世界上第一台可编程电子数字计算机——“巨人”(Colossus)。

4.2.2.1 巨人Mark I

巨人Mark I于1943年12月投入使用,包含约1600个真空管,可每秒处理5000个字符的脉冲序列。它专门为洛伦兹密码机设计的算法编写了程序(通过插接线和开关设置),能够统计密文的模式,并尝试所有可能的转子起始设置组合,找出最匹配的统计结果。第一台巨人成功破译了第一批SZ42通信。

4.2.2.2 巨人Mark II的改进

1944年,弗劳尔斯研制了巨人Mark II,真空管数量增至2400个,处理速度提升至每秒10000个字符以上,且增加了更多的布尔运算和存储能力。Mark II还内置了自诊断电路,提高了可靠性(平均无故障时间长达数天)。二战结束前,至少有十台巨人Mark II在布莱切利园运转,每周完成数千次破译。

4.2.3 破译流程与关键人物

洛伦兹破译的典型流程为:截获密文→确定密钥流中的“深度”或已知迹象→使用巨人计算机进行统计假设检验→当统计值超过阈值时,输出可能的转子设置→人工验证并解密整条报文。关键人物包括:艾伦·图灵(统计方法论)、比尔·塔特(手工算法)、马克斯·纽曼(破译方案组织)、唐纳德·米基(情报分析)以及汤米·弗劳尔斯(计算机工程)。此外,玛格丽特·罗克比、多萝西·布鲁斯特等女性程序员的操作与维护也功不可没。

4.3 破译成果的影响

4.3.1 诺曼底登陆等战役中的情报价值

破译的洛伦兹通信提供了大量高价值情报:例如,德国驻法国第15集团军的调动计划被盟军提前掌握,使诺曼底欺骗战略(如“坚毅行动”)得以成功实施;德国在东线战场的补给路线和装甲师部署也被持续监控。盟军最高统帅艾森豪威尔在战后评价,洛伦兹破译“帮助缩短了战争至少两年”。

4.3.2 对现代计算技术的推动

巨人计算机的诞生直接证明了电子数字计算机在复杂逻辑运算和数据处理中的可行性。战后,巨人计算机的设计概念(如布尔运算、寄存器存储、程序控制)影响了早期计算机的发展,特别是英国曼彻斯特大学的“小型实验机”和美国的ENIAC项目。弗劳尔斯后来在电话交换系统设计中应用了类似技术。虽然巨人本身是专用机,但其工程经验加速了通用计算机的问世。

5 战后遗产

5.1 相关设备的销毁与残留

二战结束后,出于保密需要,布莱切利园的所有巨人计算机被英国政府下令销毁,仅有两台作为实验样机保留至1950年代(后也被拆卸)。德国方面的洛伦兹密码机大多在战败时被德军销毁,或被盟军缴获后保存。目前全球仅存约十余台洛伦兹密码机,分别收藏于英国的布莱切利园博物馆、德国西门子档案馆和美国国家安全局博物馆等单位,大多为SZ42或战后复原品。

5.2 解密文件与公开研究

5.2.1 20世纪70年代后的资料公开

1970年代,英国政府开始逐步解密关于布莱切利园密码破译的文件,但洛伦兹和巨人计算机的细节直到1980年代才由历史学家如安东尼·莱文森和保罗·林德勒等报道。1990年代,非对称加密算法的兴起使得密码学历史研究进入高潮,洛伦兹的详细设计和破译方法被完整公开。2000年,布莱切利园博物馆获得了一台由私人收藏家捐赠的原始SZ42,并进行了修复展示。

5.2.2 现代复原与模拟项目

2000年代后,多个计算机和密码学爱好团队发起了洛伦兹密码机的软件模拟与硬件复原项目。例如,英国“Tunny复原项目”在2010年成功建造了巨人Mark II的复原机,并能在演示中实时破解预设的洛伦兹加密报文。2020年,德国大学团队利用3D打印技术和开源硬件,制作了可运行的洛伦兹密码机缩微模型,促进了密码学教育。

6 文化影响

6.1 在密码学教材中的经典案例

洛伦兹密码机与恩尼格玛密码机并列为第二次世界大战密码学的两大经典案例。几乎所有密码学教材在讲述流密码章节时,都会引用洛伦兹的“异或加密”和“密钥重复攻击”作为基础实例。此外,其破译中使用的统计方法和布尔逻辑电路,也成为计算理论课程中演示早期计算机逻辑设计的常用素材。

6.2 影视与文学中的洛伦兹密码机

6.2.1 纪录片与历史剧

BBC在2000年播出的纪录片《布莱切利园的密码破解者》中,详细介绍了洛伦兹密码机的破译过程,并采访了最后的幸存参与者。2014年电影《模拟游戏》聚焦艾伦·图灵与恩尼格玛,但未涉及洛伦兹——这一缺失被一些历史观众视为遗憾。2017年电视剧《开膛手街区》曾在虚构情节中短暂再现了唐纳德·米基的角色与洛伦兹破译场景。

6.2.2 虚构作品中的改编

在许多架空历史或谍战小说中,洛伦兹密码机被描绘成更强大的秘密武器:例如,尼尔·史蒂文森的小说《编码宝典》里,洛伦兹被设定为一种“量子加密”的原型机;在游戏《使命召唤:黑行动》中,某个关卡涉及取回洛伦兹机以阻止纳粹通信。这些改编常夸张其技术能力,但总体正面呈现了其在二战情报史上的地位。


参考来源:布莱切利园档案、英国国家档案馆(HW 25/23至HW 25/28号文件)、图灵研究所公开讲座、弗劳尔斯回忆录等。