年终奖到账1000元,我冷静打卡下班,当晚公司8亿核心数据遭到攻击,上级疯狂给我打了374个电话,我就不接怎么了!

年终奖到账1000元,我冷静打卡下班,当晚公司8亿核心数据遭到攻击,上级疯狂给我打了374个电话,我就不接怎么了!

年终奖到账1000元,我冷静打卡下班,当晚公司8亿核心数据遭到攻击,上级疯狂给我打了374个电话,我就不接怎么了!-有驾

第1章

年终考核结果公示的第三分钟,行政部那个连实习生都不正眼看的王姐把信封拍在我工位隔板上。

“赵东升,财务说了,今年绩效C,年终奖按系数折,一千整。你看一眼,没问题签个字。”

信封口没封,里面薄薄一张纸。我没拆,从抽屉里摸出签字笔,直接在确认栏写上名字。

王姐愣了一下。“你不看看?”

“数字没错。”我把笔帽扣回去,“一千嘛,你刚说了。”

她盯着我看了三秒,像是等我掀桌子或者摔笔。我没动。她把确认单抽走,高跟鞋转了个向,走了两步又退回来。“东升,今年公司情况你也知道,老板说了,等开春项目回款——”

“知道。”

她终于走了。

我低头看屏幕右下角的时间,十六点四十七分。离下班还有十三分钟。桌面右下角弹出一条飞书消息,来自技术部总监老周:“东升,你到我办公室来一趟。”

我叉掉窗口。没回。

五分钟后飞书又响:“东升,这边有个紧急情况需要你配合处理,看到回。”

继续没回。

十七点整。我把键盘推进抽屉,主机正常关机,椅子推回桌底。外套搭在胳膊上。走到电梯口的时候碰见隔壁组的杨楠,她手里抱着一摞报销单,看见我就笑了:“怎么今天这么准时?不像你啊。”

“年终奖下来了。”

“多少?”

“一千。”

她脸上的笑僵了大概零点五秒,然后迅速换成那种成年人之间的、既不想得罪人又不知道该说什么的尴尬表情。“这也太——”

“我先走了。”电梯门开了。

十七点零七分,我骑电瓶车离开园区。成都的冬天灰得像棉絮,风吹在脸上是钝刀子割肉那种冷。我住西三环外,老破小的六楼,没有电梯。爬楼的时候手机在裤兜里震了一下,没掏。开门,换鞋,把外套挂起来,去厨房烧水。客厅茶几上还放着上周去宜家买的那个灯泡,纸盒子都没拆。我决定今晚把它装上。

水烧到一半,手机响了。是老周的号码。

没接。

水开了,泡了杯茉莉花茶。手机在茶几上亮起来,屏幕上是一串未接来电的提示——老周打了三个,间隔分别是两分钟、一分钟、三十秒。最后那个是我泡茶的时候打进来的。紧接着是飞书消息的弹窗,老周发了四条:“东升,在吗?”“看到请立刻回复,紧急。”“你现在人在哪?”“公司出事了。”

我没看内容,把手机翻了个面。

客厅灯泡换好了,我开了开关试了一下,亮。光线从白炽灯罩里洒下来,照出一层浮灰。我拿抹布擦了一遍茶几,手机在抹布旁边震得嗡响,屏幕朝上。这一看就是打了十分钟了,屏幕上显示三十七通未接来电,老周占了一大半,剩下的来自行政部王姐、我直属领导张副总、还有几个陌生号码。

拿起手机的时候又来一通,屏幕显示“张总”。我按了静音。

我没接电话的原因是今晚七点半有一场电影,《星际穿越》重映。票是三天前买的,那会儿年终考核还没出结果。我换了一件干净的卫衣,摸出钥匙揣兜里,手机调成勿扰模式。出门前看了一眼屏幕,四十七个未接了。

电影院离我家两公里,走过去二十分钟。路上经过一家烧烤摊,香味勾了我一下,没停。检票进去的时候电影已经放完广告,灯刚灭。我找到座位坐下来,屏幕上库珀开着卡车追无人机,玉米地哗啦啦往后倒。我盯着那片玉米地看了很久,心里什么事都没想。

手机在裤兜里没再震了,大概是我出门前调的勿扰模式起了作用。但我能感觉到它在持续发烫,像揣着一块烧红的铁。

电影放到中间,库珀跟女儿道别那段,我后排有个姑娘在哭,抽抽嗒嗒的。我没哭。我看过这电影三遍。我只是在想,三年前我进这家公司的第一周,老周请我吃过一顿饭。在科华北路那个小郡肝串串,他跟我说:“东升,你这简历上写的AI大模型训练经验是实打实的?不是培训班包装出来的那种?”我说不是。他说那行,跟着我干,年终有你吃肉的时候。

第二年吃肉了。五万。第三年两万五。今年一千。

电影结束,字幕出来的时候我打开手机,屏幕上的未接来电数量停在一百六十三。微信消息八百多条,飞书更夸张,直接卡了五秒才刷出来。我没看消息列表,直接点开未接电话,从下往上划了一遍。老周七十八个,张副总四十一个,王姐十一个,剩下的全是公司座机和陌生号码。其中有个号码我认识,三年前入职的时候存过——公司大老板,沈明远的私人号。

从电影散场到走出商场大门,手机一直在弹消息。我把声音关了,屏幕在兜里一闪一闪的。

出商场右转,拐进一条小巷子,我找了家面馆坐下。老板问吃啥,我说二两杂酱,加个煎蛋。等面的功夫,我终于打开微信看了一眼。几百条消息里最上面是公司大群——那个平时只有行政发通知、所有人只会回“收到”的群,今晚忽然炸了。往前翻了几屏,大概拼凑出一个意思:下午六点十分左右,公司核心服务器被入侵,备份系统同时瘫痪,三年来所有客户数据、算法模型训练日志、还有那份据说价值八个亿的政府智慧城市项目标书全部被加密。对方留了个支付地址,要三千万美金。

群里最后一条来自老周,发的语音,时长五十九秒。我没点开。往下又翻了两条,看见行政王姐在群里@所有人:“请全体员工今晚保持通讯畅通,等待进一步通知。”然后隔了十二分钟补了一条:“赵东升,看到消息请立刻联系公司。”

面来了。我把手机扣在桌上,拿了筷子。

吃第三口的时候手机又亮了,这次是来电界面,不是微信消息。屏幕上跳出来一个名字——我存的时候备注是“沈明远-老板”,现在就那么亮着,在面馆油腻的桌面上一闪一闪。我数了一下,从下午到现下一共打了十四个。

我没接。

面吃完了,煎蛋也吃了。结账的时候老板找零,铜板在收银台铁盒里碰得叮当响。我把手机揣回兜里,推门出去。成都冬天的夜风从巷子口灌进来,街灯把地上的积水照成一片碎金。

走了三步,手机又亮了。这一次,是一条短信,来自那个我存了三年从来没打过一次的号码。

“赵东升,我是沈明远。公司现在的情况你应该已经知道了。我不管你今天为什么不接电话,也不管你对年终奖有什么情绪。现在回来,我们当面谈,什么条件都可以谈。你手里的东西——或者你知道的东西——对公司很重要。回个电话。”

我站在原地把这条短信看了两遍。

