金斯顿警局的技术分析室在傍晚时分呈现出一种与整栋大楼截然不同的安静。走廊里警探们进进出出,电话铃声此起彼伏,媒体采访的申请堆满了新闻官的办公桌,而在这间拉着百叶窗的小房间里,只有电脑风扇的低频嗡鸣和伊莎贝拉·罗西敲击键盘的清脆声响。
她在过去的七十二小时里睡了不到六个小时。她的咖啡杯在桌角排成一支小小的陶瓷军队——五只空杯,每一只杯底都残留着深褐色的咖啡渍,像是地质沉积岩的剖面。但她不觉得困。不是因为咖啡因,而是因为凯斯勒墓碑下挖出的那个U盘里包含的信息,每一层解密都像是在剥开一颗洋葱,每一层都让她流泪。
U盘没有密码。凯斯勒没有设置任何加密措施——他把它埋在墓碑下,用土壤和草皮做唯一的保护。这不是技术上的自信,这是一种哲学上的声明:真相不需要锁,它只需要被放在一个愿意弯腰挖掘的人能够找到的地方。
罗西花了整个下午逐条核验U盘里的记录。它包含了安布罗斯公司二十二年来的全部内部通讯备份、金斯顿市SCADA系统所有十九个端口的完整访问日志、以及一套由凯斯勒本人编写的索引系统——按照希腊字母顺序排列,每个条目都附有时间戳、操作者身份和操作内容摘要。凯斯勒没有摧毁马丁·弗林十九岁那年植入的监控程序,他把它完善了,给它加了注释,修了bug,补了缺失的索引,然后用二十年的时间默默维护着它。一个工程师用他余生的全部精力,守护了一个实习生写在愤怒中的代码。
“罗西。”对讲机里传来科尔的声音,他在金斯顿公墓还没有回来。“你那边进展怎么样?”
“正在看。”她按下对讲机,目光没有离开屏幕。“你最好回来一趟。有些事情需要你当面看。”
“什么事?”
“所有的事。”她说。
科尔在二十分钟后推开技术分析室的门。他的外套上还沾着金斯顿公墓的泥土,手指甲缝里有草根的绿色残留,但表情比罗西预想的要平静——他把凯斯勒的信带回来了,把真相带回来了,把利奥也带回来了。那个十九岁的少年此刻坐在警局休息室里,面前放着一杯没动过的热巧克力,眼神空洞地盯着墙上的消防疏散图,仿佛那张图上画着某种只有他能看懂的密码。
“利奥怎么样?”罗西问。
“没有说话。从墓园回来一路上都没有说话。”科尔拉过一把椅子坐下。“他不是在崩溃,他是在重新组装自己。你刚才说‘所有的事’——是什么意思?”
罗西把笔记本电脑转向他。屏幕上是一个按时间轴排列的电子表格,每一行代表一次后门激活记录,最早的记录可以追溯到二十二年前,最新的记录是今天凌晨——那是索恩在韦伯庄园工具房里执行的终止指令。
“凯斯勒没有说谎,也没有夸张。”罗西用手指划过屏幕上的数据。“德尔斐协议确实是一个绝缘层。它把马丁·弗林留下的原始监控程序包裹在中间,像三明治一样——下层是原始代码,中间是监控日志数据库,上层是凯斯勒后来添加的访问控制系统。任何试图删除或篡改监控记录的行为,都会触发上层协议的自动备份程序,把数据复制到另外十八个端口的分布式存储中。换句话说——”
“一旦写进去,就永远删不掉。”科尔说。
“永远删不掉。”罗西确认。“韦伯试过。他在三年前墨菲死亡后的第四天,用他的A.U.账户登录了第七号端口,试图删除墨菲举报文件被篡改的原始记录。系统在零点四秒内完成了备份,把数据分散存储到了另外十一个端口。韦伯以为他删干净了,其实他只是把罪证复制了十一份。”
她敲下一个键,调出另一条记录。“更重要的是——这条。这是二十二年前马丁·弗林植入监控程序后,程序自动记录的第一个外部访问者。时间戳是程序上线后的第四十七分钟。访问者IP地址在当时属于金斯顿大学计算机系的一台公用终端。访问者没有修改任何代码,没有删除任何记录,他只是——读了一遍。全部读了一遍。从第一行到最后一行。”
“谁?”
“登录账户是安布罗斯公司给金斯顿大学实习生分配的临时账号,编号AMB-INT-047。对应的实习生姓名——”罗西停顿了一下,不是因为她不知道答案,而是因为她知道科尔听到答案后的反应。“——艾琳·瓦西里乌。当时她二十一岁,金斯顿大学古典密码学研究生,安布罗斯公司暑期实习项目的第一批入选者。”
科尔沉默了很久。技术分析室里只有电脑风扇的声音和远处走廊里隐约的电话铃声。窗外天色已经彻底暗了,金斯顿市的灯火在夜色中重新亮起——和水坝威胁之前的每一个夜晚没什么两样,但所有人都知道有些东西已经变了。
“她在二十二年前就读过了。”科尔说。“她读过了马丁·弗林的全部监控代码。她读过了那个十九岁实习生写在愤怒里的控诉。她读了每一条注释,每一个变量命名,每一段被注释掉的草稿。然后她嫁给了凯斯勒,和他一起设计德尔斐协议,生下了索恩,成为了金斯顿大学的密码学教授,默默保管着物理密钥分片,等了二十二年。”
“然后她坐在那间办公室里,看着利奥的父亲因为同一套系统而死。”罗西的声音变得很轻。“想象一下那是什么感觉——你手握所有人犯罪的证据,但你知道这些证据在法律上不可采,因为布朗案确立的事前法律原则让你收集证据的方式本身就处于灰色地带。你知道谁是凶手,但你不能说出凶手的名字,因为凶手比你更懂法律。你只能等。”
科尔把椅子向后靠,望着天花板上的日光灯管。那些灯管每隔几秒发出一次极其微弱的明暗变化,频率低到大多数人不会注意。但他注意到了。罗西也注意到了——那些灯管的供电系统,也是金斯顿SCADA系统的一部分。它们还在运行,只是没有人再能用后门控制它们了。
“瓦西里乌把U盘交给了我们。”科尔说。“她把二十二年的证据交给了我们。现在的问题是——这些证据能不能用?”
“技术上完全可用。每一条记录都有独立的时间戳和加密签名,篡改检测算法全部通过。凯斯勒设计的备份系统比联邦法院目前认证的任何电子存证系统都要可靠。”罗西的手指在键盘上停下来。“但法律上——这就回到了索恩一直在追问的那个问题。如果证据是在没有明确法律授权的情况下收集的,它还能被法庭采纳吗?布朗诉联邦案的原则仍然存在——事前法律禁止追溯适用。”
“但索恩说过一个例外。”科尔坐直了身体。“他在大学论文里写过——‘持续性预谋犯罪应适用最后行为时法律’。如果赫卡忒的整个计划被证明是一个持续二十多年的持续性犯罪,那么法庭就可以适用最新的网络安全法案,而不是二十年前的旧法。”
“这就需要证明赫卡忒的犯罪是一个连续的整体,而不是一系列独立的偶发事件。”罗西调出另一屏数据。“而这恰恰是这些日志能证明的。看这里——从马丁·弗林植入第一行代码开始,到韦伯第一次利用后门删除不利证据,到墨菲之死,到你妻子的车祸,到翠鸟公寓,到索恩的裁决行动——每一次事件之间的间隔没有超过三十六个月。在法律上,间隔不超过三年的同类行为可以被认定为‘持续性犯罪过程’。而这些日志提供了完整的连续性证据。”
科尔站起来,走到窗边。金斯顿市的夜景在窗外铺展开来,像一张由无数微小灯光编织的地图。他在这座城市生活了二十多年,追捕过杀人犯,破获过绑架案,目睹过人性最黑暗的角落。但他从未像此刻这样深刻地意识到,所有的犯罪都不是孤立的点,而是某条线上的节点。那条线埋在地下,铺设在SCADA系统的通信管道里,刻在安布罗斯公司的交换机芯片上,写在二十二年来的每一行代码里。
“罗西,”他说,没有回头,“把所有这些日志整理成一份可呈堂的电子证据。我要每一页都附上时间戳、来源标注和篡改检测校验码。我要它经得起法庭上任何刁难。”
“已经在做了。”罗西说。“但有一件事我需要先告诉你——日志里有一条记录,时间戳是今天凌晨四点零三分。在索恩执行终止指令之前,在他激活第三分片之前。有人从那台金斯顿大学公共终端上最后一次登录了监控系统。登录账户仍然是AMB-INT-047。”
“瓦西里乌。”
“是她。她没有修改任何东西,没有删除任何东西。她只是在日志最末尾添加了一条备注。备注内容只有一句话——”
罗西把屏幕转向科尔。在密密麻麻的日志记录最底部,有一行用希腊文写就的最后条目。系统自动翻译在旁边标注了英文:
“赫卡忒的三张面孔最终合为一张。不是少女,不是母亲,不是老妪。是那个在十字路口站了二十二年的人。她终于可以离开了。”
科尔读完这段话,缓缓坐回椅子里。窗外传来金斯顿大教堂的钟声,敲了七下。晚上七点整。这座城市从水坝威胁中解脱已经过去数小时,市民们正在陆续返回家园,新闻频道开始播放特别节目讨论“金斯顿奇迹”,社交媒体上到处都是关于厄里斯和德尔斐协议的猜测和谣言。没有人知道真相——真相正躺在这间拉着百叶窗的小房间里,躺在一台笔记本电脑的固态硬盘上,躺在一行二十二年前写下的代码和一行今天凌晨写下的备注之间。
对讲机响了。这次不是罗西,是前台的哈洛伦警长。
“科尔探长,有两个人要见你。一个是金斯顿联邦法院派来的,说是要讨论关于朱利安·索恩的预审安排。另一个人——”哈洛伦的声音犹豫了一下,“她说她是艾琳·瓦西里乌。她说你欠她一杯茶。”
罗西看着科尔,科尔看着屏幕。窗外夜色渐深,金斯顿市的灯火在远处安静地亮着,仿佛什么也没有发生过。


暂无评论,来抢沙发吧!