13. 局中局

指尖碰到键盘的那一秒,朱利安按住了艾德里安的手腕。

“等一下。”朱利安说。不是命令,不是恳求,是那种在悬崖边上伸手拦住同伴的语气——急,但不慌。

艾德里安的手指在回车键上方悬停。玛格丽特从椅子上站起来,灰色眼睛里的某种期待凝固在半空中。日光灯管在天花板上嗡嗡响了三声,像是整栋大楼在清嗓子。

“打开那行代码只需要按一下,”朱利安说,手没有松开,“但你需要先做另一件事。”

“什么事?”

“备份整个隐藏分区。不是拷贝那行代码——是拷贝整个分区里所有被注释掉的代码行,包括操作日志、时间戳、每一次修改留下的缓存痕迹。我要的不是一个证据,是整个链条。副局长的四笔骗保贷款、模仿犯罪的三笔伪造贷款、系统每一次升级时对这个分区的覆盖记录——全部。十年里这个分区被打开过几次、修改过几次、每一次的IP地址和登录名是什么。这些信息才是能钉死整个骗保体系的东西。如果只修复一行代码,系统只会标记异常账户,不会追溯责任。你打开它,伪造贷款会浮出来。但那些制造伪造贷款的人——包括已经死了的副局长——他们的痕迹会被自动修复覆盖。十年后,异常账户出现在记录里,但操作日志消失了。”

艾德里安看着屏幕,瞳孔在镜片后面极其微弱地收缩。那是一种技术人员被同行指出盲点时的本能反应——不是被冒犯,是恍然大悟。

“我从来没有想过这个。”他低声说,“十年来我只想着那行标识符。它是锁。我以为只要打开锁,门就开了。但我没有想过锁芯本身也是证据。”

“因为你不是侦探。”玛格丽特的声音从三米外传来,语气里有一丝罕见的、几乎听不出来的赞赏。“你是系统内部的人。内部人员看到的是功能——这行代码能不能运行、能不能修复、能不能恢复异常标记。外部人员看到的是痕迹——谁写的、什么时候写的、改过几次、为什么改。”

朱利安松开了艾德里安的手腕。“备份整个分区。然后你再决定要不要修复那行代码。”

艾德里安的手指从回车键上移开,开始在键盘上敲击。指令行在屏幕上逐条出现。朱利安看不懂全部的命令语法,但他能认出几个关键词——“全量导出”、“日志缓存”、“隐藏分区镜像文件”。艾德里安的手指在键盘上移动的速度比之前快得多,不再是悬在半空中犹豫的钢琴家,而是一个终于知道自己要弹什么曲子的乐手。

五分钟。屏幕上弹出一个进度条,缓慢地向右爬行。百分之二十。百分之四十五。百分之七十三。窗外的格雷文港一片漆黑,只有磨坊街的路灯在地面上投下橘色的光圈。朱利安看着进度条上那些跳动的数字,脑子里在复盘整个案件的时间线。副局长的骗保案发生在十年前。埃利斯的死发生在骗保案被揭露的前夜。艾德里安的恐惧、玛格丽特的沉默、系统的迟钝——所有这一切都在同一条时间线上运行,但从来没有人在同一个房间里把它们拼在一起。

百分之百。镜像文件导出完成。

艾德里安把备份分别拷贝进三个不同的存储介质——一个外接硬盘、一个加密云端账户、以及玛格丽特放在档案柜上的接收器。他把外接硬盘放在桌上,把云端账户的密钥写在一张便利贴上,贴在硬盘外壳上。

“三份备份,”他说,“分别放在三个不同的人手里。你一份,她一份,我一份。任意一份丢失,另外两份仍然能互为印证。”

“你现在可以按下去了。”朱利安说。

艾德里安重新打开那个隐藏分区,光标定位在那行被注释掉的标识符上。分号还在。那个小小的符号在屏幕上闪烁了十年,把一个庞大的数据库分成了两个世界——真实和虚假,但虚假的世界戴着真实的面具,在系统里畅通无阻。

