倒计时跳到了三分零七秒。
艾伦盯着屏幕上那行被注释掉的代码——“// 已禁用。修改日期:两年前。修改人:EN。”他试图让自己的大脑保持运转,但德里克发来的那条消息像一块石头堵在他的思维河道里。索菲亚·瓦尔加斯的办公室IP。加密指令。定期发送。如果艾琳说的是真的——如果她和索菲亚每年只通一次电话,如果索菲亚对论坛的运行毫不知情——那么那些加密指令是什么?
“你在想德里克刚才给你发的那条消息。”艾琳没有转头,手指继续在键盘上敲打。她的声音恢复了那种冷硬的平稳,但艾伦注意到她敲键盘的节奏比之前快了一点点。不是紧张,是某种更微妙的东西——像是一个人在回答一个她早就预料到会被问到的问题。
“你知道他查到了索菲亚的IP。”艾伦说。
“我知道他会查。他是一个有能力的安全工程师,而索菲亚的节点没有刻意隐藏。如果他不查,我反而会失望。”
艾伦转过身,正对着艾琳的侧脸。“那你打算解释吗?”
艾琳的手指停了一下。然后她转过身,正对着艾伦。屏幕的光在她脸上闪烁,那些冷白色的像素让她的瞳孔看起来像两颗被抛光过的灰色玻璃珠。
“索菲亚·瓦尔加斯不是你以为的那种人。”艾琳说,每个字都说得极其清楚,像在宣判之前朗读最后一段证词。“她告诉过你,莉娜在麻省理工的时候就已经搭建了以太深渊论坛的最初架构。但她没有告诉你,那个架构的底层代码不是莉娜一个人写的。索菲亚是共同开发者。”
艾伦感到车厢里的空气骤然变得稀薄。
“索菲亚告诉我的是——”
“她告诉你的是你能接受的版本。”艾琳打断了他。“一个痛失挚友的大学讲师,一个在体制外无助地寻求真相的普通人,一个把证据交给你时眼眶发红的女人。这些都不是假的。但她没有告诉你的是,在莉娜死后的这两年,她从来没有停止过以太深渊的运营。”
艾伦站了起来,头顶几乎碰到车厢顶部。“你在说谎。”
“我没有。”艾琳的声音平静得像一潭死水。“你刚才问她和我现在是什么关系。我没回答。不是因为我不想回答,而是因为答案太复杂。索菲亚是我的搭档,也是我的上级。以太深渊论坛的日常运营、用户招募、情报汇总——这些工作是她做的。她负责把人带进来,我负责把那些人变成可以协同工作的网络。莉娜死后,她找到我,告诉我莉娜留下了什么。她说我们不能让莉娜的死毫无意义。她说我们必须继续,直到真相被公开,直到每一个参与掩盖真相的人都付出代价。”
艾伦慢慢坐下来,后背靠上冰凉的厢式货车壁板。他的脑海里高速回放着两天前在卡斯特城市大学图书馆东南角那个小阅览室里的一切。索菲亚那件墨绿色毛衣的袖口褶皱。她说到莉娜时眼眶里强忍的泪水。她推过U盘时指尖轻微的颤抖。所有那些细节——他以为那是悲伤和信任,现在回想起来,每一帧都可以被重新解读。
“她给我那个U盘的时候,”艾伦缓缓说,“她说零点九版本是莉娜留给她的。她说她找了我很久。她说只有我能让卡戎犹豫三秒。”
“那三秒不是为了让我犹豫。”艾琳说。“是为了让你插U盘。零点九版本的脚本确实有防御功能,但它真正的用途是一个特洛伊木马。一旦你在我的系统上运行它,它会反向渗透我的一零版本脚本,把固件覆写模块重新激活。”
艾伦的手伸进口袋,摸到了那个U盘冰冷的金属外壳。索菲亚给他的东西。他一直以为那是他的救命稻草。
“你怎么知道?”
“因为零点九版本和一点零版本共享同一套底层架构。当索菲亚把U盘交给你的时候,她已经知道我的修改。她只是不认同我的选择。她觉得莉娜写得对——仅仅公开证据是不够的。那些建起这个帝国的人不会因为一份媒体曝光或一条新闻热搜就垮掉。他们需要付出代价。整个城市需要看到那个代价。用黑暗告诉所有人光明有多重要。”
车厢里陷入了沉重的静默。倒计时跳到两分十五秒。
艾伦想起德里克在涅墨西斯公司办公室里对他说的那句话——“她要把你当成招牌挂出来。”德里克说的是卡戎。但现在看来,挂在招牌上的不只是艾伦,还有索菲亚·瓦尔加斯。她站在幕后,用她的大学讲师身份做掩护,用她的学术资源做工具,在卡斯特城的日常运转中一寸一寸地注入她的复仇蓝图。
而他,艾伦·克劳斯,一个被格罗夫纳银行毁掉的前分析师,是她蓝图中最完美的棋子。
“你为什么不早告诉我?”艾伦的声音沙哑。
“因为我需要你自己选择。”艾琳说。“如果你在知道一切之前选择了站在我这边,索菲亚会知道你的选择不是你自己的。她需要看到你被她的版本说服,然后看到你在最后一刻转向我。她需要亲眼看到,即使是被系统伤害过的人,也不一定选择用毁灭来回应。那样她才会相信。”
艾伦闭上了眼睛。他想到索菲亚推过U盘时那故作平静的手势,想到她背后那些加密指令在网线中悄无声息的跳动。然后他想起艾琳第一次在厢式货车里看着他的眼睛说出那句“欢迎来到深渊”。两个人的目光在他脑海里叠在一起,冷得像同一片湖里的冰水。
“索菲亚现在在哪?”艾伦问。
“不知道。”艾琳说。“今晚的全系统控制窗口是我通知她的。她知道我们会在哪里。我没有阻止她,因为需要让她以为计划正按部就班。”
屏幕上突然弹出一个新窗口。不是代码界面,而是一个加密视频通话请求。发起者的ID是一串乱码,但艾伦认出了那个ID的格式——和以太深渊论坛的默认用户名生成算法完全一致。
艾琳的表情终于变了。不是恐惧,而是某种更深的东西——艾伦不知道如何形容它,像是棋手在棋盘对面发现了意料之外的一步棋。她盯着那个通话请求,手指悬在键盘上方,迟迟没有按下接受键。
“是她吗?”艾伦问。
艾琳没有回答。她按下了接受键。
视频画面亮起来。背景是一面书架,塞满了计算机科学期刊和会议论文集。艾伦认出了那面书架——两天前他刚在那间阅览室里见过同样的橡木书脊和褪色的分类标签。索菲亚·瓦尔加斯坐在镜头前,还穿着那件墨绿色毛衣,头发比见面时稍微松散,几缕碎发垂在额前。但她脸上的表情和上次完全不同。那不是悲伤,不是脆弱,甚至不是愤怒,而是一种被时间沉淀过的、沉静的狂热。
“艾伦,你在车里。”她的声音透过扬声器传出来,带着一丝轻微的延迟。“很好。你比我想象的更有勇气。”
“索菲亚。”艾伦说。他发现自己不知道该说什么。面对一个在几分钟前刚刚被揭穿身份的幕后操纵者,所有的质问和指责都忽然变得无力。
“我知道艾琳跟你说了什么。”索菲亚将身体微微前倾,手臂交叠在书桌上。“她说我是她的搭档,我是她的上级,我帮她运营论坛,我负责把人带进来。这些都是真的。但有一点她没有告诉你——这个计划的每一步,从一开始,都是我和莉娜一起设计的。”
“莉娜?”艾伦感到自己的声音变调了。
“莉娜没有死,艾伦。”
车厢里的所有声音都消失了。服务器风扇的转动声,显示器主板的电流声,车外远处城市底噪的嗡鸣声——所有这些都被这句话抽成真空。
“莉娜死在了她那间公寓里。”艾琳的声音从艾伦身边传来,锋利得像一把匕首。“她的尸体被警方记录在案,她的坟墓在卡斯特城公墓,她的死亡证明上写着意外事故。你在说什么。”
索菲亚没有回答。她只是缓缓从书桌旁站起来,转过笔记本电脑的屏幕。画面的边缘里出现了一个人影——一个坐在轮椅上的人,深棕色短发,浅灰色眼睛,骨瘦如柴。脸上有一道从眉骨延伸到颧骨的烧伤疤痕。
艾伦的呼吸停止了。
那个人影抬起手,屏幕光映在她手背上纵横交错的疤痕。她缓慢而吃力地打出一行字,在索菲亚笔记本电脑的屏幕上呈现出来。艾伦看到的是一行熟悉的字迹,和他两年前在银行里见过的某台显示器上那些便签笔迹一模一样——
“我没有死,艾琳。我只是不能说话。不能走路。花了两年时间学习用眼睛打字。我一直在看着你们。”
“她是被救出来的,”索菲亚的声音从那面书架前传来,平稳而低沉,“但肺部遭受永久性损伤。声带被高热空气烧毁。她靠呼吸机在前年冬天活了下来。哈特曼封锁了她的抢救信息。”
艾伦转头看向艾琳。她坐在那里一动不动,脸上第一次出现了他无法辨认的东西。不是震惊,不是悔恨,而是某种被彻底击穿了的空洞。
“那天晚上,九月十一日,”索菲亚的声音像从很远的地方传来,“莉娜公寓的煤气管道被远程打开,浓度被精确控制在一个不会引发爆炸但足以致命的数值。但她没有死。她被邻居发现时已经陷入深度昏迷,之后是长达三个月的ICU抢救。哈特曼通过银行渠道掩盖了她的存活信息,伪造了死亡证明,让她在法律意义上彻底消失。”
莉娜又打了一行字。“我知道你接管了论坛,艾琳。我知道你在按我的计划继续。但你必须停下手里的脚本。我知道你禁用了固件覆写模块。你需要把它重新打开。”
“重新打开。”艾琳重复了一遍,声音像从牙缝里挤出来的碎片。
“是的。一点零脚本的完整功能必须被执行。只有同时瘫痪全城的基础设施网络,哈特曼才会失去他的筹码,他背后的组织才会暴露在光天化日之下。否则那些数据永远不会有公正公开的机会。”索菲亚的手搭在莉娜的肩上,两人在屏幕那头对视了一眼。
“这是莉娜的选择,”索菲亚说,“她等了两年,才等到这一刻。”
艾琳站了起来。艾伦从侧面看到她眼角轻微地抽动,那是他在漫长一夜之后第一次看到她握鼠标的手明显发颤。倒计时跳到了一分零四秒。屏幕在闪烁,代码在流动,所有设备都在等待最后的权限激活。
“如果你不打开,”索菲亚的声音变轻了,“莉娜会远程激活原始版本。”
艾伦看着屏幕那头的莉娜——她的眼睛仍然定在镜头上,手指停在打字板上,等待艾琳的回应。那双灰色眼睛里的光芒他在暗网深处见过一次,在索菲亚的阅览室见过第二次。现在他知道了,那是一个在死亡边缘徘徊了两年的人发出的,最后一道不加遮掩的恳求。


暂无评论,来抢沙发吧!