巷子尽头停着一辆黑色的埃尔法,没熄火,排气管吐出白气。车窗缓缓降下来,里面坐着一个人,看不清脸,但那个轮廓我认得——三年前入职面试的时候,坐在会议桌最中间的那个人,就是沈明远。他没下车,只是隔着二十米的距离朝我这边看,像是在确认是不是我。

手机又亮了。还是短信,还是同一个号码。

“车在巷口等你。今晚的事情,只有你能处理。”

我盯着那辆埃尔法的尾灯,在夜雾里烧成两团模糊的红。裤兜里的手机没有再震,但我能感觉到它的重量,沉甸甸地坠着口袋底部。

远处居民楼的灯一盏一盏亮起来,像某种沉默的回应。

我没朝巷口走。我转身,往反方向那条没有路灯的巷子深处走去。走出大概十步的时候,裤兜里手机最后亮了一次——不是电话,不是短信,是一条来自“未知号码”的推送通知:

“赵工,备份在下午五点四十五分被取走了。我们上当了。”

我站住了。

巷子深处有一盏坏了的路灯在闪,一下,两下,第三下彻底灭了。黑暗里我把手机屏幕按灭,站在原地没动。身后的巷口传来车门打开又关上的声音,然后是皮鞋踩在湿沥青地面上的脚步声,一下一下,不急不慢,朝我走过来。

手机屏幕在裤兜里又亮了一下。我没低头看,但余光扫到了那一行字——

“你确定,你想找的人真的是沈明远吗?”

脚步声停了。大概离我五步远。

“赵东升,”身后那个声音说,“你妈让我带句话。”

我攥着手机的手指猛地收紧。

路灯闪了一下,亮了。

身后的光重新亮起来,像有人把焦距拧了一下。

我转过身。

站在五步外的是个穿灰色大衣的男人,四十岁上下,脸很陌生。他手里没拿手机,也没拿文件,就那么站着,两手插在大衣兜里,肩膀微微耸着,像是被夜风吹冷了。

“你是谁?”

“你妈让我带句话,”他说,“她说,三年前那天晚上的事,不是你做的。她没来得及告诉你,就走了。”

我后槽牙咬了一下。

“沈明远让你来的?”

他没正面回答。“车还在巷口等你,但你已经走反了。赵东升,你现在走的这条路,往那边五百米就是菜市场,再过去就是二环高架,什么也没有。但你要是现在回头,车里的那个人——你可以当面问他,三年前你在ICU外面签的那张字条,到底是谁递给你的。”

我盯着他的眼睛。

“你那会儿刚毕业一年,在医院走廊里哭得手抖,连笔都握不住。有人在旁边递了一支笔,说‘签这儿就行,你妈等不了’。你签了。”他停了一下,“字条上的字不是你妈的笔迹,你后来回过神了,但没再追究。对吧。”

风从巷口灌进来,把路灯光搅得晃了晃。

“你调查我。”

“我只是来传话的。”他往后退了一步,“车里的那个人等你十分钟。你去了,有些事他会当面跟你说。你不去——那你今晚接不接电话,其实都一样。”

他转身走了。灰色大衣的下摆在路灯底下扫了一下地面,进了那辆埃尔法的后座。车门关上,没熄火,排气口还在吐白气。

我站在原地没动。

手机在这时候终于消停了,屏幕暗下去。我低头看了一眼电量,还有百分之三十一。从下午到现在,一百七十四个未接,八百多条消息,三条短信。所有的信息都被压缩在这五个小时里,像把一整年的重量压成薄薄一张纸。

我朝着来路走了回去。

巷口的埃尔法还停在原处,后车窗重新升起来了,看不见里面的人。我走到副驾那一侧,伸手拉车门,没锁。坐进去的时候座椅是凉的,皮革味道混着淡香水,空调吹出来的是暖风,把巷子里的冷意一点点剥掉。

司机是个年轻人,没看我,也没说话。后座隔断的玻璃黑着,看不见后面坐着谁。但那块玻璃忽然降下来一道缝,一只手从缝里伸出来——四十来岁男人的手,手指修长,指节上没有戒指——递过来一杯热茶。纸杯,保温盖,上面印着公司楼下的那家瑞幸。

“你从入职第一天就喝这个,”隔断后面传来沈明远的声音,“美式,不加糖。我一直记得。”

我没接。

“沈总,三年前在医院签字的那张纸——是您安排人递给我的,还是有人打着您的旗号递的?”

后座沉默了三秒。

隔断玻璃缓缓降到底。沈明远坐在后排,西装外套脱了搭在旁边,里面是一件深灰色的羊绒衫。他的脸比三年前老了些,眼窝深了,颧骨那块儿有凹陷。他手里没拿手机,两只手交握着搁在膝盖上,像一个刚做完手术的人在等复查结果。

“那张字条,”他说,“是我亲手写的。”

我手里的纸杯捏扁了,咖啡溅出来烫了虎口。

“但是,”他看着我,“我当时不知道你在医院。那天下午我在北京出差,接到一个电话,说有人用我的名义让人签了一份病危手术同意书。等我赶回来的时候,你已经走了。你妈——也没了。”

车子启动了,我没感觉到,只是窗外的巷口在慢慢往后挪。

“所以,这件事从头到尾,您也是被动的。”

沈明远没点头也没摇头。他从车门侧边的储物格里抽出一张纸,叠得很整齐,递过来。我接过打开,是一份手写传真件的扫描打印版,抬头是某家医院的字头,日期是三年前那天。内容是一份授权委托书的变更声明,上面写着,原定由赵东升签字确认的手术方案变更,须经委托人沈明远书面确认后方可执行。但传真件末尾的签名栏,盖着的章是沈明远的法人私章。

“这章是假的,”他说,“我回来之后做了鉴定。但时间已经过去了七十二小时,你妈的病历被归档之后,所有记录都变成‘家属签字同意’。你签了,字是你签的,谁也翻不了。”

我盯着那张纸上的章。三年前我签字的时候手抖得太厉害,根本没注意落款那栏盖的是章还是签字。事后我查过病历,档案里确实写的是“家属签字,方案变更经委托人确认”,我当时以为沈明远知道这事,只是没出面。我没问过他,因为那之后第二周我就入职了这家公司,他面试我的时候坐在会议桌正中间,问了我三个技术问题,就让我出去了。我们谁都没提过那天晚上。

“那今晚的事呢?”我把纸折起来放进口袋,“备份是我拿走的。您查到了。”

沈明远靠在座椅靠背上,闭了一下眼睛。“备份服务器的日志显示,下午五点四十五分,一个使用你工牌权限的账户调取了全量核心数据备份,并删除了操作记录。同时,你的工位电脑在五点五十分执行了一条远程脚本,内容我不懂,但结果是把主服务器的防火墙配置文件替换成了一个开源的测试版本。”

“我五点下班就走了。”

“我知道。”他睁开眼,“备份服务器在东三环另一个机房,你从公司骑电瓶车过去至少要四十分钟,数据下载量两百多个G,就算用专线也得一个多小时。你五点半到家,那会儿备份传输刚跑完百分之三十。不是你做的。”

“那为什么要给我打一百多个电话?”