他删除了分号。

然后按下了回车。

屏幕没有爆炸,没有警报,没有任何戏剧性的反馈。只有一个简单的系统提示框弹出来,上面写着:“代码行 #4721 已激活。正在重新索引异常账户标记。预计完成时间:约2分钟。”

三个人同时盯着屏幕。进度条开始爬行——百分之五,百分之十二,百分之二十八。朱利安发现自己在屏住呼吸,于是强迫自己呼出一口气。玛格丽特的手放在档案柜边缘,指节因为用力而泛白。艾德里安坐在椅子上,背挺得很直,双手平放在桌面上,像一个在等待陪审团宣布裁决的被告。

进度条到达百分之五十时,屏幕忽然闪烁了一下。不是那种系统崩溃的黑屏,而是一种轻微的、几乎不可察觉的亮度变化,像是数据库深处有什么东西被惊动了,正在缓慢地翻身。

百分之六十七。屏幕上开始跳出提示行。一条一条地弹出来,每一条都带着同样的前缀:“异常账户标记已激活。”后面跟着贷款编号、日期和被标注为“伪造”的具体原因。朱利安数了一下——第一条、第二条、第三条。到第四条时,他的心跳加快了两拍。到第七条时,艾德里安把眼镜摘下来放在桌面上,用手指按了按鼻梁。

百分之八十九。第八条提示弹出来了。然后是第九条。朱利安的手指在桌面上敲击了一下——玛格丽特之前说的是七笔伪造贷款,至少七笔。但现在屏幕上弹出了第九条标记。这意味着她掌握的数据不是全部。系统深处还藏着连她也没有追踪到的伪造账户。

百分之百。系统提示框变成绿色。一行字浮现在屏幕中央:“索引完成。共标记异常账户 9 个。其中 7 个关联外部信用报告机构。2 个标记为内部注销记录,未推送至征信系统。是否生成完整异常报告?”

九笔。比玛格丽特追踪到的多了两笔。

“那两笔内部注销记录,”朱利安指着屏幕,“怎么回事?”

艾德里安点了“生成报告”。一份详细的异常账户清单在屏幕上展开。他逐行往下读,手指在屏幕上划过每一行数据。读到第六行时,他的手指停住了。

“这两笔内部注销记录……”他的声音变得很慢,像是在逐字拆解一个他不愿意接受的结论,“不是副局长经手的。也不是模仿犯罪。它们是在埃利斯失踪两年后创建的。创建者是一个系统管理员账户。那个账户的登录名是——”

他停下来。日光灯管的嗡嗡声忽然变得震耳欲聋。

“是玛格丽特·海因斯。”

办公室里的空气像被抽走了。朱利安转过头,看向站在档案柜旁边的玛格丽特。她的姿势没有变化——手放在档案柜边缘,背挺直,灰色大衣的下摆垂在膝盖两侧。但她的脸变了。不是恐惧,不是愤怒,不是任何一种朱利安预料中的表情。她的脸变得很安静——那种安静不是在暴风雨中维持镇定,而是暴风雨本身已经过去了,只剩下空旷的海面。

“是我创建的。”她说。

艾德里安从椅子上转过身,看着玛格丽特。他的眼镜还放在桌上,没有眼镜的遮挡,他的眼睛看起来比之前更小了,也更真实。那双眼睛里没有指责,只有一种深深的、几乎无法承受的困惑。

“你为什么——”他的话说到一半就停住了。因为他看到了玛格丽特的表情。她不是在防御。她是在等待。等待这一刻已经等了很久,久到她脸上的肌肉已经忘记了紧张是什么感觉。

