10. 双重指令

一号目标的私人商务机在坎布尔国际机场起飞时,拉菲克的屏幕上跳出了第一条追踪数据。

那是一个自动生成的日志条目,时间戳精确到毫秒,记录了一号目标的手机在关闭飞行模式、接入机上WiFi网络后触发的第一个信号。信号内容很简单——一条发送给迪拜自由区某个虚拟办公室号码的加密短信,内容是:“已离境。按计划进行。资产转移方案C明天生效。”收件人的注册信息被一层又一层的离岸壳公司遮盖得严严实实,但如果追溯每一层壳公司的注册代理人和实际受益人,就会发现它们最终都汇入了一个地址——萨哈拉精炼公司在自由区总部的信箱。

拉菲克把这条信息复制进raven的案件数据库,然后继续追踪。飞机上的WiFi信号不稳定,数据传输每隔几分钟就会中断一次,但追踪程序的设计恰恰是为这种不稳定的网络环境优化的——它会自动缓存所有数据,等信号恢复之后再进行压缩传输,不会丢失任何一个字节。

萨米尔和纳迪亚仍然留在调度室里。萨米尔靠在墙上,用手机刷着社交媒体上关于阿米拉学籍公示的舆论发酵情况。转发量已经突破了六万,一些原本对萨哈拉司法系统持沉默态度的公众人物开始发表评论。一名退役的联邦最高法院法官在社交媒体上发了短短一句话:“当法庭门前的正义天平倾斜时,总要有人用手把它扶正。”这句话在一小时内被转发了超过两万次。

纳迪亚坐在角落里,正在用笔记本电脑远程处理医院的事务。她每隔十几分钟就会抬头看一眼拉菲克——不是监视他,而是用一种专业观察者的目光,像医生在监护一位正在接受认知功能测试的患者。

“拉菲克,”她忽然开口,“你今天吃饭了吗?”

拉菲克愣了一下,低头看了一眼桌上那个三明治的包装纸。“早上吃了一个三明治。”

“现在是晚上九点。你还需要再吃一顿。”

这个提醒与案情无关,与深网追踪无关,与正义和复仇都无关。它只是一个关于食物的问题,关于身体需求的问题。拉菲克忽然意识到自己已经超过十二个小时没有吃东西了,而纳迪亚是唯一注意到这一点的人。法蒂玛以前也是这样的——在他沉迷于代码世界忘记时间的时候,她会端着一盘水果走进书房,什么都不说,只是把盘子放在键盘旁边,然后离开。纳迪亚和法蒂玛是表姐妹,她们有着相似的姿态、相似的语调、甚至相似的提醒方式。这个认知让拉菲克的胃部产生了一种与饥饿无关的收缩感。

萨米尔站起来说:“我去买吃的。港口外面有个卖烤肉卷饼的小摊,二十四小时营业。”

他走出去之后,调度室里只剩拉菲克和纳迪亚两个人。

“你今天下午说,你已经分不清哪些是你做的、哪些是他做的。”纳迪亚合上电脑,转向拉菲克,“能具体描述一下吗?”

拉菲克没有回答。他继续盯着屏幕上的追踪数据看了一会儿,然后才开口:“今天早上。我出门之前,在书桌上发现了一张纸条。纸条上的笔迹是我的,写着:‘楼下信箱里有阿米拉的信,记得拿。’我的确下楼拿了信——是法学院寄来的模拟法庭竞赛成绩单,她在大二组的全国预赛中拿了第三名。”他顿了一下,“但我完全不记得自己写过那张纸条。”

“这是第一次发生吗?”

“不是。过去一周里至少有五次类似的情况。我在冰箱里找到了我不记得买过的食物,在手机备忘录里看到了我不记得打过的记录,在电脑回收站里恢复了一批我不记得删除过的文件。都是小事——像是有人在替我打理生活。”

“这个人就是你自己。”纳迪亚的声音很平静,但语气里有某种坚定,像钉子被一锤一锤敲进木板。“解离的裂缝在变小。以前他是独立运行的进程,和你的意识没有交互。现在两个进程开始交换数据了。纸条、备忘录、冰箱里的食物——这些是他在向你传递信息,告诉你他还存在,他还在你的生活里,他没有离开过。”