沈明远把手伸进西装内袋,摸出一部手机——不是我见过的他任何一部常用机,是一个屏幕裂了道的旧款安卓。他划开锁屏,给我看通话记录。上面密密麻麻全是“赵东升”三个字,但每一个拨出时间都跟我手机上的未接来电对不上。

“有人用你的名义在内部通讯录里改了我的备注,”他说,“把我的号码替换成了一个虚拟号,又用虚拟号群发了一封邮件,说年终奖全员缩水、核心团队准备裁员。今天下午四点,有人用你的OA账号在全员群里发了条消息:‘今朝有酒今朝醉,明年的事明年说’。”

我回想了一下。四点那会儿我确实被王姐叫去签字,工位没锁屏。

“有人完整地复制了你的身份,”沈明远说,“从OA、邮箱、工牌权限到门禁记录,所有东西都在今天下午三点之后被人接管了。你下班打卡的那一刻,你的账号在整个公司的系统里做了一件我们到现在还没完全查清的事。核心服务器被入侵的源头,用的就是你的账号。”

车子拐上了二环高架,路灯连成一条流动的光带,从车窗上滑过去。

“您追出来,就为了告诉我这个?”

沈明远从座椅上直起身。“我是为了问你一件事。”

他盯着我的眼睛:“你今天下午拿到那一千块钱的时候,心里在想什么?”

我愣了一下。

“没想什么。”

“不对。”他摇头,“你在签字的时候,手没抖。王姐跟我描述得很清楚,你拿笔、签字、把确认单递回去,全程没有任何停顿。一个把公司核心模型从零搭建起来的人,拿了一千块年终奖,连眉头都没皱一下。你为什么没反应?”

车窗外面是万家灯火,高架桥底下有一辆洒水车在慢吞吞地开,水雾在路灯底下变成一层薄薄的虹。

“因为,”我说,“三个月前我就把简历投出去了。下周一到新公司报到,年薪翻三倍。这一千块,是我留在这儿最后一笔钱。我没什么好气的。”

沈明远看了我几秒,然后笑了一下。那种笑不像是满意,更像是确认了某件他早已猜到的事。

他重新靠回座椅里,手指在膝盖上敲了两下。

“你新公司叫什么?”

我没回答。

“对方给你的条件里,有一条是不是——要你完整携带我们智慧城市项目的技术栈过去?”

车子驶过一段隧道,光线暗下来,后视镜里只能看见两盏黄色的雾灯。

手机在口袋里又震了一下。我摸出来看,是那个未知号码发来的第二条消息。只有一行字:

“新公司名字是不是叫——万象科技?”

隧道的光从车顶一片一片地滑过去,像某种倒数的计时器。

我盯着屏幕上那四个字,后背贴紧了座椅靠背。

万象科技。这个名字我只跟一个人提过——上个月猎头给我打电话的时候,我坐在楼下瑞幸靠窗的位置说的,声音压得很低,但当时旁边那张桌子坐着一个戴鸭舌帽的男人,点了杯热美式,一口没喝就走了。

“看来你知道。”

沈明远没接话。他把那部旧安卓翻了个面,屏幕朝下搁在膝盖上。这个动作让我想起三年前面试那天,他也是这样把手机翻过去放在桌上,像在切断某种连接。

“万象科技的CTO叫陈远,”他说,“三年前从我们这儿走的。走的时候带走了第四版算法的半成品和七十三个客户的初步意向合同。我们没追究,签了竞业协议,赔了三个月工资,就算结了。但他出去之后,做的第一件事就是把协议作废,换了家公司主体重新注册,然后拿着你那套新模型在政府那边报了价。上周智慧城市的第二轮评审,万象科技的方案得分比我们高了零点八。”

“那不是我给的,”我说,“我的新模型还在本地跑测试,没上线过。”

“我知道。”沈明远把手伸过来,在隔断的边缘按了一下,一块隐藏的储物格弹开,从里面取出一台笔记本电脑。他打开盖子,屏幕上是一份网络流量监控的截图,时间戳是今天下午四点二十三分。截图显示,公司主服务器在某一个瞬间向外网某IP上传了一个压缩包,大小八十四兆,包名是“model_v7.3_weights.tar.gz”。

七点三。这是我上周跑出来的最新版本,还没做最终验证,只存在我的本地硬盘里。

“下午四点二十三分,”沈明远说,“你的工位电脑在没人操作的状态下启动了一次SSH连接,把七点三的权重文件打包上传到了境外服务器转了两层,最后落进万象科技的私有仓库。防火墙日志删得干净,但传输队列在交换机上留了记录,我们今晚上才翻出来。”

我伸手把屏幕转过来对着自己,仔细看那行时间戳。四点二十三分。那个时候我在行政部签字领钱,工位锁屏了,但我的电脑没关。

“您说有人完整复制了我的身份。”

“不止是复制。”沈明远把电脑收回去,合上盖子,“今天下午三点到六点,你这个人同时在三个地方出现——你的工位、备份机房、还有飞书消息。但你看电影那段时间,这些活动全部停止了。攻击者停了两个小时,然后在你离场之后,又用一个虚拟账号从你手机号段发了一条指令,把勒索信留在主服务器上。”

“所以您一开始就判断不是我做的。”

“我不判断,”他说,“我只等你自己回来。”

车子从高架桥上转下来,拐进了一条我很熟悉的街——科华北路。路右边那家小郡肝串串还亮着灯,门口排队的小椅子摆了一排,热气从玻璃门缝里往外冒。老周请我吃饭那回,我们坐的是靠窗第二桌。

沈明远顺着我的视线看了一眼窗外。“老周今天下午在办公室待到八点,飞书给你发了六十多条消息,电话打了七十八个。他不是在催你,他是在用一个公开的、所有人都看得见的姿态联系你。因为他知道你的账号被人控制了,他不确定手机那头是谁。”

“他为什么不用别的途径通知我?”

“因为他不敢。”沈明远把车窗按下来一条缝,冷空气灌进来,“控制你账号的那个人,今天下午用一种很聪明的方式制造了一个信息茧房。公司所有人看到的‘赵东升’都在正常发言、正常收发邮件、正常登录系统,只有老周在傍晚六点发现了一个反常——备份服务器的操作日志里有一条记录,用的密钥是你三个月前换掉的那一把。”

我眯起眼。“他注意到了那条密钥?”

“他注意到了。因为三个月前你换密钥那天,是他帮你做的权限迁移。你换掉的那把旧密钥按流程该销毁了,但今天下午它忽然被用来调取了备份数据。老周知道这把旧密钥只有两个人存过副本——你和他。他没留,那就只剩你。但你不可能会用一把已经作废的密钥去做操作记录里的事。所以他立刻反应过来,有人在冒充你。”

车停在了一个红绿灯路口。旁边的公交站台上有个姑娘在吃烤红薯,热气在路灯底下白乎乎的。

“所以老周打那么多电话,”我说,“是在提醒我,有人在用我的旧身份搞事。”

“他在赌你今晚会开手机。”

我没说话。对面那辆货车亮着远光晃过去,我看着那束光从沈明远的侧脸上划过,在他的颧骨上断成两截。

“那个人查到了万象科技,顺着猎头那条线摸到了您?”