“埃利斯死后,副局长还没有退休。那四笔骗保贷款的档案还锁在他的办公室里。我当时以为,如果直接从外部举报,档案会被他提前销毁。联邦信贷局的内部调查机制你比我更清楚——只要还有人在位,内部举报永远会被转化为‘初步审查’,初步审查永远会得出‘不存在刑事要件’的结论。所以我决定从内部动手。我创建了两笔新的伪造贷款——不是为了骗钱,是为了制造矛盾。我用副局长的系统管理员账户创建了这两笔贷款——不是我的账户,是他的。我知道他每周五下午会远程登录系统检查数据库,但从不检查自己的操作日志。我在他名下创建了两笔伪造贷款,然后在两个月后主动向州检察长办公室匿名举报,指向这两笔贷款的操作记录。”

朱利安的脑子里有一个拼图块“咔嗒”一声嵌进了缺口。

“所以副局长两年前的死亡,”他说,“和他被调查有关?”

“州检察长办公室收到举报后启动了正式调查。调查没有公开。副局长的律师在调查开始后第三周联系了州检方,表示愿意退还部分款项以换取免于刑事起诉。协议还在谈判中,他死在度假别墅里了。”玛格丽特的声音依旧平稳,但平稳的质地变了——不再是冰面的平滑,而是深水在巨大压力下的平静。“尸检报告写的是心肌梗死。我倾向于相信那是真的。一个在联邦信贷局工作了三十年的人,晚年发现自己创建的骗保体系被两笔自己名下的伪造贷款击穿——那种恐惧对他的心脏来说,也许确实是最后一根稻草。”

艾德里安沉默了很久。他把眼镜重新戴上,动作很慢,像是在用这个机械的动作来给自己争取消化信息的时间。

“所以你也是伪造贷款的制造者。你和副局长,和我——我们都在同一个系统里留下了伪造的痕迹。”

“区别在于,我创建的贷款从来没有被推送至征信系统。”玛格丽特指着屏幕上那行字,“‘未推送至征信系统’。它们只存在于内部注销记录里。没有人因为我的伪造贷款失去信用评分,没有人无法申请医疗贷款,没有人死。它们唯一的目的是作为内部调查的引信。引信点燃了,调查启动了,副局长死了。然后我把它们留在系统里,没有删除——因为我知道,如果将来有一天有人打开了这个隐藏分区,它们会成为我无法否认的证据。”

“你不怕这个证据反过来指向你自己?”

“我怕了十年。”玛格丽特终于从档案柜旁边走过来,在艾德里安对面的空椅子上坐下。三米的距离被她主动缩短到了一米。她把双手放在桌面上,掌心朝下,像一个在棋盘上亮出最后一个棋子的人。“但我也知道,一个人如果没有参与过坏事,就没有资格要求别人坦白。我创建了伪造贷款,哪怕动机不同、结果不同,但行为本身和副局长没有本质区别。我选择了沉默,和艾德里安没有本质区别。我们都是这个系统的一部分。副局长的骗保案是系统的罪,埃利斯死在纠正这个罪的过程中,这是系统的债。而我能做的——用我的余生——是把这份罪和债一起放在桌面上,让外部的人来审判。”

“我就是那个外部的人。”朱利安说。

“你是。但你也是最后才进来的人。”玛格丽特看着朱利安,灰眼睛里第一次没有那种始终维持的距离感,而是一种将散的疲惫和将起的坚定混合在一起的复杂光芒。“我已经准备好了。不管你会把那份报告交给警方、媒体还是州检察长办公室,你不会交出一个不完整的故事。完整的故事里有罪行——我是其中之一,但不是最严重的。完整的故事里也有因果——我的伪造贷款导致了副局长的死亡,而他的死亡导致了骗保案的曝光。正义不是一条直线,是一个圆。你兜了一圈,发现站在终点的人也是站在起点的人。”

朱利安把那份刚刚生成的异常报告打印出来,一式三份。他给艾德里安一份,给玛格丽特一份,自己留了一份。打印机吐出纸张的声音在寂静的办公室里像某种仪式的节拍。

