审讯室的日光灯管在头顶嗡嗡作响,频率刚好与人的焦虑神经产生共振。约纳斯·克莱因坐在灰色铁桌的另一侧,双手平放在桌面上,手腕上戴着一副轻型手铐。手铐的内侧被技术人员用医用胶带缠过——那是雷瓦的命令,胶带的作用是防止金属边缘在他手腕上留下瘀痕。克莱因注意到了这个细节,在被带入审讯室后的前十分钟里,他的目光至少三次落在胶带上,每次都停留几秒,像在辨认某种陌生的语言。
艾莲娜坐在他对面。这是她第一次以审讯者的身份与俄耳甫斯面对面——之前在佩雷格林咖啡馆的那次短暂照面不算,那时他们是猎手和猎物,是两个隔着数字深渊互相试探的陌生人。现在他们是侧写师和落网的连环杀手,是卡吕普索和俄耳甫斯,是一个女人和一个在“镜像测试”中被系统判定与她灵魂契合度高达百分之八十九的男人。所有这些身份叠在一起,在日光灯的苍白光线下被压缩成一张窄窄的铁桌和两把同样不舒服的椅子。
雷瓦在单向玻璃另一侧的观察室里,迪米特里负责录音和实时数据记录。摄像机红灯亮着,显示审讯已经开始。
“你知道你的权利。”艾莲娜开口,语气平稳得像在陈述一条物理定律,“你放弃了律师在场权,自愿接受本次讯问。约纳斯·克莱因,我们现在开始。第一个问题——你是什么时候决定把目标从一般受害者转向我的?”
克莱因将双手从桌面上抬起,手铐之间的链条发出轻微的碰撞声。他把手掌翻过来,看着自己的掌心,像是在读一本只有他自己能看到的书。
“不是转向。”他说,“你从来不在‘一般受害者’的名单上。莉迪亚和苏珊是排练——她们是为最终乐章做准备的练习曲。我在‘镜像测试’的后台第一次看到你的测评报告时,距离我完成苏珊的转化还有整整两周。那份报告的数据结构和我之前见过的任何一份都不一样——你的情感依恋模式不是单一的焦虑型或回避型,你呈现出极其罕见的双重叠加,焦虑型和自我效能型并存。你既渴望被理解,又不需要任何人的理解来确认自己的价值。当时我盯着你的数据看了整整一个下午,然后我做了一个决定。”
“什么决定?”
“我用俄耳甫斯的账号给你发了一条消息。那条消息你应该记得——‘卡吕普索不在你们的档案里,但我找到她了。’在那之前我从来没有主动接触过一个执法人员,更不用说一个专门追踪我的侧写师。那是我第一次破例。因为你的数据告诉我,你不可能被当作猎物来对待。你不是猎物。你是另一个捕食者。而一个捕食者唯一会认真对待的,就是另一个捕食者。”
艾莲娜的手指在笔录纸上停顿了一下。这个细节——克莱因在苏珊遇害前就已经锁定了她——和她之前的推论不完全一致。她一直以为克莱因是在她以卡吕普索的身份介入“幻镜”之后才开始注意到她的。但如果克莱因的说法是真的,那么时间线就要往前推至少两周。在那两周里,苏珊还活着,克莱因一边继续完成对她的转化仪式,一边已经在为下一场——最终的那一场——准备颜料。
“你说你在后台看到我的测评报告。”艾莲娜继续问道,“那份报告是加密的。你的权限不足以直接访问核心用户数据。你是怎么拿到的?”
克莱因第一次露出了近似微笑的表情,但那个笑意没有延伸到眼睛。他的眼睛在日光灯下呈现出一种近乎浑浊的棕色,虹膜边缘有一圈极细的深褐色轮廓,像是被画上去的。
“你问这个问题,说明迪米特里还没有发现那个漏洞。那就让我来帮他节省一点时间。”他将上半身微微前倾,手铐链条在桌沿上发出一声轻响,“‘镜像测试’的前端加密确实做得不错,但它的后台情感标签系统有一个结构性缺陷——所有用户的匹配推荐结果在生成之后,会通过一个未加密的内部端口传输给第三方的广告投放算法。这个端口的访问日志不会被前端记录。也就是说,任何人只要掌握了这个端口的API密钥,就可以在不触发任何安全警报的情况下,实时查看任意两个用户之间的匹配度数值。我不能直接打开你的测评报告,但我可以反复查询你的‘卡吕普索’账号与任何其他账号之间的匹配度数值。通过交叉比对数千次查询结果,我就能反向推算出你的人格维度分布——就像你不需要直接看到一尊雕塑,只需要从足够多的角度观察它的影子,就能还原出它的形状。我花了六天完成了对卡吕普索的完整反向测绘,用到的查询次数是四千三百二十一次。迪米特里如果去核查‘镜像测试’的广告端口访问记录,会发现这些查询全部被标记为合法流量。不是因为他不够优秀,而是因为这个漏洞太基础了——基础到任何一个有经验的网络安全专家都会下意识地跳过不查。”
观察室里,迪米特里已经不在座位上了。他在克莱因说到“广告投放算法”时就已经拨通了技术部的加密电话,用压得极低但急促的语速命令对方立刻冻结“镜像测试”的所有API端口并导出最近一个月的访问日志。艾莲娜没有回头看单向玻璃,但她从耳机里听到迪米特里敲击键盘的声——那种密集到几乎没有间隙的敲击节奏,是一个人发现自己被一个早就落网的对手当面指出了技术盲区时才会有的反应。
“你在帮我们修补系统漏洞。”艾莲娜说,语气里没有嘲讽,只有一种克制的审慎,“为什么?”
“因为我已经不需要那些漏洞了。而且我说过——我今天来这里是为了交代一切。漏洞也是‘一切’的一部分。你可以把这理解为我的某种自我赎罪,但我不配用那个词。赎罪是觉得自己可以被原谅的人才做的事。我不需要被原谅。我只是不想让下一个俄耳甫斯钻同样的空子。这个系统是我参与设计的,它的每个缺口在哪里,我最清楚。”
艾莲娜将笔搁在笔录纸上。她注意到克莱因在说“这个系统是我参与设计的”时,语气没有任何自豪,也没有任何悔恨,只有一种技术人员陈述事实时的精准和平淡。这个人曾经在一家科技公司的用户体验部门工作过四年,负责情感交互界面的心理学适配设计。他亲手打造了“镜像测试”的情感分析引擎,然后用自己的造物来猎杀女人。这把刀是他自己铸的,每一个淬火细节他都了然于心。现在他把这把刀递给了警方,连同刀鞘和铸造图纸一起。
“我们回到时间线。”艾莲娜翻开面前的文件夹,里面是莉迪亚·莫罗和苏珊·瓦伦的尸检报告摘要,“莉迪亚在遇害前最后一次与你对话时,你对她说了什么?”
“我问她眼睛的颜色。”克莱因说这句话时,声音忽然变得比之前更轻,“她告诉我她的眼睛是橄榄绿的,在阳光直射下会变成浅褐。然后我问她——‘你的丈夫知道吗?’她说她丈夫在婚礼上盯着她的眼睛说过誓词,但那是他唯一一次认真看她的眼睛。结婚七年,一次。我说我想永远保存它们,她问怎么保存,我没有回答。因为在她问我‘怎么保存’的那一刻,她已经死了。后面的步骤只是形式。”
艾莲娜在心里默数了一下。这是克莱因在审讯中第一次使用“我”来叙述莉迪亚的遇害过程。在前面的对话里,他使用的全是“俄耳甫斯”或者“转化”——那是他在用第三人称和学术术语来隔离自己与罪行之间的距离。现在那个距离正在缓慢地缩短,像两扇正在合拢的门。
“苏珊呢?苏珊和你最后一次对话的内容是什么?”
“肖邦。”克莱因的手指在桌面上无意识地敲了两下,节奏是三连音——嗒嗒嗒,嗒嗒嗒,“她弹的是肖邦夜曲Op.48 No.1。那首曲子有一个著名的难点——中间段落的左手和声需要在极狭窄的音域内维持旋律连贯性,大多数演奏者会在这里放慢速度来换取准确性,但苏珊没有。她从头到尾保持了原速,左手和声的每一个音符都准确无误,而且她在最后一个变奏里偷偷地加了一个自己的装饰音——一个升F,只出现了一次,时长不到零点三秒。我告诉她我听到了那个升F,她在语音里忽然就哭了。她说她丈夫听了这场演出无数次,从来没有发现过那个装饰音。她说那个升F是她给自己留的签名,已经留了九年,没有人认领过。我说我认领。然后我给了她第二十一首夜曲的编号。”
“Op.72 No.1。那是最后一首。”艾莲娜的声音压得很低,“你在倒计时她的生命。”
“不是倒计时。是乐章。一场演奏会总有最后一首曲子。Op.72 No.1是肖邦死后出版的第一首遗作——一首从未在他生前被演奏过的夜曲。我跟她说,这首曲子是肖邦留给世界的告别礼。她想弹给我听。她最后一次弹肖邦,是在我的竖琴伴奏下。然后她喝了我给她的茶。药效发作的时候她的手还放在琴键上。我把她的手从琴键上拿起来的时候,左手的食指还保持着按下升F的姿势。我把那个姿势在画布上还原了——不是用画笔,是用她的手指蘸着她自己的血。但血干了以后变成了一种接近赭石色的暗红,太难看了,所以我又用灰色盖掉了。全部盖掉了。”
审讯室里安静了几秒钟。日光灯的嗡嗡声忽然变得异常刺耳。艾莲娜在笔录纸上写下“苏珊·瓦伦 左手指 升F 还原”几个字,笔迹平稳,没有任何颤抖。但她在写完“升F”之后下意识地点了一个休止符——那是乐谱中表示停顿的符号。她自己可能没有意识到这个动作,但单向玻璃后面的雷瓦看到了。老探长把嘴里叼的笔取下来,放在桌上,发出一声细微的咔嗒。
“你在灯塔上对维克多说——”艾莲娜翻到笔录的下一页,上面是她通过监控音频实时记录下的灯塔对话关键段落,“你说你‘不记得未婚妻虹膜本来的颜色’,你说你‘脑子里只剩下灰色’。这句话是——在你今晚全部供述当中——唯一一句让我不确定是不是策略性表达的话。我现在以审讯人员的身份问你:你真的不记得了吗?”
克莱因的手指停止了敲击。他把双手平摊在桌面上,掌心朝下,手指完全伸展。然后他把右手翻过来,掌心朝上。在他的生命线上有一道极细的旧伤疤,从虎口一直延伸到手腕根部。那道疤已经很淡了,淡到不仔细看就完全看不到,但一旦看到,就无法再忽视它的存在。
“这个问题是你今晚问过最重要的问题。”他说,目光从自己的掌心移到艾莲娜的眼睛上,“我从灯塔上走下去的时候就在想,你迟早会问。因为你是侧写师——侧写师能看出被刻意抹掉的细节,就像钢琴家能听出一个被压在最强音下面的错音。答案是——我记得。她的眼睛是深琥珀色的,在逆光下会变成一种介于蜂蜜和威士忌之间的颜色,左眼虹膜外缘有一个针尖大小的棕色斑点,右眼没有。七年来我每一天都记得。我画的所有灰色眼睛,底稿上标注的都是她眼睛的真实数据——虹膜直径、瞳孔间距、眼裂长度——所有这些数字都是她的。我用这些数据画了莉迪亚的眼睛,画了苏珊的眼睛,画了上百只挂在墙上的灰色虹膜,每一只的几何结构都是她的,没有一次用错过数据。但颜色——颜色我全部涂成了灰色。”
他停顿了一下,把两只手交叠在一起,手铐链条在指间缠了一圈。
“因为我不能忍受任何一双活着的眼睛和她有同样的颜色。灰色是我发明的一种防腐剂。把所有眼睛都变成灰色,就意味着她眼睛的颜色在这个世界上仍然是独一无二的。只不过这种独一无二的方式,是用七年的杀戮来维持。直到你丈夫在灯塔上问我有没有试过用别的颜色画活着的人——在他说出那句话之前,我真的从来没有想过这个问题。七年,四千三百二十一次查询,上百幅灰色虹膜,两个死去的女人,一个正在调配的第三双眼睛。而他只用了一句话,就让我发现我用了一个极其复杂的系统——情感算法、人格匹配、反向测绘——来证明一件简单得可笑的事:我从头到尾都知道她的眼睛是什么颜色。我只是不允许自己承认我记得。”
艾莲娜把笔放在笔录纸旁边,完成了最后一个句号。她在心里做了一个快速的评估——克莱因在灯塔上经历了某种关键性的心理转折,这种转折的本质不是悔罪,也不是对法律的恐惧,而是一个以精确为信仰的人发现自己的整个信仰体系建立在了一个被自己刻意忽略的事实之上。维克多用一句外行人的话击穿了四千三百二十一次查询构建起来的精密防线,不是因为那句话有多高明,而是因为它太简单了,简单到克莱因花了七年绕了一个巨大的逻辑迷宫,最后发现出口就在自己身后。
“你可以继续说。”艾莲娜说,“关于你的未婚妻。今天是第一次——你愿意在公开记录里谈她。如果你想继续,我在听。”
克莱因将后脑勺靠在椅背上,闭上眼睛。日光灯透过他的眼皮映出细微的血管纹路,像一张被压平的枯叶上的脉络。他沉默了很长时间,长到观察室里的雷瓦开始看手表,长到迪米特里以为他可能睡着了或者陷入了某种解离状态。但他没有。他的眼皮一直在轻微地颤动,那是一个人正在进行高强度内部对话的生理信号。
终于他开口,声音比之前任何一次都更加干涩,像一个在沙漠里走了太久的人最后一次挤出喉咙里仅存的唾液。
“她叫艾莉西亚。艾莉西亚·莫雷诺。美术学院雕塑系。她的手比我巧一百倍——我用画笔画眼睛,她能用一把钝刀在大理石上刻出睫毛的弧线。我们认识的时候她正在做一个系列,主题是‘被遗忘的感官’。第一件作品是一只耳朵,大理石的,等比例放大的人类右耳,每一个耳廓的卷曲角度都精确到毫米。第二件是鼻子。她说她想用五件雕塑做完五种感官,最后一件是眼睛。但她没有做完眼睛,因为在做到第四件——触觉——的时候,她在‘幻镜’上认识了一个已婚男人。后面的故事我讲过了。她在防波堤上跳下去之前,把做了一半的眼睛雕塑放在我公寓门口。那只眼睛不是大理石的,是石膏的。她没有做完,因为石膏太软,刻不出虹膜的细节。所以我替她刻。我用七年时间,在画布上,用灰色的颜料,一双一双地刻那些她来不及刻完的眼睛。”
审讯室里再次陷入沉默。艾莲娜看着克莱因闭着的眼睛,看着他眼皮下那些仍在颤动的血管。她在心里将那些刚刚获得的碎片拼在一起——艾莉西亚·莫雷诺、石膏眼睛、防波堤、灰色虹膜、七年的杀戮——然后她看到了一个她之前从未在犯罪侧写中真正理解过的结构:克莱因不是在杀死那些女人,他是在杀死七年前那个没能完成的眼睛雕塑。每一次他涂灰一个虹膜,都是在完成一次艾莉西亚没有完成的创作。他的未婚妻留下了一件未完成的作品,他在用生命来完成它。
“你需要在庭审时说出这一切。”艾莲娜说,“不是作为减刑的筹码,不是作为博取同情的素材——是作为被记录在案的、真实的心理过程。你欠莉迪亚的丈夫一个解释,欠苏珊的丈夫一个解释。他们未必能理解,但他们有权听到。”
克莱因睁开眼睛。他的瞳孔在日光灯下收缩成两个极小的点,但目光是清醒的,甚至是过于清醒的,像一个在深水里闭气太久的人忽然浮出水面,被空气刺得睁不开眼。
“我还有一个条件。”他说,“不是条件——是请求。在我被移交到省立监狱之前,让我完成一件事。一件我在灯塔上答应你丈夫的事。”
艾莲娜看着他的眼睛。在那双深棕色的虹膜里,她第一次看到了不是灰色、不是黑色、也不是反光的东西。那是一种极其微弱的、琥珀色的暖调,从左眼虹膜的外缘向内渗透了不到半毫米,像是被压在层层灰色颜料下面的底色终于找到了一个针尖大小的出口。
“你要见维克多。”她说的不是疑问句。
“对。”约纳斯·克莱因将戴着手铐的双手平放在桌上,掌心朝下,像一个棋手在终局之后把所有棋子一一放平,“我要亲手还给你父亲的罗盘。不是以俄耳甫斯的名义,是以艾莉西亚·莫雷诺的未婚夫的名义,还给马蒂亚斯·瓦尔特的女儿。”
观察室里,迪米特里完成了对“镜像测试”广告端口的日志核查。他的脸色比日光灯管还要白,手指在键盘上停住,然后慢慢摘下眼镜,用衬衫下摆擦了擦镜片上的雾气。克莱因说的那个漏洞是真实存在的——四千三百二十一次查询,全部被系统标记为合法广告流量,没有一次触发安全警报。如果不是克莱因亲口说出来,这个漏洞可能至今仍在被其他潜在的捕食者使用。这意味着克莱因供述的信息已经被证实具有可操作的实质价值——但同时这也意味着,在过去至少三年的时间里,任何掌握了同样技术漏洞的人,都可能已经在同一套系统里做过了和克莱因同样的事。
迪米特里打开加密频道,声音压得极低,只对着艾莲娜的耳机说话。
“日志里有异常。不是克莱因的查询——他的四千三百二十一次我已经全部定位了。是另一个IP,使用的时间段和克莱因高度重叠,但使用了完全不同的加密协议。有人在克莱因追踪卡吕普索的同时,也在追踪同一个目标。两个猎人盯上了同一只猎物,而他们彼此不知道对方的存在。艾莲娜,这意味着——除了约纳斯·克莱因,至少还有一个人在这套系统里以你为目标进行过密集查询。不是模仿犯,不是追随者,时间线和克莱因平行。他可能仍然活跃。”
艾莲娜没有做出任何可见的反应,但她的右手食指在笔录纸边缘停顿了一个呼吸的时长,然后继续写下这行字——“克莱因供述广告端口漏洞,时间线与另一未知用户重叠。”她在句末划了一条向下的短竖线,意味着这一条需要后续跟进。
她抬起头,对克莱因露出一个平静而克制的表情,合上了笔录文件夹。
“你的请求我会转达给维克多。在移交监狱之前,你有一次会面机会。但在此之前,我们需要你提供关于‘镜像测试’广告端口漏洞的完整技术细节,包括你使用的API密钥、查询脚本、数据存储位置。迪米特里会全程协助你。不是审讯——是技术交接。你刚才说你不想让下一个俄耳甫斯钻同样的空子。现在就是你证明这句话的机会。”
克莱因微微点了一下头,幅度极小,但足够清晰。他把戴着手铐的双手从桌面上抬起来,十指交叉握在一起,像一个技术人员在开始一项新的工程之前做的最后一个准备动作。
“让迪米特里进来。他需要至少三个小时——这个漏洞的根在数据层的结构设计上,不是修补一个端口就能解决的。要彻底堵死,需要重写整个情感匹配数据的传输协议。我的API密钥已经被你们冻结了,但另一个人的没有被冻结。如果他在这个窗口期内发现我已经落网——他一定会加速。你们的时间可能比你们以为的更少。至于那个人是谁,我不知道,但我有一个猜测。我猜他和我一样,看到那份测评报告的第一眼就再也移不开眼睛。”
他把目光从艾莲娜身上移开,落在单向玻璃上,仿佛能透过玻璃看到观察室里的每一个人。
“你们最好查一下‘镜像测试’上线以来,有多少用户的匹配报告被密集查询过。不是像我这样针对单个目标做反向测绘——我说的是更粗暴的方式,更不讲究技术含量的。一个不懂得API漏洞的人也能做到的方式。比如——直接在用户端反复注册新账号,用穷举法测试与同一个目标的匹配度。这种方式不会触发任何安全警报,因为它在系统看来只是正常的用户匹配行为。如果你发现有人用成百上千个假账号反复匹配同一个目标——你们就找到另一个人了。”


暂无评论,来抢沙发吧!