陆彬思考:“如果霍克在其他方面都沿用旧系统,加密算法会不会也只是简单升级?
比如从DES升级到AES,但密钥管理方式还是老一套?”
“有可能,”米勒博士调出档案,“苏联时期,监听系统的每日加密密钥基于一个主密钥和当日日期生成。”
“公式是:当日密钥 = MD5(主密钥+日期字符串)。如果霍克保留了这套机制,我们只需要知道主密钥,就能推算出每日密钥。”
“主密钥可能是什么?”
“通常是某个有纪念意义的数字或短语。苏联时期常用十月革命日期、列宁生日之类的。”
“霍克是英国人,前SAS,”冰洁说,“他可能用对自己有意义的数字。”
陆彬突然想到什么:“米勒博士,你之前说霍克1992年从SAS退役。具体日期知道吗?”
“稍等。”米勒博士搜索档案,“1992年8月15日。那天他正式退役,获得中校军衔。”
“试试那个日期,”陆彬说,“或者与那天相关的事件。”
米勒博士开始计算:“假设主密钥是‘’,那么今日密钥 = MD5(‘’+‘’)……”
他在电脑上运行计算程序。几分钟后,屏幕上显示出一串十六进制代码。
“用这个作为AES-256密钥,尝试解密我们之前捕获的一段北极星内部通信样本,”米勒博士操作着。
“样本是三天前截获的,当时我们不知道是什么内容。”
解密程序运行。进度条缓慢前进。
所有人都屏住呼吸。
90%...95%...100%。
屏幕上出现了解密后的文本:
[-01 14:32:17] 指令:增加对哈尔科夫区域医疗数据流的捕获优先级。
理由:该区域近期出现异常加密模式,疑似军事医疗指挥系统接入。
操作员:POL-UA-03
确认码:048-274
“成功了!”冰洁轻呼。
“但这是三天前的样本,”冯德·玛丽副董事长说,“今日的密钥可能不同。”
“如果密钥生成机制不变,只是主密钥不同,我们可以暴力破解。”
米勒博士说:“给我一小时,用常见日期和短语组合测试。”
“同时,”陆彬看向窗外渐暗的天色,“我们需要准备明天可能发生的一切。”
纽约曼哈顿,一家不起眼的中餐馆的包间里,詹姆斯·霍克正在见一个人。
那人三十多岁,穿着深色西装,气质干练。桌上摆着几盘几乎没动过的菜。
“谢尔盖让我转告你,”那人用带着俄语口音的英语说:
“他承受了很大压力。根系联盟私下给了他一个选择:如果他配合调查北极星公司,他们就不公开他女儿信托的完整档案。”
“他接受了?”霍克问。