沈明远摇了摇头。“万象科技这个名字,不是我查出来的。今天下午五点,公司内部邮件系统收到一封匿名信,发件人显示是‘一个关心公司的人’。信里附了一张截图,是你跟万象科技HR的微信聊天记录,时间和内容都对得上,连表情包都还原了。发件人建议沈总‘查一查赵东升最近跟谁走得近’。”

“然后您就给我打电话了。”

“我给你打电话的时候,备份还没丢。”他说,“我打电话是想告诉你,有人拿着你的聊天记录发到我邮箱了。但你的号码当时已经被篡改——我拨出去的那个号,接听端是一个模仿你声音的AI合成语音,说‘沈总,我知道了,我待会儿回您’。我打了几十遍,每遍都是同一句录音。”

我后颈出了一层薄汗。

所以今天下午,我在电影院安安静静看《星际穿越》的时候,沈明远在另一边听了一百多遍我声音的AI录音。他不知道那是不是我。他也不知道这件事跟我到底有没有关系。他唯一能做的,就是继续拨那个号码,让所有人都看见“沈总在疯狂联系赵东升”——这样,如果我是被人栽赃的,我会知道出事了;如果我真的做了那些事,这通电话也逼不了我现身。

我转头看他。“那您今晚追出来,是赌我会不会接那通真打过来的电话。”

沈明远没回答。他从后座暗格里摸出一包烟,抽出一根,叼在嘴里,没点。

“那个巷口,”他含含糊糊地说,“你妈的旧房子就在对面那条街。我让司机把车停在那儿,赌你会走那条路回家。”

我怔住了。

三年前我妈走后,老房子一直空着,我没卖也没租,每月交着物业费。偶尔加班太晚会过去睡一晚,沙发套都没换过。今晚我从电影院出来,下意识拐进那条巷子——不是回家的路,但确实是去老房子的方向。我甚至没意识到自己在往那边走。

“您怎么知道我会走那边?”

沈明远把烟从嘴里拿下来,攥在手心里捏弯了。

“因为今天是你妈的祭日。赵东升,你选在今天走那条路,不是为了躲谁。你只是跟往年一样,想回去看一看。”

车里的暖风忽然变得很重,重得我喘不上气。窗外那家串串店门口又出来一拨客人,说说笑笑的,热气在冷空气里升成一团白雾,很快散了。

我的手机又震了一下。这一次,我直接点开。

未知号码发来的第三条消息:

“沈总跟你聊得还愉快吗?那台电脑里的流量监控截图,是我故意留在交换机日志里的。你俩现在的对话,我这边一个字不落。下一个问题——你还记得你妈三年前住的那个病房,护士站的监控,是谁关掉的吗?”

我攥住手机,指节发白。

隔断上沈明远的电脑屏幕忽然亮了,弹出一条视频通话请求。来电显示的名字,是那个消失三年、从没被追究过竞业协议的陈远。

屏幕右下角有一行小字,是系统自动生成的来源定位。地址显示,万象科技的大楼,天台。

陈远在天台上举着手机,镜头对着脚底下的成都市夜景,万家灯火缩成一片细碎的光点。他把镜头翻转回来,对准自己的脸,笑了一下。

“赵工,备份我刚才已经拿到手了。但我想跟你当面聊聊——关于三年前那个晚上,护士站那段监控,你妈进手术室之前喊的那句话。你想知道吗?”

通话挂断了。

沈明远的电脑屏幕上,亮起一行倒计时,三十分钟。来自万象科技的天台。陈远的留言只有一句:

“带赵东升过来。来晚了,备份我就直接发给政府评审团了。”

车子在科华北路掉了个头,往万象科技那栋楼开过去。沈明远没问我去不去,我也没说要去,但司机显然提前拿到了指令,转弯的时候车速没减,轮胎碾过一处积水,水花溅到人行道上,一个打伞的路人往后退了两步。

我坐在副驾,盯着前挡风玻璃上的雨刷。成都冬天夜里很少下雨,今晚下的是那种细细的、绵密得不像雨的雨,落在玻璃上就糊成一片。雨刷每刮一次,万象科技那栋楼的外轮廓就清晰一次——在高新区那边,通体蓝光玻璃幕墙,顶上那个LOGO是个弧形的“W”,夜里亮着白灯,站在三环上都能看见。

“您跟他约过?”

“没有。”沈明远在后座重新点了根烟,这次抽了,“他把我电脑黑了,直接弹的视频。你要说技术,他搞这一套从来比我强。当初他走的时候,我留过他三次,他说‘沈总,您这个摊子太小了,我想要的不是一个技术总监的位置’。他想要的是整个盘子。”

“所以他今晚做的这一切,”我转过去看后座,“就是为了让我把技术栈带过去?他绕这么大一圈,黑了公司系统、冒用我的身份、拿我妈妈的旧事做饵——就是为了把我逼到天台上去?”

沈明远吐了一口烟,车窗开了一条细缝,烟被抽出去一半。“你觉得他缺你那套模型?万象科技前两轮融资拿了两个亿,招了三十个算法工程师,七点三版本他们自己也能复现,就是时间问题。他要的不是技术。他今晚要的是——你在所有人眼皮底下,当着我的面,走过去跟他站在一起。”

车上了三环,速度提起来,雨被风扯成一条一条的白线。

“他跟你到底什么仇?”

沈明远把烟摁灭在车门自带的烟灰缸里。“三年前他走的那天,带走了我们七十三个客户意向。其中有一个,是智慧城市项目最早的政府对接人。他拿着我的名片、我的签章复印件、还有一份盖了章的框架协议,去跟那个对接人吃了一顿饭。第二天,那七十三个客户里有十二个转签了万象科技,政府那边也开始质疑我们的履约能力。”

“那您没告他?”

“我告了。第一次开庭,他拿出了你在医院签的那张授权书复印件,说‘赵东升作为沈总亲自招进来的核心员工,亲笔签署了这份项目交接授权,说明沈总本人知情’。我当时在法庭上看见那张纸,就知道他是冲我来的——他不是为了抢客户,他为了让我在那个项目上彻底出局。那张纸上的日期,是你妈出事那天。他知道你那个时间不可能还有心思处理公司业务,但他赌法官会把这张纸当成你的真实授权。”

车窗外万象科技的大楼越来越近,蓝光玻璃在雨夜里像一块竖起来的冰。

“所以您三年前就知道他在拿我妈的事做文章。”

沈明远沉默了大概五秒。“我知道,但我没办法告诉你。那时候你刚入职,情绪不稳定,我如果跟你说‘有人在拿你妈的病危通知当商业筹码’,你可能会做出更冲动的事。我选择不让你知道,等你状态好了再处理。但陈远手里那份文件我没法推翻,法院判了公司赔偿万象科技三百多万,智慧城市项目从那时候起被搁置了一年。”

车子停在万象科技大楼的旋转门前面。雨比刚才大了,雨点砸在车顶上像撒了一把碎石子。我解开安全带,推开车门,冷风裹着雨丝扑到脸上。

沈明远在我身后下车,没撑伞。他穿着那件深灰色羊绒衫走过来,雨水把他头发打湿了贴在额头上。

