GPT-6 Astra破译一份沉睡百年的一战德国无线电密码
一份来自第一次世界大战末期、长期未能破译的德国无线电密码电文,近日借助GPT-6 Astra得到了解读。这份电文采用德国军方在一战期间使用的ADFGVX密码系统,最初于1918年11月27日发送。GPT-6 Astra给出的结果显示,这是一份关于英国巡洋舰抵达塞瓦斯托波尔以及盟军舰队随后抵达的军事情报。

这份密码来自德国一战无线电通信资料,目前被收录在德国科学博客ScienceBlogs.de整理的一份“50份未解密码”名单中。名单中的密码类型十分广泛,从连环杀手留下的密码,到著名的伏尼契手稿都有涉及。其中一组德国一战无线电报文使用ADFGVX系统加密,数百份同类电文此前已经被研究人员成功破译,但仍有十多份长期没有得到可靠解读,这份1918年11月27日发送的电文就是其中之一。
ADFGVX是一种结合替换密码和列置换的复杂密码系统。其名称来自六个用于编码的字母A、D、F、G、V和X。首先,密码系统利用一个6×6的方格,将26个字母和10个数字排列其中,每一个字符通过横向和纵向两个符号表示。例如,在使用“HOUSE”作为密码关键词构建的示例方格中,“AA”对应字母H,“AD”对应字母O,“DA”对应字母B。因此,一个单词首先会被转换为一串由A、D、F、G、V、X组成的符号,然后再通过关键词进行列置换,使最终的无线电密文进一步被打乱。
对于这份此前未能破译的电文,GPT-6 Astra使用了“TRUPPENVERSCHIEBUNG”作为密码关键词。这个德语词大致可以理解为“部队调动”或“部队转移”。该关键词并不是模型从密文中直接通过暴力破解获得的,而是已经记录在J. Rives Childs所著《The History and Principles of German Military Ciphers, 1914–1918》一书第214至215页的历史密码资料中。
真正困难的部分在于如何将这个关键词正确应用到1918年的密文上。关键词“TRUPPENVERSCHIEBUNG”共有19个字符,需要首先按照字母顺序重新排列,并根据每个字符在字母表中的排序位置确定列的顺序。随后,将总计170个字符的加密电文按照19列重新排列,共形成8行完整的19字符,以及最后一行18个字符。
由于170个字符不能被19整除,最终形成18列、每列9个字符,以及1列只有8个字符的结构。模型需要根据关键词字母的排序位置重新恢复这些列。例如,字母T在关键词排序后处于第16列,在它之前存在14个长度为9的列以及一个长度为8的列,因此T所对应的密文位置是第135个字符,而该字符为A。同样,R处于第13个位置,对应的密文字符为V。
将这两个字符重新组成“AV”后,再通过ADFGVX替换方格进行解码,就得到德语单词“E”,即最终明文“EIN”的第一个字母。按照同样的方法继续处理整个电文,模型最终恢复出一段具有明确德语语义的内容。
GPT-6 Astra给出的原始德文结果为:“EIN ENGLISCHER KREUZER EINLIEG X SEWASTOPOL X S4STEN X EIN GESCHWADER DER X ALLIIERTEN FOLGT 26STEN X”。其中部分字符由于历史电文的转录或识别问题仍存在不确定性。按照模型给出的英文解释,其大意是:“一艘英国巡洋舰抵达塞瓦斯托波尔,一支盟军舰队将在26日跟随而来。”

这一结果尤其值得注意的地方,是模型随后主动对自己的解码结果进行了历史事实核验。根据英国皇家海军的历史记录,英国巡洋舰HMS Canterbury确实于1918年11月24日抵达塞瓦斯托波尔,而相关资料同样显示,一支盟军舰队随后于11月26日抵达。这意味着密码电文所描述的军事行动时间,与独立保存下来的英国海军历史记录能够对应起来。
不过,这次成果并不意味着GPT-6 Astra在完全没有任何线索的情况下,从原始密文中独立“破解”了整个密码。此前研究人员已经掌握了德国军方使用的部分密码关键词,而“TRUPPENVERSCHIEBUNG”本身也已经出现在历史密码学资料中。因此,Astra完成的核心工作更准确地说,是从历史资料中找到合适的密码关键词,将其正确应用到此前未解的密文,并进一步通过历史档案验证所得结果。


这份电文之所以长期未能破译,Astra提出了一个颇有意思的解释。模型发现,“TRUPPENVERSCHIEBUNG”这一关键词的已知使用时间似乎从1918年12月9日左右才开始,而这份目标电文早在11月27日就已经发送,两者存在时间上的矛盾。也就是说,如果历史记录没有遗漏,那么德国方面当时使用了一个按照现有资料来看尚未进入使用阶段的密码关键词。为什么会出现这种情况,目前仍然无法确定。
这种时间上的异常也可能解释了为什么这份电文在此前的研究中一直没有被成功解读。即使研究人员掌握了德国军方的密码关键词资料,如果按照日期严格筛选可用关键词,也可能根本不会优先考虑“TRUPPENVERSCHIEBUNG”。


值得注意的是,这次成果目前仍属于一次独立的模型实验,而不是经过密码学同行评审的正式研究成果。发布者也明确表示,自己此前并不知道这份特定电文已经有人成功解码,因此将其公布出来,主要是希望展示GPT-6 Astra在处理历史密码、档案资料以及跨来源验证方面的能力。
从技术角度看,这次事件真正有意思的地方并不只是“AI破译了一份百年前的密码”,而是模型完成了一个较为完整的历史研究流程:首先定位未解电文,随后查找相关密码系统的历史资料,识别可能使用的关键词,根据一战时期的密码规则重新构建列置换过程,再通过ADFGVX方格恢复明文,最后主动寻找英国海军的一手历史资料进行交叉验证。
这与传统意义上单纯从密文中恢复未知密码密钥的“密码破解”仍然存在明显区别。此前已有研究人员成功破译大量ADFGVX电文,因此这次成果更适合被理解为人工智能将历史文献检索、密码算法重建、文字解码和史料验证结合起来的一次案例。不过,对于大量散落在档案馆、图书馆和历史文献中的未整理材料而言,这种能够自主串联不同类型信息的能力,仍可能为未来的历史研究和档案数字化提供新的工具。
