
这批电报在美国陆军手里躺了将近四年,没人读得懂。
1943 年 2 月 1 日,吉恩·格雷比尔(Gene Grabeel)被人领进阿灵顿厅(Arlington Hall)的一间大房间。屋里人不少,都埋在桌子和文件柜里。上司把她带到角落的小隔间,指着一个木柜,只交代了一句:说话要低声。
她二十三岁。入职才六周,此前在弗吉尼亚乡下教书,那个镇子三百来人,母亲养鸡,父亲种烟叶。
抽屉里有文件夹。文件夹里的纸上排着一列列五位数。
88537 93422 62085 42537 10293
没有字。没有标点。没有署名。
这是电报。发报的是苏联驻纽约、华盛顿、旧金山的领事馆和商务机构,收报的是莫斯科。纸从 1939 年起一张张堆进柜子。陆军试过几轮,看不懂,放下了。
在她看来,这活儿就是分拣,跟学校档案室里的柜子没什么两样。
军事情报部特别处处长卡特·克拉克(Carter W. Clarke)上校下令系统处理这批积压件。他担心的不是间谍,是斯大林会不会跟希特勒单独媾和,把德国腾出来打西线。
格雷比尔不知道自己在做什么,也不知道这件事往后会被叫作「维诺那」(VENONA)。冷战期间它换过十三个代号,这是最后一个,一个没有含义的词。
阿灵顿厅原本是一所女子初级学院,校园一百英亩,主楼黄砖,带草坪和花圃。1942 年 6 月,陆军把它整个接管过来,草坪上很快搭满临时板房,四周拉上铁丝网。战争结束时,这里坐着五千七百名文职,军人另有约两千三百人,一周六天、昼夜轮班。

一次性密码本(one-time pad)的安全性不靠算式复杂,靠一个物理条件:那一页纸只能用一次。
原理不难。先有一本码本,把词、词组、常见人名换成五位数字。再用一张随机数字表充当密钥。加密就是把两组数字逐位相加,逢十去掉十,不进位。
反过来,手里有那页密钥,密文减一减就还原。
没有呢?纸上的数字是真随机,同一段密文配任何一段明文都说得通,中间抓不到规律。
危险藏在「一次」这两个字里。真随机数字表不好做,掷骰子、抄表、印刷、装订、编号、分发,全是人工。发出去的纸页按规程用完就撕下来销毁。
要是有两份电报压在同一段密钥上,麻烦立刻出现。两段密文一减,密钥自己抵消,剩下的只是两段明文叠在一起。密码学里管这叫 depth。
下一个问题:怎么知道哪两份报文压在了同一段密钥上?
电报有固定的报头,机关、编号、日期,位置大致固定。两段报文用同一段密钥加密,开头会露出同样的数字指纹。再加上码本编出来的数字并非均匀随机,某些数字组天生出现得更勤。把成百上千份报文两两比对,就能捞出成对的线索。
这一步是纸上的活。桌上摊开的卡片、手抄的列、逐位相减的结果,一位一位对。
两段明文一旦叠上,就有能读的东西了。俄语码本里没有英文单词,英美的人名、地名、机构名只能一个字母一个字母拼,五个数字一个字母。这种拼出来的段落,可猜程度比俄文句子高得多。

1942 年,苏联的密码本生产线上出了一件事:同一段密钥被印了两遍,分送到不同的地方。
起因是需求。1941 年 6 月德国开战后,莫斯科与各外派机构之间的电报量跳了一大截,而造密码本快不了。美英两国后来出的官方材料给出的数字是约三万五千页重复。
更麻烦的是这些重复页被有意分给了相隔很远的使用者。两处电报离得越远,被并排比较的机会就越小。这是个补救动作,说明经手的人知道麻烦在哪,只是舍不得把纸销毁。
1943 年秋,阿灵顿厅的中尉理查德·哈洛克(Richard Hallock)在苏联「贸易」电文里先看出了复用。他们把那批叫贸易密码,因为从表面看,那些报文谈的是贸易数字。
哈洛克那组人里有吉纳维芙·范斯坦、塞西尔·菲利普斯、弗兰克·刘易斯、弗兰克·瓦纳特、露西尔·坎贝尔。阿灵顿厅战时的工作人员里,女性占了大约九成。能上战场的男人被抽走了,岗位交给数学老师、语言老师和喜欢猜谜的人。
三年之后,梅雷迪思·加德纳(Meredith Gardner)把克格勃的码本从残缺的密文里重建出来。他是语言学家,战时先破德语,再破日语。
加德纳后来把码本最初的几批复原归功于同事玛丽·迈耶(Marie Meyer),信号情报处的一位语言学家。
1946 年年底,他攻下了码本里的「拼写表」,也就是英文名字的逐字母编码。
同一年 12 月 20 日,他读出了一份 1944 年的报文。上面是一串名字,都在洛斯阿拉莫斯做原子弹。
最有名的细节出在代号「LIBERAL」身上。这个人出现在六份报文里,他妻子被拼成三个组,第一个字母是 E,第三个是 L。
加德纳后来回忆:「我从没见过三位的拼写码。」他说他停了一下,然后想:「啊,他们预期要发大量英文材料,而英语里最常见的词就是 the。」
三个组的中间填什么,答案在最高频的那个词里。妻子叫伊瑟尔。LIBERAL 是朱利叶斯·罗森伯格(Julius Rosenberg)。
同一批译文里还有别的代号。MLAD 是洛斯阿拉莫斯最年轻的科学家西奥多·霍尔,进实验室时十九岁。CHARLES 与 REST 是同一个人,克劳斯·富克斯(Klaus Fuchs),德裔物理学家,英国籍,战后转到哈威尔。
1950 年 2 月,富克斯在伦敦被捕,判了十四年。
同一年,哈里·戈尔德、戴维·格林格拉斯、罗森伯格夫妇先后被捕。三年后,罗森伯格夫妇在辛辛监狱上了电椅。
国安局后来逐年公布过读通的比例:

打败这套系统的是能进门的人,不是数学。
威廉·维斯班德(William Weisband)生于敖德萨,二十年代随父母移民美国。1938 年他入籍,四年后被征入伍。
俄语是他的母语,于是被安排到阿灵顿厅的苏联组当语言顾问。他不是密码分析员,却能进每一个房间。
加德纳译那份原子科学家名单时,维斯班德就在旁边看着。
1948 年初,他向苏联通报:美国人已经在读你们的电报。克格勃档案里他的代号是 ZVENO,俄语里「环节」的意思。
后果分两半。1948 年中期,苏联停止复用密钥页,此前截下的旧电报还能慢慢读,新发的读不动了。另一边,苏联军方在几个月内把全军密码换了一遍。
一份 1948 年 2 月的苏联内部备忘录写着:「一年来,从(他)那里收到大量关于美国人破译苏联密码工作的极有价值的材料……根据这些材料,我国安全机关采取了一系列防御措施,使美国破译部门的效率明显下降。」
1950 年,FBI 从另一名被策反者口中拿到他的名字。他拒绝向大陪审团作证,以藐视法庭罪服刑一年,始终没承认过间谍活动。维诺那译文里有三处提到 ZVENO,却没有一份能指名道姓。
第二个看客是英国人。1949 年 10 月,金·菲尔比(Kim Philby)到华盛顿,出任英国秘密情报局与美方的联络官。按职务需要,他被通报了维诺那。
加德纳后来回忆,这个人常站在他背后看他做事,烟斗吸得吧喀吧喀响。彼得·赖特(Peter Wright)在《抓间谍者》里也写下同一幕:一个抽着烟斗的年轻人定期来看他,越过他的肩膀,盯着正在推进的进度。
菲尔比把名单一份一份送出去。1951 年 6 月他离开华盛顿之前,莫斯科已经知道哪几个情报员正在被逼近。
然后是这套制度自己的漏口,比密码学上那个更难补:

公开的解密文件里,有三处数字和说法对不上,值得单独标出来。
先说站得住的。
再说对不上的。
第一处,复制了多少、谁复制、为什么复制。常见说法是约三万五千页,也有材料写成整本码本,国安局自己的表述是整页而非整本。原因有德国逼近莫斯科、列宁格勒被围、经手人图省事三种。没有公开档案点名。
第二处,1945 年那个 1.5%。重复页大多产自 1942 年,到战争末期基本用尽,这个解释能说通。材料之间口径不一,读通率的统计基数也没完全公开。
第三处,维斯班德是不是唯一的漏口。三处 ZVENO 没有一条能对上他,克格勃档案(由前克格勃官员瓦西里耶夫摘出,见海恩斯与克莱尔 1999 年《Spies》)支撑这个判断,但摘记本身的完整性在学界有争议。菲尔比通报的具体日期同样没有档案。
第四处,代号和真人的对应并不都那么硬。1969 年,国安局的塞西尔·菲利普斯在一份内部备忘录里把代号 ALES 判给阿尔杰·希斯,这个判断至今仍有争论。
另有两条常见说法,公开文献里支持不足:芬兰人 1944 年「北极星行动」卖给美方的那本半烧毁的码本帮了多少;以及从加密机按键声里听出明文内容。这两条来自国安局提过的线索,细节缺一手材料。
还有些小事本身就模糊。格雷比尔的年龄有二十二岁和二十三岁两说;那间房间的布局出自她晚年的口述,不是档案。
加德纳 1972 年退休,1996 年国安局、中情局和民主中心为他补办了一场表彰会。彼得·赖特记下过他的一句话:「我从来不想让任何人因此倒霉。」
❖