拉菲克沉默了很长时间。港口的风从调度室破碎的窗户里灌进来,带着海水的咸腥味和远处货轮发动机的柴油废气。桌面上沾着一层细密的灰尘,在笔记本电脑风扇的微风中轻轻浮动。

“纳迪亚,”他终于说,“你有没有想过,如果法蒂玛还在,我会不会变成这样?”

纳迪亚没有回答。这个问题不需要回答。如果法蒂玛还在,那三名反恐部门的特工就不会把目标转向他的家庭。如果法蒂玛还在,他就不需要在十年间独自面对一个无边无际的复仇性幻想。如果法蒂玛还在,raven也许根本不会诞生——或者即使诞生了,也只是他硬盘深处一个永远不被激活的文件夹,而不会成为一个运行了十年、干预了一百四十多起案件的数字幽灵。

萨米尔回来时带着三个热气腾腾的烤肉卷饼,铝箔纸包着,油从纸缝里渗出来,散发出混着孜然和辣椒的浓烈香气。他把一个递给拉菲克,一个递给纳迪亚,自己拿着第三个坐到角落里去吃。三个人在昏黄的灯光下吃着卷饼,铁皮屋顶上有几只海鸟在咕咕叫着,听起来和发电机的嗡鸣混在一起,像某种不合拍的低音和声。

卷饼吃到一半时,屏幕上连续弹出了三条新的追踪信号。一号目标的手机在迪拜国际机场降落后连接了当地的移动网络,追踪程序随之激活了全部功能——通讯记录下载、位置追踪、文件扫描。拉菲克放下吃了一半的卷饼,擦了擦手指,开始逐条查看数据。

第一条是一个地址簿导出文件,包含了超过两百个联系人,其中大约三十个标注了“SRC”前缀。每一个联系人的条目里都包含了完整的电话号码、电子邮箱、以及在某些情况下甚至包括备用身份信息和离岸账户代码。这些信息相当于SRC-07网络在海湾地区的骨干联系图谱。

第二条是一组加密通讯应用的聊天记录备份。大部分内容被端到端加密保护无法破解,但元数据本身已经足够有价值——通讯频率、每次通讯的时长、参与者的地理位置分布,所有这些信息拼在一起,清晰地勾勒出了一个以迪拜自由区为中心、辐射到萨哈拉联邦、海湾君主国、北非和东南亚的运营网络。

第三条让拉菲克的手指停住了。

那是一封未发送的邮件草稿。收件人标注为他父亲的私人邮箱,主题行只有四个字——“一切就绪”。邮件正文没有写完,只打了一个开头的句子:“父亲,已确认目标A的档案清理工作完成。需进一步指示剩余目标的处理时间表。关于F的家属,我认为目前不需要额外——”

句子在这里中断了,似乎是写作者被某个突发事件打断了。邮件的草稿保存时间是起飞前大约四十分钟。目标A,指的应该就是阿米拉——在清理档案之后确认她是“已处理”的目标。而“关于F的家属”——F很可能是四个目标中某个人的代号,或者是另一个关联人。这封邮件的存在表明一号目标在离开萨哈拉联邦之前,正在与父亲讨论后续的善后工作。

拉菲克把未发送邮件的内容读了三遍,然后把电脑转过去给萨米尔看。萨米尔看完之后,脸色变得非常难看。“他在讨论‘剩余目标’。不止阿米拉一个人。”

“这就是我们在数据库里看到的五个关联案件。她们每一个都是潜在的目标——她们在不同的时间、不同的地点、以不同的方式和阿米拉产生了交集,而阿米拉把这些交集变成了五条通往真相的线索。SRC-07只是在阿米拉身上完成了第一次清理。”拉菲克的声音很平稳,但平稳得不像一个父亲,而像一个正在做逻辑推演的工程师。“如果这封邮件顺利发出,安萨里会给出‘进一步指示’。一号目标现在处于出境状态,无法及时接收邮件,所以‘剩余目标’的处置时间表可能暂时被搁置。”

“等他在迪拜安顿下来,”萨米尔说,“这个搁置就会解除。”