“这不是终点,”他把报告折好放进口袋,“这是你们跨出去的第一步。之后还有第二步、第三步——将交给警方、交给媒体、交给那七个还活着但不知道自己的信用报告即将被标记的人。代码被修复了,但修复只是开始。真正的修复是让他们知道——他们不是被系统随机压死的蚂蚁。他们的受害有原因,有责任人,有可以被追溯的起点。”

艾德里安站起来,走到窗边,拉开百叶窗。窗外是格雷文港的深夜,磨坊街的路灯下没有行人,对面的印刷厂二楼窗口也黑了。玛格丽特坐在原处,没有动。她的大衣口袋里还有那支录音笔——埃利斯留在地窖里的最后一分钟录音——此刻正安静地贴着她左侧第二根肋骨的皮肤。

“你会回来吗?”艾德里安对着窗户说,声音被玻璃反射回来,叠上一层薄薄的回音。

朱利安没有立刻回答。他把打印出来的异常报告最后核对了一遍,然后把那份档案袋——玛格丽特收集了十年的贷款受害者资料——放在艾德里安的键盘旁边。

“我会回来拿答案。”他说,“但不是你们的答案。是他们的答案——彼得·克劳斯的家属、托马斯·基恩的遗孀、那七个即将收到信用异常通知的人。你们给了我真相。我需要把真相还给他们。当我做完这件事,我会回来。在此之前——”

他把手放在办公室的门把手上,回头看了一眼。两个人,一个坐在电脑前,一个坐在空桌子旁。空荡荡的数据管理部,二十张积灰的办公桌排成沉默的队列,头顶的日光灯管依旧嗡嗡作响。这个房间十年来困住了太多东西——一个死者的遗物、一本日记、一段录音、几行被注释的代码、两个人各自守着的沉默。但今晚,有东西从窗户里飘出去了。不是秘密。是秘密被说出来之后,重量减轻的那一部分。

“在此之前,”朱利安说,“我需要一个人去见多萝西·基恩。她丈夫死的时候不知道自己在承受别人的罪行。她应该第一个知道。”

门在他身后轻轻合上。走廊里的灯坏了一盏,另一半光线把他的影子拉得很长,投射在磨砂玻璃门上。他沿着楼梯往下走,经过二楼的自助餐厅、一楼的保安台——罗伊的赛马报还摊在桌上,咖啡杯边缘留着一个深色的唇印——然后推开大厅的旋转门,走进格雷文港十月的冷风里。

停车场里只有他一辆车。挡风玻璃上干干净净,没有照片,没有信封。他拉开车门,坐在驾驶座上,发动引擎。发动机的轰鸣声在空旷的停车场里回响。

手机屏幕亮了。一条新短信,来自陌生号码。不是玛格丽特——这个号码比她用的那个更短。内容只有一行:

“你做到了。现在该我了。——D.K.”

D.K. 多萝西·基恩。

朱利安盯着屏幕上的字母。什么叫“现在该我了”?她知道什么?她做了什么?他把手机放在副驾驶座上,挂上档,车驶出停车场。格雷文港的街道在他面前铺开,两侧的行道树在风中摇摆。他开往东区,脑子里反复回放多萝西·基恩在客厅里对他说过的每一句话——她提到那封匿名信时的语气太平静,提到七个受害者时的手势太精确,提到托马斯的退伍抚恤金时的眼神太像一个已经把最后筹码推到赌桌上的人。

还有她那句话:“如果你想知道真相,去诺瓦利斯州的农场。”她怎么知道农场?那封匿名信上印的是打印体,没有署名。但匿名信的措辞和玛格丽特的风格吻合——朱利安一直以为信是玛格丽特写的。但如果写信的人不是玛格丽特,而是多萝西自己呢?如果她从一开始就不是一个被动的委托人?

如果她找他,不是为了调查丈夫的死,而是为了找一个人——一个干净的局外人——来替她走进那间她已经知道门牌号的房间?

本章评论(0)

暂无评论,来抢沙发吧!

我来评论

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