“赵东升,”他在旋转门前站住,“天台上的事你自己决定。我不替你做选择。但有一点我要告诉你——三年前你签那张字条的时候,我确实在北京出差。我接到电话之后订了最近一班飞机回来,落地的时候你在医院走廊里靠着墙坐在地上,手里攥着笔,签字那一栏已经写了你的名字。我想跟你说话,但你抬头看见我的时候——你那眼神我这辈子忘不了。你不认识我。你当时那状态,不认识任何人。”

他停了一下。“所以这些年我一直没跟你解释过这件事。不是因为我不在乎,是因为我不知道怎么开口。”

旋转门的玻璃转了一圈,把我们让进去。大厅空旷,前台没有人,灯只开了头顶那一排射灯,光线白惨惨的,照得大理石地面像结了一层霜。

电梯口站了一个人。灰色大衣,巷子里传话那个男人。他看见我们进来,朝电梯方向偏了一下头。

“三十楼天台,陈总在等。电梯直接上,中间不停。”

我走进电梯,沈明远跟着进来。电梯门关上,楼层数字从1跳成2,速度很快。轿厢里的镜子映出两个人的脸——沈明远脸上雨水还没干,我自己的表情僵得像一块石头。

“他刚才在视频里说,我妈进手术室之前喊了一句话,”我盯着跳动的数字,“您知道是什么吗?”

沈明远没有立刻回答。电梯过了十五楼,他侧过头看我。

“我当时没在医院。”他说,“但护士站那段监控,我后来找人调出来看过。你妈被推进手术室之前,麻醉还没上,她看见走廊尽头的摄像头红灯亮了一下,喊了一句——‘那台电脑的线,别拔。’”

电梯到了三十楼。门开了。

天台的风从四面八方灌进来,没有遮拦,雨变成横着打的,像无数根细针往脸上扎。整个高新区的夜景铺在脚下,万家灯火被雨幕揉成一片模糊的金色光晕。

陈远站在天台边缘的护栏旁边,穿着一件黑色冲锋衣,拉链拉到顶,手插在兜里。他身后没有别人,空荡荡的天台上只有一盏应急灯亮着,把他的影子拉得很长。

他看见我和沈明远从消防通道走出来,笑了一下,那种笑很松弛,像老友重逢。

“赵工,欢迎。”他把右手从兜里抽出来,手里捏着一个U盘,举起来给我看,“七点三的权重,备份,都在这里面。你今晚拿回去,明天公司照常上班,一千块年终奖的事就算翻了篇。但在这之前,”他把U盘往兜里一揣,“你得回答我一个问题。”

风把他的冲锋衣吹得鼓起来,像一面黑色的旗。

“三年前你妈那句话——‘那台电脑的线,别拔’——你知道她说的电脑,是哪一台吗?”

天台上的应急灯忽然闪烁了一下。

陈远看着我,嘴角的笑容慢慢收拢。“她说的是你爸的电脑。你没跟你沈总提过吧——你爸三年前走的那个晚上,他写了一份举报材料,里面盖了章,有签名,有转账记录。那台电脑的硬盘,在他走之后被人拔走了。拔走的人是谁,你猜。”

天台上雨横着扫过来,像有根看不见的管子对着脸浇。我站在应急灯底下,看着陈远的冲锋衣被风掀起来又落下,听见自己牙齿咬得太紧发出的那点咯吱声。

我爸的事我从来没跟任何人提过。三年前那个夏天,他走的那天是周五,我加班到晚上十点回家,客厅灯亮着,茶几上放了一杯凉透的茶,电脑主机不见了,机箱连接线被齐根剪断,断口整齐得像是用钳子剪的。我妈坐在沙发上没开电视,看见我回来只说了一句——“你爸走了,带走了电脑。他说他写了一些东西,不安全。”

第二天她脑溢血进了ICU。

后来我整理遗物,翻遍整个家没找到那个主机。我妈也再没提过那台电脑的事,好像那东西从来没存在过。直到她进手术室之前,在昏迷边缘喊出“那台电脑的线,别拔”——我当时以为是麻醉前的胡话,没往心里去。我妈走之后我处理旧物,把那个空桌子和剪断的电源线一起扔了。我以为那些东西跟着我爸一起消失了。

“你爸那份举报材料,”陈远说,“写的是沈明远跟政府智慧城市项目评审团之间的一笔资金往来。具体金额我不说,你自己看你手机。”

我手机亮了。一条彩信,附件是一张扫描件,模糊得厉害,像是有人用老式扫描仪压着复印纸扫出来的。但上面的字我能看清——表格,日期,金额,收款方的银行账号后四位,还有我爸的签名。签名下面落款的时间,是他走的前三天。

“你爸把这份材料抄了一份,存在电脑硬盘里。他把原件交给了某个渠道——我到现在没查出来是谁——但复印件留在了机箱里。他走那天有人闯进你家,剪断机箱连接线,把整台主机搬走了。你妈看见了那个人的背影,但她没告诉你是谁。”

风把彩信图片吹得在屏幕上晃了一下,我拇指按着那张图放大,收款方的账号名显示了一行小字——我认得那个公司后缀,三年前沈明远自己名下的一家关联企业,在智慧城市项目招投标之前四个月注册的,项目中标之后三个月注销了。

我转头看沈明远。

他站在天台门口,雨水把羊绒衫浸成了深灰色,贴在身上,肩膀往下塌了一点。他没看我,看着陈远,脸上的表情像一个做数学题算到最后一步发现自己漏了负号的人——懊恼多过恐惧。

“那笔钱,”沈明远开口,声音被风割成碎片,“是项目前期的咨询费,走了我自己的公司账,但后来项目中标之后我退回去了。退款的凭证在财务档案里,你爸写举报材料的时候,他只看到了入账记录,没看到退款。他以为那是贿赂。”

陈远笑了一声,笑声被风刮走了一半。“退回去了?沈总,您退款是在你爸把材料递出去之后。递出去之前那笔钱在账上待了四个月,这四个月里评审团做了两轮内部讨论,最终把你排在第一。你跟我说这叫咨询费?”

“你很清楚那个项目的评分标准,”沈明远的声音忽然硬了,“我们的技术方案打了九十三分,第二名才八十一。我走那笔钱是为了提前垫付第三方测试机构的费用,项目合同签完之后对方才开了票,退款是流程问题,不是——”

“流程问题。”陈远打断了沈明远,语气平得像念判决书,“那你告诉我,今天下午公司备份服务器被入侵的源头,那份旧密钥是哪儿来的?我告诉你——是你IT部那个老周,三年前你让他销毁那把旧密钥,他没销毁。他留了一份副本存进了个人云盘。今天下午有人破解了他的云盘密码,取走了那把密钥,然后用它盗了你的备份。那个人不是我。”

沈明远脸上的雨水顺着下颌线滴下来,他眯起眼睛看着陈远,嘴唇动了一下,没说话。

“老周留那把旧密钥,是因为他当时怀疑你会在陈远走之后篡改技术文档把自己摘干净。”我开口了,声音比我自己预想的稳,“他把密钥留作备份,防的是你,不是陈远。但他没告诉过任何人,包括我。”

陈远点了点头。“没错。所以今晚这件事——从伪造你的账号到盗取备份、从勒索信到栽赃——所有步骤的源头,是那把旧密钥。我没有密钥,我也不需要。是有人拿到了老周的云盘密码,把密钥取出来给了第三方,再由第三方去执行入侵。那个人不是老周,因为老周今天下午一直在给你打电话,他用最笨的办法在提醒你。”