拉菲克继续往下滚动数据。在追踪程序自动备份的文件列表中,他看到了一个被标记为“重要”的PDF文件。文件名是一串随机字符,没有明显的内容提示,但文件大小和创建日期与他在raven数据库中见过的一份文件高度相似。他点击下载并解密后,发现这是SRC-07网络在过去三年间向萨哈拉联邦境内输送“服务人员”的完整人员流动记录——每个“服务人员”的来源国、入境时间、中介代理人姓名、以及在萨哈拉联邦境内的分配地点和“客户”接洽信息。

名单上有超过两百个名字,其中超过一半的“服务人员”是年龄在十六到二十五岁之间的女性,来源国涵盖萨哈拉联邦周边的六个国家——其中一些国家仍然处于战乱或经济崩溃状态。输送方式是伪造的劳务派遣合同,中介代理人统一使用一家名为“新月国际人力资源”的公司名义运作,而这公司的注册地址与SRC-07在迪拜自由区的总部只有一墙之隔。

“有了这份名单,”拉菲克指着屏幕上的数据,“安萨里家族控制的不仅是萨哈拉精炼公司,不仅是政治献金渠道,而是一个从招募、运输、分配到事后掩盖的完整产业链。精炼是幌子,矿业是幌子。真正的业务是人口贩卖。”

调度室陷入了一种沉重的寂静。萨米尔放下卷饼,用纸巾擦了擦手,然后拿起名单的打印件逐页翻看。他翻到萨哈拉联邦境内的分配地点那一栏时,眉头拧得更紧了。“这些地点分布在全国二十七个城市,从首都到东部港口,从北部边境到南部工业区。每一个地点都有一个对应的‘客户编号’。如果这些客户编号可以对应到具体的身份信息,那么这份名单就不只是一份犯罪证据——它是一份萨哈拉联邦精英阶层的犯罪名录。”

纳迪亚走过去拿起萨米尔翻到的那一页,用手指着列表上的一个地点——维沙卡市,分配编号VK-09。接收方机构名称标注为:联邦反恐部门维沙卡办事处。

“这就是为什么四年前玛莉亚姆·伊克巴尔在医院里被两名特工性侵却没人敢管。”纳迪亚的声音里出现了她作为一名医生不该有的情绪波动——不是愤怒,而是一种压抑了太久的、对同行的失望和无力。“他们不是单独作案。他们是一个系统的一部分。而这个系统的客户分布在联邦每一个关键执法部门里。性侵嫌犯被捕后,反恐部门以‘国家安全’为名接管,实质上是给客户提供事后清理服务。玛莉亚姆不是他们的第一个清理对象,也不会是最后一个。”

拉菲克把所有数据整合完毕,并仔细备份到离线加密硬盘中,然后合上了笔记本电脑。

他站起身来,对着萨米尔说:“现在我需要见瓦卡尔·纳迪姆。”

“为什么是他?”

“十年前萨哈拉电信的监控架构文档一共只有三个工程师参与。我写了隐藏层代码,巴希尔设计了加密层,瓦卡尔负责传输层的底层协议。我可以通过隐藏层让数据变得不可见,但如果缺少传输层的配合,那组数据依然不能在不同节点之间实现彻底的匿名流通。瓦卡尔对于萨哈拉联邦目前部署的所有网络监控系统的底层传输协议的了解,比任何人都要深刻。”

萨米尔斟酌了一下措辞。“他现在的身份是内政部借调过来负责审计‘天幕’安全的官员。你等于是要一个内政部的人帮你对抗内政部。”

“不是让他帮我,”拉菲克说,“而是让他面对十年前发生的一件事。当年诬陷巴希尔·库雷希泄露数据的人之所以能成功,是因为调查委员会手上有一份‘确凿证据’,是一份所谓的加密层漏洞报告,声称巴希尔在架构里预留了用于窃取数据的后门。这份报告在内部听证会上被拿出来作为关键指控依据,直接导致了巴希尔被迫辞职离开萨哈拉电信。”

萨米尔皱了皱眉。“那份报告是谁写的?”

