从纳迪亚的办公室出来后,拉菲克没有直接回家。
他沿着城西老区的窄巷子走了一段,穿过一片卖旧书和手工铜器的小集市。集市已经快收摊了,商贩们正把货品往铁皮棚屋里搬,空气中残留着香料、旧纸张和烤玉米混合的气味。他在一个卖油炸甜面圈的小摊前停下来,买了两个,包在旧报纸里,拿在手上却没有吃。法蒂玛生前最爱吃这种甜面圈,每次从医院下班回家路上都会买一袋,和阿米拉一人一个坐在沙发上吃,吃得满手糖霜。
他走到集市尽头的公共长椅上坐下。这张长椅正对着一面涂鸦墙,墙上用荧光喷漆画着一只巨大的眼睛,瞳孔里套着一个锁孔。这幅涂鸦在维沙卡算是一个地标,作者至今不知是谁。有人说是一个被大学开除的艺术系学生,有人说是某个反对网络审查制度的匿名黑客组织,实际上它可能已经存在了比任何人记忆都更长的时间。城市管理部门隔几个月就派人来刷掉它,但每次刷掉之后不到一周,新的涂鸦又会在原地重新出现——有时是黑色,有时是深蓝,有时是暗红。
拉菲克撕下一块甜面圈放进嘴里。糖霜在舌尖融化得很快,但面团的温度已经彻底凉了,咬下去的口感韧得像橡胶。他嚼了几下咽下去,然后从口袋里拿出手机。
屏幕上有一条未读消息,来自萨米尔,发送时间是十五分钟前。
“纳迪亚把四年前医院案件的内部档案调出来了。她说没有直接证据表明性侵发生,但有一件事对不上——病历上记载的镇静剂用量远超正常审讯所需的剂量。那个剂量通常只用于手术麻醉。两名涉事特工的名字她不肯告诉我,她说需要当面告诉你。”
拉菲克看完消息,手指在屏幕上方悬停了一会儿,然后打出了回复:“名字发给我。”
萨米尔没有回。又过了三分钟,他发来了两张照片。一张是联邦反恐部门内部通讯录的截图,两张面孔并列排列——两名特工,都是少校军衔,一个叫卡马尔·谢里夫,另一个叫哈立德·阿卜杜拉。另一张是纳迪亚从医院档案室翻出来的排班表,上面显示这两人在过去四年间以“外勤任务协作”的名义进出维沙卡国立法律大学附属医院的记录超过三十次。
三十次。不是偶然,不是临时起意。是持续的、系统性的渗透。
拉菲克把这两张照片存进加密文件夹,然后把手机屏幕按灭,靠在长椅背上。夜风从巷子尽头吹过来,带着海水的咸味。维沙卡靠海,市中心离港口只有不到十公里。他记得法蒂玛说过,等阿米拉大学毕业,他们就去港口附近买一套小公寓,开个面向大海的窗户,每天早上可以在阳台上喝红茶看船。
法蒂玛当时已经看中了一套房子,还交了定金。卖房的中间人是萨哈拉精炼公司的一个员工家属,那栋楼刚巧建在SRC-07名下的一块地上。拉菲克后来查过那栋楼的产权结构,发现它经手的每一层转包,都没有离开过安萨里家族的关系网。
法蒂玛到死都不知道,她为自己和女儿选中的那个面朝大海的家,地基因压在最肮脏的钱上面而注定无法被照到阳光。
拉菲克闭上眼睛。他的意识开始出现一种奇怪的分层感——像是同时站在两个屏幕前,一个屏幕上运行着他正在经历的当下,另一个屏幕上闪烁着代码、数据库、行动时间表、入侵路径图。两个屏幕的亮度不同,刷新率不同,但他的大脑正在尝试将它们叠加到同一个视野里。
他想起了纳迪亚说的那句话:“他们正在合并。”
就在这时,手机震动了。不是萨米尔,是一个来自加密应用的通知,发件人没有名称,只有一个公钥指纹。内容只有一行,用全大写字母打的:
“交通部入侵痕迹已被对方反查。萨米尔被监控。暂停一切在线活动,准备物理会面点。”
拉菲克盯着这条消息。这条消息的措辞风格和之前“冥府”平台上的推送通知完全不同。之前的通知是冰冷的、格式化的、带着明显刻意营造的神话色彩。而这一条,是实用的、命令式的,甚至带着一丝紧迫。
更关键的是——这行字是用英文打的,但拼写里有一个微妙的错误。它写的是“physical meet point”,而不是更自然的“physical meeting point”。这是一个以乌尔都语为母语的人在用英语打字时常见的语法省略——他在潜意识里把乌尔都语的介词省略习惯带进了英文句式。
阿米拉以前也是这么写英文短信的。
拉菲克抬起头看向街道。集市已经完全收摊了,巷子里空荡荡的。涂鸦墙上的那只眼睛正对着他,它的目光是平的、静止的、没有感情的,但拉菲克觉得那道目光正在穿透他的后脑勺,直抵那个他最近越来越难以区分的边界——那条他从未找到过的、醒着与梦着的分界线。
他深吸一口气,站起来,拦下一辆路过的三轮车。然后对司机说:“去港口。老货运码头。”
四十分钟后,他站在维沙卡港三号码头一座废弃的集装箱调度室里。
这地方是他和萨米尔十年前约定的最后一个紧急见面点。当时萨哈拉联邦的反恐部门刚刚开始对拉菲克施加压力,他设想过各种最坏情况,并给自己准备了四套应急预案,其中最极端的一套就在这个调度室。这里没有网络覆盖,没有监控摄像头,唯一的电源是一台老旧柴油发电机,唯一的对外通讯设备是一台经过物理隔离改造的军用级短波电台。如果所有常规通讯手段都被切断或者被监控,他们就在这里碰头。
萨米尔在凌晨一点赶到。
他穿着一件深色的连帽卫衣,帽子压在头上,脸上的表情比在精神科中心时更加沉重。他一进来就从背包里掏出一个便携信号探测器,沿着调度室的四面墙走了一圈,确认没有窃听装置,然后把探测器放在桌上,让它继续以低功率模式运行。
“局里今天下午升级了网络监控系统。”萨米尔坐下来时直接切入正题,“新系统叫‘天幕计划’,是联邦内政部直接部署的,连局长都没有完全权限。它的核心功能是对维沙卡市区所有固定IP地址进行深度包检测——不只是看流量规模和节点地址,而是直接解析加密数据包的元数据特征。”
“也就是说,”拉菲克说,“他们现在可以看到每一台设备连接的是哪种服务。”
“更糟。他们可以反向追踪到设备的物理地址。今天交通部入侵事件发生后,‘天幕’自动生成了一个警报,把入侵源的物理地址指向了你的公寓。但是,”萨米尔停顿了一下,“警报在生成之后的四十七秒内被另一个人工操作给删除,删除者的登录账号是我的。”
拉菲克看着萨米尔的眼睛。“你不应该这么做。”
“不是我做的。”萨米尔说。“我今晚全程在精神科中心陪纳迪亚调档案,我的电脑和手机都有不在场的时间戳可以证明。有人用我的账号登入了‘天幕’系统,删掉了指向你公寓的警报记录,登出时间恰好在我收到局里值班员电话的前一分钟——也就是今晚八点零九分。那个值班员之所以给我打电话,就是因为‘天幕’触发了一次未遂入侵警报,但当他回查数据库时,发现警报记录已经不存在了。他以为系统出了bug,打给我确认。”
拉菲克沉默了。八点十分到八点三十五分,他的IP地址正在入侵交通部。八点零九分,萨米尔的账号删除了可能会暴露他的警报。这两个操作之间的时间差只有不到六十秒。
“是‘他’做的。”萨米尔替他说出了他不愿说出口的话。“你的副人格用我的账号清理了现场。他甚至不需要破解我的密码——因为两个月前,你到局里来找我借一份旧案卷宗,我登录系统时你没有回避。”
那是两个月前的事。阿米拉还活着。拉菲克去局里是为了咨询一起与阿米拉同学有关的网络诈骗案——一个看似微不足道的小事,他坐在萨米尔的办公桌对面,等萨米尔登录系统调取卷宗时,以习惯性的姿势扫了一眼键盘。他在萨哈拉电信练就的本能让他可以在三秒内通过手指的位移轨迹推断出一个密码——萨米尔的密码是八个字符,包含了他妻子的名字缩写和结婚纪念日,这对于拉菲克来说太简单,甚至不需要主动去记,他的大脑就把这个信息自动存进了某处。
而那个存储空间,正是raven也能访问的。
“他两个月前就拿到了你的密码。”拉菲克的声音很低,像是在和自己确认一个数学公式的推导结果。“两个月前,阿米拉还活着。这和他的预谋无关——他只是收集信息。他一贯如此,把一切可能有用的信息全部储存起来,等到需要的时机取用。”他抬起头看向萨米尔,“这恰好说明他在我不知情的情况下运作了整整十年。他没有放过任何一个细节。”
萨米尔拿起信号探测器看了一眼。屏幕上没有异常。他把它放下,靠在锈迹斑斑的集装箱墙壁上,长长地呼出一口气。
“拉菲克。我今天听纳迪亚说完了所有关于解离的理论。但我还是不明白一件事——如果raven已经独立运行了十年,完成了三百一十七条案件的追踪和一百四十二次干预,那么他为什么现在才让阿米拉的案子进入行动阶段?为什么不在第一时间就阻止那四个人的犯罪行为?为什么一定要等到事发之后才开始行动?”
调度室里的柴油发电机发出低沉持续的嗡鸣,墙上唯一亮着的灯是一盏用铁丝挂在房梁上的防爆灯,灯泡上沾满了积年的灰尘和油污,灯光因此变得昏黄而浑浊。
拉菲克盯着那盏灯看了很久。灯泡里有一根钨丝正在发出极其细微的振动声,嗡嗡嗡嗡嗡,频率几乎是恒定的,像某种永不停歇的心跳。
“因为我不让他碰阿米拉。”
“什么?”
“我在阿米拉身上设置了数字隔离层。”拉菲克的声调忽然变了——不是变得激烈,而是变得比刚才更低、更平、更接近于一个记录档案的旁白者。“在她出事之前,我从来没有意识到这一点。但纳迪亚今天提到‘伦理边界’这个词时,我忽然明白了。这些年来我刻意回避关注任何与阿米拉社交圈可能产生重叠的案件,我刻意不把任何网络侦查工具用在她身上,我甚至在她申请法学院时没有帮她检查过网络安全设置——你知道为什么吗?”
萨米尔摇了摇头。
“因为我害怕。我害怕一旦让她进入我的数字世界,raven就会发现她。而他会把她变成一个目标——不是攻击目标,而是保护目标。他会开始监控她的行踪,过滤她的通讯,拦截任何可能的危险信号。而这样一来,我就在事实上剥夺了她的自由。”拉菲克的声音开始出现极其细微的颤抖,像是被调低了百分之五音量的扬声器。“所以我选择把她完全隔离在我的能力范围之外。我宁愿她暴露在正常世界的正常风险中,也不愿意用自己的方式给她打一针网络疫苗,哪怕那可能会救她的命。”
“但raven,”萨米尔说,“他最终还是找到了她。”
“对。在事发之后。在一切都已经无法挽回之后。”拉菲克的语气恢复了那种冰冷的平静。“他构建了数据库里编号317的记录,不是在事前预警,而是在事后追溯。因为我和他共享同一个大脑,我的恐惧就是他的防火墙——只要我恐惧的事,他就无法逾越。”
调度室里安静了很长时间。发电机的声音填满了所有空隙,低沉而执着。远处的码头上有一艘货轮正在卸货,起重机吊臂上的探照灯在夜空中缓慢扫过,每隔几十秒会有一道光柱透过调度室破碎的玻璃窗照射进来,把两人的影子拉长后投射在对面的铁墙上,又迅速移动走。
“所以现在的局面是,”萨米尔最终开了口,“你的副人格拥有最高权限的技术能力、一个持续运作了十年的地下正义系统、我的账号密码、对SRC-07网络的完整情报,以及一份已经生成完毕的、针对四名嫌犯及背后利益集团的行动计划。而你的主人格还保留着道德判断力和对阿米拉的感情。如果纳迪亚关于‘合并’的判断是正确的,那么当两个人格完成合并之后,你会变成什么?”
拉菲克没有回答这个问题。因为答案已经在纳迪亚的办公室里被说过了:他会变成一个同时拥有精准和痛苦的人。
“萨米尔,”他忽然说,“四年前那家医院里被性侵的嫌犯,那个死在ICU里的嫌犯——她叫什么名字?”
萨米尔打开手机看了一眼纳迪亚发来的档案照片。“玛莉亚姆。玛莉亚姆·伊克巴尔。当时二十六岁,是两个孩子的母亲。她被逮捕的罪名是‘涉嫌向境外势力泄露联邦机密’,但档案里没有列出任何实质证据。她被羁押期间的法医记录存在多处修改痕迹——原始记录提到‘盆骨区域软组织挫伤’,但修改后的版本删除了这一项。”
拉菲克站起来走到窗边。三号码头在窗外铺展出去,锈迹斑斑的集装箱堆场、褪色的龙门吊、远处海湾里星星点点的船舶灯火,在夜色中构成了一幅铁锈色的油画。风从海面上吹过来,带着咸腥、油污和某种更遥远的气息——那是几十年来在这里停靠过的所有船只从世界各地带回来的气息,混在一起,变成了维沙卡港特有的味道。
“她有两个孩子。”拉菲克重复了这句话。“法蒂玛死的时候,阿米拉在医院里昏迷,我一个人在家,每天反复读同一本书——一本关于计算机取证技术的英文专著,全书四百页,我把每一页都背下来了。后来阿米拉醒了,我抱着她哭了一整天。但在此之前的那段时间,我唯一能做的事就是读那本书。一遍读完再读一遍,因为我只要停下来,就会想到法蒂玛。玛莉亚姆的孩子现在在哪里?”
“不知道。纳迪亚说案件被压下去之后,孩子被女方的母亲接走了,据说搬去了东部港口城市。她现在正在试图联系那边的亲属系统,但可能需要时间。”
“找到他们。”拉菲克转过身来看着萨米尔。他的眼神在昏黄的灯光下呈现出一种说不清的颜色——不是冷,不是热,而是一种介于冰与熔岩之间的、随时会相变的状态。“如果这一百四十二个已经处置完毕的案件里,有一百四十一个是我不记得做过的,那么从现在开始——我要记得每一个。我要一个一个地重新认识他们。不是以raven的名义,而是以我自己的名义。”
萨米尔看着拉菲克。他在那双眼睛里看到了一个他从未见过的东西——不是愤怒,不是疯狂,而是一种极端的、被压扁后折叠起来再展开的悲痛。这种悲痛没有把人击垮,而是把人压缩成了一个密度极高的实体,坚硬到可以划开任何一种表面。
“你会需要我的。”萨米尔说。这不是一个问句。
“我已经需要你了。”
“那就让我们弄清楚另一件事。”萨米尔把背包打开,从里面取出一个加密硬盘,插在拉菲克带来的笔记本电脑上。“交通部数据入侵发生的时候,你的IP地址在被‘天幕’监测到的同一个时间段内,还向外发出了另一批数据——这批数据没有走HTTP或者FTP协议,而是用了一个非常古老的传输方式,一种上世纪九十年代流行过的P2P共享协议。我在局里的旧设备兼容日志里找到了它,没有人想起来关闭那个端口,因为它太老了,老到大家都忘了它的存在。”
“什么协议?”
“Freenet。”萨米尔说。“你的节点在向一个Freenet的分布式存储池上传一个加密文件包,大小大约六十四兆。”
拉菲克打开电脑,在raven账户的文件目录里搜索当晚创建的文件。在时间戳排序的列表中,有一个文件的名字是:
“PACKAGE_01_AMBASSADOR”
他点开文件属性看了一眼详细日志。这个文件包不是压缩文件,而是一个自解压的加密容器。容器的打开密码是一串随机生成的六十四位字符串。他从raven的密钥管理器里找到了对应的私钥,解密了容器,发现里面包含三样东西:一份PDF格式的调查报告,一段经过加密保护的视频文件,以及一个被设定为定时发送的邮件脚本。邮件的预设收件人地址有七个,其中包括《南亚镜报》主编塔里克·拉希德、国际人权观察组织的萨哈拉事务专员、欧洲议会的南亚人权小组,以及三名经手过类似案件并在判决中表达过异议的萨哈拉联邦高等法院退休法官。
调查报告的标题是:“关于萨哈拉联邦工业部长萨迪克·安萨里之子及其关联人对维沙卡国立法律大学学生实施性暴力一案中司法腐败及有组织犯罪网络干扰的初步调查报告。”
拉菲克把报告从头到尾快速浏览了一遍。全文大约两万词,引用了四十余份附件证据——包括被删除的证人证词副本、法医原始记录与庭审记录之间的差异比对、四名嫌犯的财务流水与涉案关键证人之间的关联性分析,以及SRC-07网络的基本架构图和资金流向摘要。报告的写作风格极其克制,没有一句情感化表达,所有指控都严格建立在可验证的公开信息或已泄露的内部文件之上。
“这份东西一旦发出去,”萨米尔低声说,“安萨里家族会用一切手段反扑。他们不只是在萨哈拉联邦有影响力——SRC-07的背后是整个地区的灰色资本网络,从海湾君主国到东南亚离岸中心,每一个节点都有政治靠山。”
“所以他没有直接发。”拉菲克指着屏幕上的定时发送设定,“他设置了一个触发条件。邮件不会立即发送,它会等待一个‘确认信号’——只有当某个外部事件发生后,定时器才会启动。如果那个事件不发生,邮件就会自动删除。”
“什么事件?”
拉菲克继续往下翻。在脚本的最底部,找到了触发条件的代码注释。注释只有一行:
“Condition: CONFIRMATION_OF_SOCIAL_EXECUTION_PHASE_ONE.”
社会性处决第一阶段确认。
“他在等我们。”拉菲克说,声音里第一次出现了一种萨米尔无法定义的情绪——不是欣喜,不是恐惧,而是一种类似于归途旅人看到远处灯火时的疲惫确认。“他知道我会来找这份文件。他把触发条件设计成需要主人格手动确认才能启动。他没有越权,把最后一句话留给了我自己。”
萨米尔沉默了很久,然后说:“你打算怎么确认?”
拉菲克看着屏幕,看着屏幕上raven留下的那个触发条件的代码注释。光标在注释行的末尾一闪一灭,像一只安静等待指令的鸟的眼睛。
他没有立刻回答。窗外的天色已经开始发生变化——不是变亮,而是变得更深,从黑色沉入一种更浓稠的、近乎深蓝的暗色。港口远处的地平线上隐约浮现出一丝暖光,但那不是日出,而是远处坎布尔方向的城市灯光在大气层底部散射出来的虚假黎明。
拉菲克想起了阿米拉七岁那年,他和法蒂玛带她去海边看日出。那是他们最后一次三个人一起出远门。阿米拉蹲在沙滩上用贝壳拼出一个鸟的形状,然后站起来拉着他的手说,“爸爸你看,我的鸟要飞了。”
“萨米尔。”他说,“我女儿有一次告诉我,宪法课教授在第一堂课上对新生的第一句话是——法律的本质不是惩罚罪犯,而是划定界限。她记住了这句话,把它写在她的笔记本第一页。”
萨米尔静静听着。
“但那个教授没有告诉她,当划界限的人自己站在线的那一边时——剩下的人只能自己想办法。”
他伸出手,敲下了键盘。
屏幕上弹出一个简单的确认对话框,上面只有两个字:“确认?”
光标在问号后面闪烁了三次。
然后他按下了回车。


暂无评论,来抢沙发吧!