“是万象科技的人拿到了密码?”我问。

陈远摇头。“万象科技没有参与今天下午的入侵。我的目标是让你和沈明远站到这个天台上,把三年前的账当面算清。入侵公司的是另一个人,那个人拿走了备份,留了勒索信,然后用我的名义约你过来。我今晚出现在这儿,是因为我收到了同样的视频邀请——有人用你的声音合成了一段语音打给我,说‘陈总,沈明远同意在天台见面,带上备份’。我来的时候以为今晚是对质备份归属,到了才发现自己被当成了第三颗棋子。”

天台上应急灯又闪了一下。雨小了些,但风更大了,把楼顶的广告牌钢架吹得哐哐响。

“那个人是谁?”

陈远看着我,从冲锋衣内袋里掏出一部手机,点亮屏幕转过来给我看。屏幕上是一段监控录像的截图,画质渣得像是用座机拍的,但能辨认出一家医院的走廊——白色墙壁,绿色地胶,护士站的台面上放着一台老式CRT显示器。

截图中央,一个穿着黑色连帽衫的人站在护士站监控摄像头下方,仰头看着镜头,帽子压得很低,露出一截下巴。那下巴的轮廓我认得。

“老周今天下午给我打了七十八个电话,”我说,“但他今天下午的实际行踪,你们谁查过?”

沈明远脸色变了。他从口袋里掏出手机,翻了大概十秒,然后把屏幕转过来对着我——老周的飞书状态从下午六点开始显示“离线”,最后一次发送消息的IP地址定位,在城南。万象科技大楼西南方向三公里,那台存储备份服务器的机房所在的位置。

“老周在公司打出那七十八个电话,”沈明远说,“用的是飞书PC端。他本人根本不在公司。他下午两点就请假走了,理由是‘家里有事’。”

陈远把冲锋衣的拉链往下拉了一截,露出里面的高领毛衣。“七十八个电话,一段虚拟号的通话录音,一封匿名举报邮件——他一个人完成了我大半年前就想过但一直没实施的整套方案。他为什么要这么做?”

雨停了。天台上忽然安静下来,只有风声还在绕。

我的手机在这片安静中震了一下。低头看,未知号码发来的第四条消息,这次内容比之前都短:

“你妈进手术室之前喊的那句‘那台电脑的线,别拔’,她喊的对象不是医生,也不是你。她喊的是你爸当年交给她的那根网线,线头被她塞在沙发垫子底下。你卖沙发那天,拆开垫子应该能看到。我留了一个东西在下面。”

我攥着手机往消防通道跑,电梯门正好打开。沈明远在我身后喊了一句“赵东升”,我没回头。

电梯往下掉的时候,我看着楼层数字从三十骤降到一,脑子里只有那把旧沙发——三年前我妈走后我收拾屋子,把客厅里那张棕色皮沙发搬下楼扔了,扔之前拆了沙发垫子准备把布套拆下来洗,但垫子底下空空荡荡,什么也没有。

不对。

我卖沙发那天,是第二天。拆垫子是当天晚上十一点的事。如果真有东西夹在垫子缝隙里,中间隔了整整一夜。

电梯门开了。我冲过空旷的大堂,推旋转门出去,雨已经停了,路面湿漉漉的反着路灯的光。我拦了一辆出租车,报了我妈老房子的地址,司机从后视镜里看我一眼,没多问,踩了油门。

二十分钟后我爬上六楼,钥匙插进锁孔的时候手在抖。

门开了。客厅里一切照旧,那张棕色皮沙发当然已经不在了,但墙角堆着几个纸箱——是我当年收拾屋子没来得及处理的旧物。我蹲下去翻那个写着我妈笔迹的纸箱,最底下压着一个信封,牛皮纸的,封口用透明胶带粘了三圈。

拆开。

里面是一根黑色的网线,线头被剪断了,断口整齐,跟我爸主机那根电源线一样的剪法。网线下面压着一张纸条,是我妈的笔迹,字歪歪扭扭的,像是发病前最后一刻写的:

“东升,沙发垫子底下那根网线,你别动。那不是你爸的电脑线,是我自己接的。那台电脑被搬走之前,我把里面最重要的那份文件拷到了移动硬盘里,硬盘藏在你爸旧书架的夹层。网线是连着家里路由器的备用线,我剪断了怕被人找到信号。你要找的东西——在你爸书架上那本《资本论》里面。”

我猛地抬头,看向客厅角落那个落满灰的旧书架。最上面一层,几本泛黄的书斜靠着立在一起。中间那本《资本论》的厚度,明显比旁边的书多出一块。

我伸手把它抽出来。书壳中间夹着一片薄薄的移动硬盘,银色的,比银行卡还小一圈。硬盘表面贴着一张便利贴,上面写了一行字,字迹工整有力,是我爸的:

“原件给了纪委。副本留给你。什么时候你觉得自己能看懂这份材料了——打开看。看不懂,就永远别开。”

我握着硬盘站在书架前面,客厅的灯忽然闪了一下,像是电压不稳。手机又亮了。

未知号码最后一条消息:

“硬盘你可以开,也可以不开。但我要你记住一件事——今天下午公司服务器被入侵之前三分钟,老周给陈远发了一条微信,就一句话:‘天台见,带上你的U盘’。陈远带着那个空的U盘上天台的时候,他以为备份在自己手里。实际上备份早就被老周从服务器取走了,那个U盘是假的。”

我站在空荡荡的客厅里,手里的硬盘冰凉。

楼下传来一声急刹车,轮胎碾过湿路面的声音。然后是一阵脚步声,很重,很急,从一楼往上跑,每跑一层停一下,像是确认门牌号。

脚步声停在六楼门外。

有人敲了三下门。不轻不重。然后是一个我听了三年的声音,带着惯有的那种疲惫又温和的语调,从门板外面传进来:

“东升,是我。老周。你开门,有些事我得当面跟你说清楚。硬盘你拿出来了是吧?”

我没有动。门板上的漆皮在猫眼那圈范围里剥落了一小块,露出底下的木头色。我透过猫眼往外看——走廊灯坏了一盏,剩下那盏昏昏黄黄的,照出一个穿着黑色羽绒服的男人,帽子摘了,头发被雨打湿贴在额角上,手里什么都没拿。

是老周。不是那个在工位上敲键盘熬夜的老周,是个比我记忆里瘦了一圈的老周。颧骨那块的皮绷着,眼窝凹下去,像好几天没睡。

“东升,我知道你在里面。灯亮着。”他的声音隔着一扇门传进来,闷闷的,带着鼻音,“我不进去,你站门里听我说就行。你手里那个硬盘,我可以告诉你里面是什么——是我写的。那封举报材料,所有表格、账号、金额、时间线,你爸当年交上去的原件,是我帮他整理的。”

我把右手按在门锁上,没拧。

“三年前我还在沈明远那边做技术支撑,他让我销毁旧密钥,我没销毁,是因为他当时让我签了一份保密协议,内容是‘项目资料归档后不得保留任何副本’。我留了副本,因为我发现那份协议上的归档日期跟他实际归档的日期差了两个月——他把某些文件提前抽走了,补了一份删改版进去。我留密钥,是为了证明那些文件被改过。”