“签名人是瓦卡尔·纳迪姆。”拉菲克平静地说。“他的签名出现在那份技术鉴定报告的最后一页。但报告正文对漏洞的描述,与瓦卡尔本人当年的技术文档中对于加密层架构的原始设计逻辑,存在着明显的差异。我当时读过那两份文件。如果你现在问他,我怀疑他会告诉你同一件事——那份报告的结论不是他写的。有人在提交之前改动了报告的核心判断,但签名栏的名字没法改,因为那是打印出来的,需要重新走内部审批流程。改动的人赌的就是瓦卡尔不会为了一个已经失势的同事去赌上自己的仕途。”

“他赌对了吗?”

“赌对了一半。瓦卡尔确实没有在公开场合翻案。但他发了十年的空白博客。”拉菲克说,语调里终于带上了某种可以被理解为温度的东西——不是愤怒的热,也不是冷漠的冰,而是一种从地壳深处缓慢上升的、与真相一样古老的温度。“一个人用十年来发空白博客,就是在等有一天有人来问他那个问题。给他一个机会,把十年前缺失的那个答案补上。现在这一天到了。”

纳迪亚站起来走到拉菲克面前。

“我要你答应我一件事。”她说。

拉菲克看着她,等待着。

“如果你见到瓦卡尔,如果他告诉你十年前的真相,如果你因为这个真相而决定做任何更危险的事——你需要在那之前再见我一次。不是作为精神科医生,而是作为法蒂玛的表妹。我有一些东西要给你。”

拉菲克看着纳迪亚的眼睛。她的眼睛和法蒂玛有七分相似——同样的深褐色虹膜,同样的眼尾微微下垂的弧度,但她的目光更锐利一些,带着精神科医生特有的穿透力。他点了点头,然后背上帆布包,和萨米尔一起走出调度室。

萨米尔联系了瓦卡尔·纳迪姆,约在维沙卡城北一家通宵营业的茶馆里碰面。两人推开茶馆的玻璃门走进去时,茶馆里弥漫着大吉岭红茶和油炸萨摩萨饼的混合香气。角落的座位上坐着一个六十岁左右的男人,穿着深灰色的传统长袍,胡须灰白,面前的桌上摊开着一本已经翻得很旧的英文书。书的封面标题是《互联网协议基础架构》。他抬头看到萨米尔和拉菲克,合上书,站起身来。

“拉菲克·汗。”他说,声音低沉而温和,“我以为你永远离开了这个行业。”

“我没有离开。”拉菲克在他对面坐下,“我只是换了一个工作场所。”

瓦卡尔的目光在拉菲克脸上停留了一会儿。他是个阅人无数的老工程师,看得出眼前这个人和十年前萨哈拉电信机房里那个年轻气盛的网络安全专家已经完全不同。眼前这个人,比当年更深,更静,更像是某种被地壳压力挤压了十年后形成的密度极高之物。

“你的匿名邮件我收到了。”瓦卡尔把书推到一边,双手交叉放在桌面上。“那个隐藏层的存在——我十年前就知道。巴希尔也知道。”

“那你知道你们的监控系统已经变成一个可随时被反向操纵的平台了吗?”萨米尔压低声音问,“现在使用这套系统追踪并清除异己的,不是网络犯罪调查局,而是联邦内政部。他们在用你设计的协议监控每一个试图调查SRC-07网络的人。”

瓦卡尔沉默了很长时间。茶馆里只有他们这一桌客人,老板是一个蓄着白胡子的老人,正靠在柜台后面打盹,收音机里播着一首舒缓的乌尔都语歌曲。

“那份报告不是我写的。”他终于开口。“至少,结论不是我写的。”

拉菲克和萨米尔交换了一个眼神。他终于说了。

“报告的前三页是我写的——描述了加密层的架构、密钥分发机制和多重身份验证协议。但最后一页关于‘存在蓄意预留后门’的结论,是调查委员会在凌晨三点钟修改的。他们修改完后,未经我本人确认,就直接提交到了第二天早晨的听证会上。我当时根本不知道改动已经发生。等我站在听证席上面对质询时,那个结论已经成了整个案件的定性依据。”

“你为什么不在听证会上当场否认?”拉菲克问。