老周停了一下,走廊里传来他把重心从左脚换到右脚的声音。

“你爸来找我的时候,我没告诉他沈明远改文件的事。我只告诉他那个项目在财务上有笔钱对不上。他自己去查了关联公司,写了那份材料。他写完之后给我看过初稿,问我‘这些够不够举报’。我说够,但还缺一个关键时间线的证据。他第二天就找到了那个证据,存进电脑里,然后电脑被人搬走了。”

“是你搬的?”我的声音贴着门板挤出去。

老周那边沉默了几秒。“不是。电脑被搬走那天下午,我在西昌出差,酒店监控能证明。但你爸电脑被搬走的那个时间段,沈明远的司机在那条街上出现过。车停在你家楼下十五分钟,没熄火。后来我查了行车记录仪——沈明远本人那天下午在他的办公室开会,但车钥匙放在前台抽屉里,谁都能拿。”

“你今天下午入侵公司服务器,用那把旧密钥调走备份,然后往万象科技那边栽赃陈远——你跟我说这些是为了什么?自首?”

门外的老周笑了一声,那种笑没什么笑意,像气管被压了一下挤出来的气音。“我自首?东升,今天下午的操作日志里用了我的云盘密码,但那条密钥不是从我云盘里取出来的。那个云盘的登录IP在境外,我下午请假回家之后手机收到一条验证码短信,有个设备用我的密码登录了云盘。我没点确认,但对方绕过了二次验证——用的是你的工牌号做重置密保。”

我的手从门锁上滑下来。

“今天下午所有的操作——冒充你、盗取备份、发勒索信、约陈远上天台——用的都是我三年前留的那把密钥,但执行的人不是我。那些操作日志里有一个细节你没注意到:每一条记录的时间戳,都比实际时间慢了七分钟。因为服务器的系统时间是三年前那个版本,有人改了NTP对时服务器,让整个集群的时间全部回退了七分钟。”

“老周,”我打断他,“你现在在门外说这些,是想让我相信你的账号被人盗了,跟你没关系?”

“我不是来让你相信我的。”他的声音忽然低了,低到像是蹲在门缝边上说的,“我是来告诉你——你那个未知号码,今天晚上发你消息的那个人,IP地址你查过没有?”

我拿起手机,翻到未知号码的消息列表,点开详情。显示归属地是一串乱码,但往下拉了一行,有一条被折叠的元数据——发送设备的型号是iPhone 6,系统版本是iOS 12。三年前我妈住院那段时间,我用旧手机给她拍过病床上的照片,拍的设备就是iPhone 6。

我握着手机的手指开始发麻。

那个未知号码用的是我妈的旧手机。三年前她走后,那部手机跟着她的遗物一起被收进了纸箱,我亲手封的箱口,胶带缠了三圈。那个纸箱一直压在老房子阳台的角落里。

“你今晚收到的每一条消息,”老周说,“都是从你妈那部旧手机里发出来的。你阳台那个纸箱今天下午被人动过。你自己去看,封箱胶带右下角——是不是被刀片割断过,又重新粘了一条。”

我转身往阳台走。客厅到阳台四步,推拉门拉开的时候轨道卡了一下。阳台角落里那个纸箱横放在地上,跟三个月前我搬过来的位置一模一样,但封口那条胶带,右上角泛黄的那一段跟下面新贴的那一段对不上。我用指甲抠了一下接缝——旧胶带断了,新胶带是昨天或者今天才贴上去的,粘性还很新鲜。

箱盖掀开。里面杂七杂八地放着旧衣服、几本书、一个闹钟、一个装首饰的小铁盒,还有一部屏幕碎了的iPhone 6,静音键掉了半截,机身贴着磨砂膜。我把它拿起来,按了一下HOME键,屏幕亮了。锁屏壁纸是我妈用这张手机拍的最后一张照片——医院病房窗台上的绿萝。但照片已经被替换了,新的锁屏壁纸是今天下午拍的,角度是天花板吊灯,光线跟我现在站着的这间客厅一模一样。

有人今天下午坐在我家的沙发上,用这部手机拍了天花板的灯。

手机没有锁屏密码。我滑开桌面,只有一个应用图标亮着——短信APP,已发送列表里四条消息,接收人全是我的号码。发件时间对应今晚每一条。

我转过身,推拉门外的客厅灯光投到我脚边。老周的声音从门口飘进来:“你现在信了吗?做这些事的人,拿到了你妈遗留的手机、查到了你家的地址、破解了我三年前的云盘密码,并且在今天下午坐在这间客厅里,把短信一条一条发到你手机上。他什么都算到了,唯一没算到的是——那部手机里还剩百分之三的电。”

手机屏幕左上角跳出一行低电量提醒,然后自动熄灭了。我在黑暗里站了三秒。

门锁从外面响了一下。不是钥匙,是有人在用什么东西拨锁芯,声音很轻,一下一下的,像用铁丝试探弹子的角度。

我压低声音冲门口喊:“老周,你让开。”

外面传来一声闷响,然后是人体撞在墙上的声音。铁丝还在锁孔里转,但拨的人换了角度,更急,更狠。锁芯咔哒响了一声——开了。

门被推开一条缝,一只手从缝里伸进来,手指修长,指节上没戴戒指。跟今晚我在巷子里看到那只递茶的手,一模一样。

沈明远的司机。他站在门口,手里捏着一根细铁丝,脖子上挂着一张门禁卡,胸口别着一个微型摄像头,指示灯亮着红灯。他看了我一眼,然后目光越过我肩膀,看向阳台那个纸箱。

“硬盘,”他说,“交出来。”

司机站在门口,铁丝还攥在手里没扔。他身后老周靠墙半蹲着,捂着肚子,脸皱成一团。司机没看老周,目光从我肩膀上方穿过去,精准地落在我身后桌上那本《资本论》的位置。硬盘还夹在书页里,我没来得及收起来。

“沈总派你来的?”

司机没回答。他把铁丝揣进裤兜,从腰后摸出一个东西——不是刀,是一支黑色记号笔,笔帽拔了,露出粗头的那一端。他把笔尖朝上举着,像出示证件一样展示给我看。“我不用刀,不弄出血。你把硬盘给我,这笔就不写。”

“写什么?”

“你工牌号、住址、你妈的旧手机号、你爸的那份材料摘要。写在公司男厕所隔间门板背面、写字楼电梯广告框背面、你常去那家面馆的桌上。我能用这笔在三个小时内让整条街上的人都知道你赵东升手里有什么东西。我没威胁你,我是给你选择——要么东西给我,我写点别的;要么东西留你手里,我就写我看到的东西。”

我盯着那支记号笔,再看他脖子上那个微型摄像头。红灯还亮着,他在录。

“你录这些给谁看?”

“给我自己看。”他往前走了一步,皮鞋踩在玄关地垫上,“我三年前被沈明远雇来当司机,唯一的工作就是每天记他去哪儿、见谁、说什么。你妈出事那晚沈明远确实在北京出差,但那天下午三点,他打过一个电话给这家医院的护士长——号码我存在手机里存了三年。你要不要听录音?”