“因为我不能。”瓦卡尔的声音忽然变得低沉,像是从胸腔最深处挤出来的,“如果我否认,他们就会把矛头转向法蒂玛的绑架案。他们掌握了一份所谓的通讯记录,声称法蒂玛被绑架的真正原因不是反恐部门的报复行为,而是你在协助巴希尔向境外势力出售情报的过程中‘玩火自焚’,连累了自己的家人。如果我不在听证会报告上保持沉默——他们就会向媒体公开这份伪造的通讯记录,法蒂玛的名字,会从一个英雄家属变成一个叛国者共犯的家属。”

瓦卡尔停了一下,然后说:“那会是整个萨哈拉电信历史上最肮脏的掩盖行动。而参与掩盖的人,现在很多都升了官,有些人就在‘天幕’系统的管理岗位。”

茶馆里只剩下收音机里那首缓慢的老歌。外头的夜已经深了,维沙卡市大部分的灯火都熄灭了,只有零星的广告牌还在黑暗中固执地闪烁着。拉菲克沉默了很久,然后伸出手握住了瓦卡尔放在桌上的那只手。

“我需要你帮我,不是去对抗内政部——而是帮我接通传输层的底层协议接口。让那些被掩盖的证据,通过它们十年都找不到的隐藏通道,被发送到无法再次被删除的公开域——一个任何委员会都无法控制的领域。”

瓦卡尔看着拉菲克,又看了看萨米尔,然后低头看了一眼自己翻旧的那本书。他的手指摸了摸书的封面,那是十年前他和巴希尔、拉菲克三个人一起选的技术参考书。

“我给你们一个地址,”他说,“那里存着十年前所有原始架构文档的完整备份。包括你在隐藏层里写的那段随机噪声生成算法。如果你们要对抗的是整套系统——你们需要的不是一个人的账号密码。你们需要的是,一个十年前就被我从格式化的硬盘里偷偷抢救出来的、包含所有基础底层原始指令的完整备份库。”

他从口袋里掏出一支笔,在书的扉页上写下一个地址——不是IP地址,不是服务器路径,而是一个物理地址。维沙卡旧城区,一栋已经废弃的邮政大楼地下二层的档案室。

“这栋楼属于萨哈拉电信的旧资产,”瓦卡尔说,“十年前公司搬新办公楼时忘了处理这间档案室。里面唯一还在运行的是一台老旧的磁带式数据备份机,和一堆落满灰尘的九轨磁带。你需要的代码在一盘编号为ST-0749的磁带上。如果你能把它读出来——”

“我就能拿到整个萨哈拉联邦监控系统的原始架构图。”拉菲克说完,站起来,把帆布包背到肩上。“瓦卡尔,保护好自己。”

瓦卡尔笑了笑。“我发了十年空白博客,你觉得保护自己这件事我还需要别人提醒吗?”

拉菲克和萨米尔走出茶馆时,天边开始泛白。这是他们在港口调度室里一起熬过的第二个夜晚。

两人走在空旷的街道上,脚步声在破晓前的寂静里显得格外清晰。空气中弥漫着雾气和花香——不知是谁家阳台上种的夜来香,正在天亮前的最后一刻释放出最浓烈的香气。萨米尔走到岔路口时停了一下,看着拉菲克,开口问道:

“你现在是谁?”

拉菲克没有回答。他只是继续往前走,一手插在口袋里握着阿米拉笔记本的蓝色封皮,另一只手扣在肩带上,扣着那个装满硬盘、密钥、行动计划和十年未竟之事的旧帆布背包。

他没有回答,因为他不确定。他唯一知道的是,不管rafiq和raven合并之后叫什么名字,天亮之后他都会去旧城区那栋废弃的邮政大楼,找到那盘磁带,拿到整个联邦监控系统的原始代码。而在坎布尔的方向,一架私人商务机正朝着海湾方向继续飞行,机舱里的年轻人靠在真皮座椅上,喝着加冰的威士忌,丝毫没有意识到一个持续了十年的算法已经包裹了他的整个世界,正在开始向内闭合。

本章评论(0)

暂无评论,来抢沙发吧!

我来评论

您的邮箱地址不会被公开。 必填项已用 * 标注