他从裤袋里掏出手机,点开一个音频文件。先是一阵电流声,然后是一个女人的声音,普通话带点川普口音:“沈总,您那个小朋友的妈状态不太好,签字的事儿您看——”

沈明远的声音,断断续续的,像是信号不好:“安排……人过去……别……拖到……”

录音就到这里断了。

“后面那段被删了,”司机说,“我当年录完存进云盘,三天后发现后半截没了。谁删的不知道,但前半截够不够说明问题?你妈那时候进了ICU,沈明远安排人去医院‘别拖到’——拖到什么?拖到你赶到?还是拖到你签字?”

我没说话。身后桌角抵着我的腰,硌得生疼。

“你今晚跟他在车里聊了一路,他告诉你那张字条是他亲手写的、他不知道你在医院、他回来的时候你已经签完了。他跟你说了三年前那场对话里面所有的‘他不知道’和‘他没做’。但他有没有告诉你——你妈的病危通知书送到他办公室的时候,他当时有没有选择早点告诉你?他有没有在你去医院的路上给你打过一个电话?”司机说完,把那支记号笔的笔帽重新扣回去,声音清脆。

老周在地板上换了个姿势,撑着墙站起来,嘴角有血迹。“你说得好像你是清白的,”老周的声音沙哑,“你脖子上那个摄像头,今天下午在机房外面拍的素材呢?备份服务器机房的监控记录显示下午四点到五点之间有人拿着万能卡刷卡进入,那个人身形跟你一模一样。”

司机侧过头看向老周。“是,”他说,语气平淡,“我进去的。但我进去的时候备份已经被取走了。有人比我早二十分钟用另一张万能卡刷开了机房门锁,那个人穿了跟我同款的外套、同色帽子。我进去的时候机柜指示灯还在闪,操作台上搁着一杯喝了一半的瑞幸——那种纸杯,全公司只有赵东升天天喝。”

我的后颈又开始冒汗了。

“你意思是今天下午有人冒充我去机房,又有人冒充你去机房——同一台服务器被两拨人分别摸过?”

“不止两拨,”司机说,“三拨。第一拨刷门禁进去的人,借用了你的工牌号和生物识别数据,伪造了指纹膜。他复制了备份,改了日志,走了。第二拨是我。第三拨是陈远的人,他带走了服务器上一个固件版本,留了勒索信。”

他在说谎或者隐瞒什么——我还没想通是哪部分。但我爸那本《资本论》里夹的硬盘还在我手里,这是今晚唯一没人碰过的东西。我往后退了半步,手背碰到书脊,手指顺势滑进去摸到那枚银色硬盘,攥进掌心。

“你们三个人,”我说,“一拨人拿到了备份,一拨人拿到了固件,一拨人什么也没拿到。现在都堵在我家门口,就为了这一块东西。告诉我,这东西里面到底装了什么,值得今晚三拨人分别演一出戏?”

老周和司机同时沉默了一瞬。

然后老周开口了。“我没看过里面的内容。你爸让我帮他整理材料的时候,他说过一句话——‘有些东西只能写进一张硬盘里,哪天我出了事,这东西会自己找到该去的人。’”

司机把手机收进口袋,记号笔也收了。他靠在门框上,两条胳膊交叉抱在胸前。“我不知道硬盘里是什么。我来拿硬盘,是因为沈明远让我来的。”

“沈明远让你来的?”

“他在车里跟你分开之后给我打了电话,原话是:‘去赵东升家,把他今晚从书架里翻出来的东西带走。’”

我盯着司机的眼睛。“他在车上没提过这本书。他全程没看到我拿什么硬盘。”

司机点头。“他是没看到。但他在你从老房子拿走那本书之前就已经知道了。你猜他怎么知道的?”他用下巴指了指我手里的手机,“你妈那部旧手机,今天下午被人动过之后,同步到iCloud了。沈明远的IT团队在傍晚七点做全盘监控的时候,扫描到一个异常iCloud账户登录,关联的机主是你妈。他看到了那个账户里的短信草稿箱——里面存了一封没发出去的邮件,收件人是纪委,附件是一份扫描件的文件名,跟那个硬盘里的内容一样。”

我脑子里有一根线忽然接上了。今天下午有人用我妈的旧手机拍天花板灯,拍完之后顺手打开了短信APP发了四条消息。但那个人没注意到,这部手机三年前的云备份里,还留着一封未发出的邮件草稿。那个草稿被沈明远的人看到了。

“所以今晚从巷子口堵我开始,”我说,“你们所有人都在围着一份邮件草稿转了快十个小时。”

司机直起身来,拍了拍外套上沾的墙灰。“赵东升,你现在手里那块硬盘,是三年前你爸用自己换来的东西。他那天晚上带走了主机,但把硬盘留在书里。你妈把网线剪断塞进沙发垫,是她怕有人通过路由追踪到硬盘位置。她进手术室前喊的那句话——‘那台电脑的线,别拔’——她是在提醒你,你爸留下的东西不在线路上,在书本夹层里。她喊完之后没多久就走了,你没听懂。三年了,你今晚才听懂。”

客厅的灯又闪了一下。走廊那头的窗户没关紧,风灌进来吹得门板磕了一下墙。

我攥着那块硬盘,手心出了一层汗。它凉得像一块刚凿下来的冰。

“如果我现在把硬盘交给你们其中一个人,”我说,“你们谁能保证,今晚这事儿就到此为止?”

老周看着司机。司机看着我。他们在等我自己选。

我拉开外套拉链,把硬盘揣进内侧口袋里,拉链重新拉好。然后我绕过门口的两个人,走进走廊,朝楼梯口走去。下了三级台阶,身后的门在风里慢慢带上了,锁芯自动弹回去咔嗒一声。

我在楼梯转角停下,掏出手机按了电源键。没电了,彻底黑屏。

从楼梯间的窗户望出去,楼下停了两辆黑车,一辆是我今晚坐过的那辆埃尔法,另一辆不认识,但车灯开着,发动机没熄。两辆车之间隔着五米左右的距离,像在划一个互相不让的边界。

我靠着楼梯扶手站了一会儿。口袋里那块硬盘隔着衣服贴在胸口,沉甸甸的,像一个无声的计时器。

楼下其中一辆车的车门开了,沈明远从后座跨出来,仰头朝六楼窗口看了一眼。他看到我站在楼梯间窗边的身影,没有挥手,也没有喊。他只是站在那里,两手垂在身侧,路灯把他的影子拉向车头方向。

他从外套口袋里摸出一样东西,举起来晃了晃。隔着五层楼的距离看不清是什么,但那东西的形状,像一根被剪断的网线。线头在路灯底下反着一点银光。

他低头看了一眼手里的网线,又抬头看了看我,然后把网线放回口袋,转身回了车里。埃尔法的车门关上,发动机声音低沉地轰了一下,没走。

楼梯间里安静得能听见自己心跳。我摸出口袋里那块硬盘,外壳冰凉。三年来它一直夹在那本《资本论》里,被遗忘,被灰尘盖住,没有人碰过。但今晚,从第一条消息弹出来的那一刻起,所有人都知道它在哪儿。

老周知道。陈远知道。司机知道。沈明远知道。

只有我不知道里面是什么。

0
全部评论 (0)
暂无评论