“晏哥,出大事了。”
手机屏幕亮起来的时候,我正在厨房煮面。水还没开,面条还硬邦邦地躺在案板上。
“系统权限全部锁死,核心库被动过,是……”
短信没读完,下一通电话就盖了过来。邵德宏。他的私人号,过去三百天里没在非工作时段打过一次。
我没接。
手机扣在料理台上,震得整个台面都在响。面条还等着下锅,水蒸气糊住了抽油烟机下面那小块墙皮,鼓着一个泡,像要掉不掉的样子。
震动停了。几秒钟后,又响。
我把火拧小,盯着那锅半温不温的水。泡面袋子撕到一半,口子扯歪了。
那天晚上手机一共响了三百六十次。
我没有接。
锅里的水终于滚了,面下进去,滚了两滚。我坐在厨房的小板凳上,端着不锈钢小锅吃面。手机还在震,屏幕亮得刺眼,像一条鱼在砧板上不停地跳。
我吃着面,一口一口。
窗外十七楼还亮着灯。
而我,第一次没有管它。
第一章 九百五十块
年终奖到账那会儿,我刚从机房出来。
手机在裤兜里震了一下,我以为是哪个群的拜年消息。掏出来一看,银行短信,四个数字:950.00。
我站在机房门口,工牌的带子还挂在脖子上,后背上黏着一层汗。机房空调坏了三天,报修单在行政那边压着,没人理。
950块。
我在心里又数了一遍。不是9500,是950。小数点前面只有三位数。
赵远从旁边工位探出头来,手机举得老高:“师父,我发年终奖了,一万二,晚上请你吃火锅呗。”他说完还笑,那笑是真心的,不是装的。就因为他是真心的,我才觉得胸口像被什么东西堵了一下。
“晚上有事。”我说。
“行吧行吧,那明天。”
我点点头,走回自己座位。椅子上还搭着昨晚熬夜用的毯子,灰色那条,边上起了球。
打开工资条。绩效系数,0.1。
我盯着那个数字看了很久。0.1。公司今年盈利,年会上邵德宏说“营收再创新高”,每人桌上都发了红酒和定制笔记本。红酒我没拿,放在前台,后来不知道被谁拎走了。
运营部的实习生路过,手机没熄屏,屏幕上也是银行短信,八千。她正跟人打电话,声音很轻,但机房这边很安静。
“八千八,我都没干满一年呢。”
我喝了口水。杯子是公司发的,上面印着“全速科技”四个字,logo磨掉了一半。
去年一整年,我休了四天。四天里有一天是发烧到四十度,被陈美玲按在家里不准出门。剩下的三天,是我妈从老家来看我,我带她去了趟医院。
剩下三百六十一天,我都在。
系统要崩了,我在。半夜有黑客打进来,我在。防火墙被误操作关了,我在。数据同步出问题了,我在。合作方验收系统,我在。新项目上线,我在。
他们不在的时候,我都在。
可0.1这个数字写在那里,就像在说:你的“在”不值钱。
我关掉工资条,打开工作日志,机械地把今天要交接的事项列好。写完后,我打开了一个空白文档。
光标在左上角闪。
手指停在键盘上,没打一个字。
手机又震了一下。陈美玲。
“晚上回来吃饭不?炖了山药排骨,给你留一碗。”
我回了四个字:“回来吃吧。”
然后我把手机塞回兜里,手指碰到钥匙,就那样无意识地摩挲起来。钥匙扣上还拴着高三那年老爸给我的小铜锁,锁芯早就锈死了,但一直没摘。
虎口处磨出了红印子,我才松手。
空白文档还开着。光标还在闪。
我开始打字。
没有标题,没有开头,只列了一串数字。去年全年我参与的重大项目,七十三次系统风险处置,四十七次凌晨紧急响应。写到第三行的时候,我停住了。
写这些做什么呢?
我把文档删掉,重新打开一个空白页。这次我打了一个字。
“我。”
然后又删掉了。
那天下午的阳光从窗户斜进来,落在键盘上。我盯着自己的手指,看了很久。这双手修过多少台服务器,清过多少次漏洞,写过多少个补丁。到头来,值九百五十块。
我笑了一下。
不是苦笑。就是笑了一下。
晚上六点,我准时关机。电脑屏幕黑下去的那一刻,坐在旁边的赵远愣了一下。
“师父,你今天不加班了?”
“不了。”
“那个——明天的权限文档你帮我看看呗。”
“你自己看吧。”我说。
赵远又愣了一下。我没看他,拿起外套,绕过他的工位,往电梯走。路上碰到林嘉怡,她刚从会议室出来,手里拿着杯咖啡,看见我,笑了一下。
“承泽,正好,跟你说一下年终奖的事。”
“你说。”
“公司今年……你也知道,大环境不好。核心岗要有点担当嘛。”她说话的时候眼睛没看我,在看手机屏幕,“明年,明年一定给补回来。”
“行。”我说。
我就说了这一个字。然后走进电梯,按下一楼。
电梯门关上之前,我看见林嘉怡站在原地,手还停在半空,像是想说什么又没来得及。
我没有再按开门键。
陈美玲做了山药排骨。汤很浓,肉炖得烂烂的,山药入口就化。我喝了两碗,然后帮她洗碗。
她靠在厨房门框上,五十多岁的人了,头发染得黑亮,鬓角那儿新长出来一小截白的。
“今天下班这么早。”
“以后都这么早。”
她没说话,过了好一会儿才“哦”了一声。
那天晚上我没有看值班群。以前我都是置顶的。现在也置顶,只是不点开。小红点从九点开始冒,到十点变成了九十九加。
我洗了澡,躺在床上。手机扣在床头柜上。
窗外的车流声一阵一阵的。我摸了摸虎口,有点疼。
想了想,打开手机,把公司的设置改了一下。
非工作时间,静音。
那是我入职以来,第一次改这个设置。
第二章 好员工
第二天我请了半天假。
也没什么事。就是不想那么早去公司。起床已经是九点,阳光透过窗帘缝照进来,在地板上拉成一条线。我在家煮了粥,蒸了两个包子。包子是陈美玲前天给我的,香菇肉馅,她包的。咬下去的时候汤水烫了舌头。
我把床单换了,之前那套在洗衣机里搅着。然后蹲在阳台上擦地。阳台不大,堆着几个纸箱子,里面是旧电脑配件和几盆半死不活的花。有一盆茉莉,去年夏天开过一回,后来忘了浇水,叶子全干了。我一直没扔。
擦到第二遍的时候,门敲了两下。
“承泽,排骨汤还喝不?中午给你热了送过来。”
陈美玲端着一个碗站在门口。围裙上沾着白面粉。
“陈阿姨,你别忙了,我等下自己随便弄点。”
“什么随便,你看看你瘦的。”
我把碗接过来。热乎乎的,汤面上浮着几颗油星。
“你那个工作,是不是又不顺心?”她问。
我没说话,拿抹布擦手。
她也没再问,只是说:“你这孩子,太不懂拒绝。”
下午去了公司。
林嘉怡又找我谈了一次。这次在会议室,门关着。她说话还是那套:公司也在平衡考虑,今年效益没达到预期,核心管理层都不容易,明年一定补回来。她说“我们都是一家人”的时候,邵德宏正好从门口路过,还冲我点了点头。
我看着林嘉怡,她今天口红色号很淡,有点像没睡好。说到“一家人”三个字的时候,她摸了一下自己的左手腕。表带勒得太紧了,留下一道红印。
“林姐,”我说,“绩效系数0.1,是我哪里做得不够吗?”
她终于抬头看我。只是一瞬间,又去看手机。
“不是,不是这个意思。公司现在……要建立更健康的容灾机制。你知道的,单个核心岗位太集中,对公司来说风险太大了。”
我懂了。
不是我不够好,是我太好。好到他们怕了。怕我走了系统没人会修,所以想用低到离谱的奖金,来提醒我:你别太拿自己当回事。
“行,我理解。”我说。
其实我只是没有时间了。
从会议室出来,赵远迎上来,脸上还是一副“师父最牛”的表情。
“师父,林总找你聊啥?是不是给你补发了?”
“没什么。”
“师父,我想跟你说个事。”他压低声音,“上次你让我看的权限文档,我看完了。我整理了一份学习笔记,发你了。你帮我看一眼呗。”
我看了他一眼。他眼睛里亮亮的,像每次跟我请教问题时一样。
“系统权限给你,你就要负责到底。”我说。
“那当然,师父你放心。”
那天下午,周天明带着外包团队来“对接学习”。七八个人,呼啦啦进了机房。周天明穿了一件领口泛黄的格子衬衫,腰上别着一大串钥匙,走起路来叮叮当当的。他站在机房门口,抬手拍了拍门框上的消防检查标签。
“这地方跟我当年在苏州做那个项目差不多嘛。”他说。
我站在他后面,没接话。
林嘉怡在一旁陪着笑:“周总,您给把把关,我们这边系统和您接触过的大厂可能有区别。”
“没事没事,什么系统没见过。”周天明摆摆手,“我们这套方案,是国际领先的。”
他带来的人在机房里翻系统文档,几个人围着一台显示器和地线槽指指点点。有个人想拆机柜侧面板,手都伸过去了,我出了声:“那个不能动。”
那手停住了,扭头看我。
“侧板后面有传感探头,拆了会触发报警。”
周天明点点头:“行,听这位小哥的。”
我没看他。我的眼睛一直盯着他腰间那串钥匙。其中一把上面挂着一个塑料牌,写着“备用——C区”。那钥匙,跟我公司机房的备用钥匙一模一样。
那天晚上我请了半天假没去值班。但事实上,我还是在四楼公共区域坐了一个小时。手里一杯便利店的咖啡,已经凉了。咖啡杯上“全速科技”的logo被我拇指抠得面目全非。
楼里的人渐渐走完了。赵远七点走,走前还朝我挥了挥手。周天明团队八点走,走的时候两个人在楼下抽烟,烟头扔在花坛边,明暗明暗地闪着。
我起身走到电梯前,抬头看了一眼楼层指示。17楼机房的灯还亮着。
我没有上去。
回到家,陈美玲又给我留了饭。她说今晚做了红烧鸡块,用砂锅炖了整整四十分钟。我吃的时候她还坐在旁边削苹果。
“明天我陪你去配个眼镜吧,你说那个旧眼镜腿老掉。”
“明天要上班。”
“下班去呗。”
“嗯。”
“你这孩子。”她削完苹果,皮在手里绕成一个圈,递给我。
我接过来咬了一口,甜里带一点酸。
那天晚上我洗了澡,没开手机。值班群的红点我看了一眼,没点。赵远私聊我发了个表情包,说“师父你说得对,权限太复杂了”。
我没回。
打开电脑,无聊地翻了会儿浏览器,然后点开了一个加密文件夹。里面存着这三年来的工作日志、系统的关键参数、几次重大事件的完整复盘。不是公司的,是我自己每天下班后,在备忘录里一条条记下来的。
这个文件夹我一直没让任何人看过。
那天傍晚,我把它重新加密了一遍。
密码是我的工号,倒过来,再加上陈美玲家猫的名字。
然后关了电脑。
第三章 下班时间
我开始准点下班了。
第一天,赵远看着我六点整关电脑,以为我中邪了。第二天,他开始有点不自在。到了第三天,他终于没忍住。
“师父,今晚系统有个小版本要更新,你不盯着吗?”
“更新你自己来。”
“可……我有点拿不准。”
“不是有外包团队吗?”我说,“找周天明。”
赵远张了张嘴,没再说话。
其实那个版本更新是我一周前就准备好的。所有的命令、回滚方案、紧急联系人列表,我都写好放在共享文档里了。谁去做,都不会出大问题。
但就是没有人认真看。
我走之前把那份文档的链接发到了部门群,说“照着这个来”。群里没人回。
电梯门关上的一瞬间,我听见赵远在身后喊:“师父,你教我的那些东西……”
后面的话被电梯门夹断了。
我没有回头。
那几天我开始清理电脑里的私人文件。工作群里的聊天记录、旧的排班表、去年团建的合影、公司内网上下载的各种“系统安全操作手册”,我一个个打开,看了一下,然后删掉。
动作很慢。每一个文件我都停几秒。
有个文件夹叫“年度总结”,里面有我连续三年的年终总结。打开最后一年的,结尾有一句话:本年度我共参与风险响应七十三次,均为第一时间到场处理。
我把文件夹也删了。
清空回收站的时候,电脑“咔嗒”一声,机身轻轻震了一下。
下午三点多,赵远给我发消息:“师父,我申请了核心权限,领导批了。以后我可以帮你分担了。”
我回了一个字:“好。”
然后把手机放在一边,继续整理工位。抽屉里有一张照片,是两年前部门聚餐的时候拍的。全部门挤在一起,我在最后边,被挡了半张脸。邵德宏在最前面,笑得很开。林嘉怡站在他旁边,比了个“V”。
我把照片背面朝上,放进碎纸机。
周天明这几天来得勤。几乎每天都带着人到机房,一会儿说要看网络拓扑,一会儿说要了解权限架构。林嘉怡给他们开了临时工牌,上面印着“系统升级专项组”。
有天中午我在茶水间泡面,听见周天明在外面打电话。
“没问题,包在我身上。我们这套方案,是国际领先的。这家公司的人不行,搞得太复杂,等我们接了手,马上理顺。”
我搅着面,没出声。
“那个搞技术的,天天加班,看着就轴。架构搞得那么复杂,故意给自己留后路呢吧。等我们全面接手,直接换成标准方案,谁都能维护。”
面泡好了,我端起来吃了一口。还是有点硬。
下午下班后,我坐公交去了新公司面试。
许岚在二十三楼等我。她没让我去会议室,直接带我到阳台上。风很大,她的短发被吹得乱糟糟的。
“你终于舍得来找我了。”
她说这句话的时候没看我,在点烟。火苗在风里跳来跳去,点了三次才点着。
“我准备好了。”我说。
“没有准备的人,不会来。说吧,想要多少?”
“你们看着给。”
她抽了一口,把烟夹在指间,转过头看我。“我等了你三年。你知不知道这三年里,你那个岗位的行情涨了多少?”
我没说话。
“你从来没投过简历。”她说。
“没有。”
“傻不傻。”
她抽完最后一口烟,把烟头按灭在阳台栏杆上。然后从手机里翻出一份文件,递给我看。薪资那一栏,数字是现在的三倍多。
我没有犹豫,点了头。
出来的时候天已经黑了。旧公司那栋楼在两条街外,17楼还亮着灯。
我看了几秒,然后转身走了。
晚上陈美玲煮了面。面里加了青菜和荷包蛋。她坐在对面,一边吃一边跟我说小区里的事。说三楼的张伯又跟物业吵架了,说后门那个水果摊老板跑路了还欠她十块钱,说楼下那只橘猫又生了一窝崽。
“四只,三只橘的一只白的。你要不要去看看?”
“有空去看。”
“就最近,小猫长得可快了。”
我低头吃面,心里想,有些事情不能等。
那天晚上我把自己关在房间里,打开那个加密文件夹,又加了一层锁。文件名改成“十七楼”。
然后我把手机里跟公司有关的所有联系人,都设置了“不提醒”。
做完这些,我躺在床上,看着天花板。心里没有快意,也没有愤恨。只有一种很安静的清楚——像一个跑了好多年的人,终于在某条路上停下来,发现原来自己一直在绕圈子。
临睡前,赵远发来一条消息:“师父,今晚更新有点小问题,我已经解决了。不会让你失望的。”
我看了两秒,锁屏,睡觉。
第四章 十七楼还亮着灯
那天晚上特别安静。
陈美玲来敲过一次门,说她包了馄饨,让我明天早上去吃。我应了一声,没开门。
馄饨的香味从门缝里钻进来,混着葱油和一点点虾皮味。她搬回这栋楼两年了,我吃惯了她做的饭。有时候下班晚,她就给我留一碗在门口。我端回屋里,一边吃一边发呆,面汤凉了也不嫌弃。
那天手机安静得不像话。
以前哪是这个样子。以前半夜两三点,电话一响,我闭着眼从被子里爬起来,摸着墙去接。有时候是服务器告警,有时候是赵远打来的,“师父,这个报错啥意思”,有时候是邵德宏亲自打,语气客客气气,“承泽,不好意思吵到你了,这个事有点急”。
那晚一个都没有。
外面有风,把谁家阳台上的衣服吹得啪啦啪啦响。我在楼下站了一会儿,陈美玲还没睡,她家客厅的灯亮着,窗户半开着,电视机里传来“今夜有雨”。
我抬头看了看天。没有星星,也没有雨。云很厚,把月亮捂得严严实实。
就是那时,手机屏幕亮了。
第一通电话,备注是“林嘉怡”。
我没接。
几秒钟后,第二通。还是林嘉怡。
然后第三通。赵远。
第四通。赵远。
第五通。一个陌生号码。第六通。邵德宏。第七通。林嘉怡。第八通。赵远。
手机开始不间断地震动,一通接一通,像有人在那边发了疯一样地按重拨键。我看着屏幕上来电名字跳来跳去,赵远、林嘉怡、邵德宏、周天明、机房座机、赵远、林嘉怡、邵德宏、邵德宏、邵德宏……
我按了静音。
手机躺在桌上,嗡的一声接着一声,像一只困在玻璃瓶里的马蜂。
我给自己倒了一杯水。温水,喝下去没什么感觉。
手机震动从无声变成了暗光闪烁。屏幕每亮一下,整个客厅就白一下。我坐在那里看着它亮,看着它暗。亮,暗,亮,暗。像在打摩斯电码。
陈美玲家的灯也还亮着。我听见她隐约咳嗽了一声。
我伸出手,指尖悬在关机键上方。
就在那一瞬间,一条短信弹了出来。发件人赵远,屏幕只显示半截——
“晏哥,出大事了。系统权限全部锁死,核心库被动过,是……”
后面的字被下一通来电覆盖了。来电显示:邵德宏。他的私人手机号。去年他存到我通讯录里的,当时他说:“二十四小时都找得到我。”我还存了。现在终于用上了。为了这个夜晚。
我盯着那个号码,手指没有动。
手机还在震。邵德宏。邵德宏。邵德宏。林嘉怡。赵远。周天明。机房座机。邵德宏。
窗外的风还在吹,云散了又聚,楼下的梧桐树在路灯底下晃成一片黑影子。
我把手机翻过来扣在桌上。
轻轻一声,世界安静了。
只有屏幕的光从缝隙里漏出来,一明一灭,像十七楼机房那排永远不会熄灭的指示灯。
我坐在黑暗里,慢慢地,把钥匙在虎口处磨了一下又一下。直到那里传来一点刺痛的灼热感。
我的呼吸很稳。
但我的心跳不是。
它快得像是一场蓄谋已久的等待,终于来了。
第五章 三百六十通未接来电
那天晚上我没有睡。
或者说,我睡过了——中间醒过来好几次,每次都听见手机在另一个房间震。后来我干脆不睡了,把手机拿过来,反扣着,翻开未接来电记录。
从晚上十一点到早上五点,整整三百六十通。
赵远打了七十八次。林嘉怡打了五十二次。周天明打了三十一次。机房座机打了四十五次。邵德宏打了一百零三次。还有几十个陌生号码,估计是公司其他人的手机。
短信十七条,微信消息几十条。
最早的一条是赵远的:“师父,出事了,我把权限锁死了,核心库被动过,你快回来。”
后来变成林嘉怡:“承泽,你接一下电话好不好?公司真的有急事。”
再后来是邵德宏:“承泽,我是邵总,接电话。无论你什么条件,我们都可以谈。”
最后一条是周天明:“兄弟,都是我的错,你回来帮我看看,我给你磕头都成。”
我把手机放在一边,去厨房煮了碗面。面里加了个鸡蛋,又倒了一点酱油。吃第一口的时候,天大亮,外面有鸟叫。
七点二十分,我打开电脑,远程连上公司系统。
只看了一眼,我就明白了。
周天明团队昨晚提权之后,试图直接迁移核心数据库。他们的方案粗暴、鲁莽、错漏百出。在执行到第三阶段的时候,触发了三年前我部署的一套隐蔽防篡改协议。这套协议平时不干预任何操作,只有在检测到“非授权深度变更”时,才会自动锁死核心库,切断外部访问,释放维护模式告警。
而那条告警,只发给了我。
换句话说,整个公司的核心数据现在被一把无形的锁封住了。所有人——包括邵德宏、赵远、周天明——全都进不去。
而钥匙,根本不在任何文档里。
它在我的脑子里。
我坐在电脑前,手指无意识地摩挲着钥匙。虎口处已经留了一道浅浅的疤痕。
手机又开始震动了。
赵远的消息:“师父,你是不是把系统设了后门?求求你了,快回来吧。”
邵德宏的消息:“承泽,公司从来没亏待过你,有什么事我们坐下来谈。你开个价。”
林嘉怡的消息:“承泽,我知道你委屈。你先回来把系统解开,年终奖我帮你补双倍。”
我看着这些消息,像在看另一个世界的事。
然后我做了一件事。
我把手机里所有管理层联系人,全部拉黑。
赵远、林嘉怡、邵德宏、周天明。还有那几个不知名的号码。通通拉黑,一个不留。
操作完,世界又安静了。
早上七点四十,我下楼去陈美玲家吃馄饨。她坐在对面,看我吃。馄饨皮薄薄的,一颗颗捏得玲珑。
“昨晚上你那个手机,震了一宿。”她说。
“嗯。”
“工作的事?”
“不是了。”
她没再问,只把碟子里的醋推过来一点。
我夹起一颗馄饨,在醋里滚了滚。咬下去,汁水烫舌尖。我吃完了一整碗,连汤都喝干净。
“陈阿姨,我上次跟你说的那个新工作,成了。”
她愣了一下,然后笑了。眼角皱纹挤在一起。
“好事。”
八点,我出了门。下楼的时候碰到三楼张伯,他正蹲在楼梯口修他的老自行车。看见我,说了一句:“小晏啊,昨晚你们那楼灯亮了一宿,是不是忘了关?”
我抬头看了一眼那条街。两栋楼之间的天空很窄,阳光从缝里切下来。
“不是忘了。”我说。
然后我朝反方向走去。
新公司在东边,不经过旧公司。但我还是绕了两条街,从它对面那条路走过。楼门口停着两辆警车和一辆贴着“应急”的面包车,保安在拉警戒线。
十七楼灯还亮着。
我没有多看。手机震了一下,是许岚。
“过来了吗?”
“在路上了。”
“给你安排了工位。你到了直接来我办公室。”
我正要回一个“好”,她又发了一条。
“晏承泽,你欠我的三年,该还了。”
我站在路边,被太阳晒得眯了眯眼。
忽然想起大三那年冬天,我和许岚一起在机房调试一个数据迁移程序。那个程序后来被另一个学长改了几行代码,拿去参加比赛拿了奖。学长在台上说,代码是他自己写的。所有人都信了。除了许岚。
“你为什么不说话?”她当时问我。
我张了张嘴,没说出来。
现在,我还是没有说话。
只是看着手机屏幕上的那行字,回了她四个字:
“我到了。”
第六章 十七楼
新公司工位很敞亮。靠窗,能看到对面楼顶的绿植。电脑配置很好,屏幕是两个二十七寸的。许岚站在我工位旁边,跟我说:“你先熟悉环境,具体任务下周再安排。”
她顿了顿,又说:“不过你的入职材料里还差一张离职证明。”
“我还没正式提离职。”
她抬头看我,没说话。
“我会补。”我说。
“你最好快一点。”她把一份装订好的文件放在我桌上,“他们不会轻易放你走。”
那天上午,新闻推送到手机里。
“某互联网公司用户数据泄露,涉及17亿核心数据,疑似暗网叫卖。”
下面评论很多,我没点开看。
然后第二条新闻:“全速科技多个合作方发布声明,要求立即消除影响并保留索赔权利。”
第三条:“全速科技股价开盘跌停。”
我一条条翻过去,手指很轻,跟翻别人的事情一样。
中午吃饭的时候,陈美玲给我发语音,说她在菜市场买了鲈鱼,今晚清蒸。我回:“好,我买点小葱回去。”
下午四点,一堆陌生号码开始轮番打进来。我一开始没接,后来有个号码连续打了好几次,我接了。
“晏承泽是吧?我是公司法务部的郑凯。”
“你说。”
“邵总准备把你告了,说你私藏密钥,故意破坏系统,给公司造成重大损失。”他说话不快,但每一个字都很清楚。
“嗯。”
“你不意外?”
“不意外。”
电话那头沉默了几秒。然后他说:“我建议你找个律师。公司请了很大的团队,准备把你往刑事上推。你要有准备。”
“你呢?”我问。
他又沉默了一下。“我负责整理证据材料。”
“那你也准备一下。”我说。
挂掉电话,我把手机放在桌上,继续看电脑。许岚从对面走过来,递给我一杯咖啡,是她自己用保温杯从茶水间打的。
“给你。”她说。
“谢谢。”
“别看手机了。”她指指我的手机,“让它自己响。”
新公司下班时间是六点半。我六点二十离开,去菜市场买了小葱。又在楼下水果店买了几个苹果,老板说红富士,脆甜的。
陈美玲做了鲈鱼。鱼是蒸的,上面铺着姜丝,浇了热油。肉很嫩,筷子一夹就散。她蒸鱼的时候喜欢在鱼肚子里塞一点香菇,吃着有股鲜味。
吃饭的时候她没问我公司的事。她从来不在饭桌上追着问。只是给我夹菜,说鲈鱼要吃热的,凉了就腥了。
吃到一半,我手机又亮。是郑凯发来的一条加密邮件。
只有两行:
“下周董事会,邵总准备把责任全部推到你头上,说你私藏密钥,蓄意破坏。”
“但他不知道,你离开那天拷贝的东西,不止‘十七楼’。”
我看完,把手机扣过去。
陈美玲看了我一眼,夹了一块鱼,放在我碗里。
“先吃饭。”她说。
“嗯。”
鱼很鲜,葱很香。
我知道,有些事,得等它自己跑一会儿。
第七章 私藏密钥的人
董事会那天,天气很差。早上起来就下雨,雨点不大,但密密匝匝的,像有人在天上筛水。
我穿了一件深色外套,打车过去。到了楼下,保安认出我,愣了一下,没说什么就放了行。
会议室在十六楼。我推门进去的时候,里面已经坐满了人。邵德宏坐在主位,脸色铁青。林嘉怡坐在他左手边,嘴唇抿成一条线。赵远坐在靠门的位置,看到我进来,猛地站起来,又坐下了。周天明在角落里,领带系得歪歪的,额头上全是汗。
郑凯坐在邵德宏另一边,低头整理文件。
我在长桌的另一头坐下来。
邵德宏清了清嗓子,看向众人:“今天会议只有一个议题。关于此次数据泄露事件,直接责任人必须追究。”他顿了顿,把目光移向我,“晏承泽,公司待你不薄。你呢?你在系统里私设后门,藏匿密钥,故意制造漏洞,导致公司遭受重大损失。你的行为,已经涉嫌职务犯罪。”
会议室很安静,只有窗外的雨声。
我看了看赵远。他低下了头。
“邵总,”我说,“提权申请单上,‘紧急’两个字,是谁批的?”
邵德宏一愣。
“赵远申请临时权限,审批人是你。”我看向赵远,“你自己签的字,你忘了吗?”
赵远猛地抬头:“可我是为了辅助外包团队做好系统升级!”
“升什么级?”我问,“谁给你下的指令?”
“周天明。”赵远说完就后悔了,嘴唇张了张,没再出声。
周天明站起来,手按在桌面上:“我当时说的只是配合检查,没让动核心库!”
“你带来的人,提权后执行了数据库迁移脚本。”我看着周天明,“那个脚本是从一个开源论坛上下载的,中间改了三行代码。你要不要我打开给你们看看,那三行是干什么的?”
周天明脸一阵红一阵白。
邵德宏重重拍了下桌子:“你少扯这些!核心问题是你私藏密钥!这是故意破坏!”
“邵总。”我看向他,声音很平,“三年前,是我向公司提出部署防篡改系统。当时的评估报告,是你签的字。这套系统的密钥不在任何文档里,是因为你要求‘单点保管,不能扩散’。”
我站了起来,手里多了个U盘。
不,不是U盘,是一个备用手机。我打开屏幕,点了几下,一段音频在会议室里响起来。
邵德宏的声音:“技术人,不值钱。别惯着他们。”
林嘉怡的声音:“那承泽那边……”
“给点教训。让他知道谁在养他。”
音频停了。会议室里静得只剩下雨声。
邵德宏脸色彻底变了。他站起来,指着我的手在抖:“你这是伪造的!”
“这段录音来自你今年三月的内部会议。当时的参会人员有林嘉怡、周天明、赵远。”我看了一眼林嘉怡,“林总,你也在场。是吧?”
林嘉怡的嘴唇动了一下,没说话。她的手指在桌沿上抠得很紧,指甲翻过来,露出一点肉。
“林嘉怡。”我叫她的名字。
她抬头看我。眼眶是红的,但没有泪。
“我……”她张了张嘴,又看向邵德宏。邵德宏的眼神像刀子。
“我说。”她终于开口,声音很轻,像从嗓子眼里挤出来的,“所有加班记录和年终奖标准,都是邵总授意修改的。承泽的绩效系数……也是邵总定的。”
赵远猛地转头看她,又看我。他想说什么,但没说出来。
郑凯合上文件夹,摘下眼镜,放在桌上。
“邵德宏先生,我手里有一份从去年开始的内部决策记录,包括数据安全审计伪造流程、非法提权审批,以及此次事故的推责方案。我将全权交给监管部门。”
门被推开,几个穿制服的人走了进来。为首的人举着证件,走到邵德宏面前。
“邵德宏先生,我是网络数据安全联合调查组的。请你配合我们调查。”
邵德宏往后退了一步,椅子撞在墙上,发出很响的一声。他看看四周,所有人都没动。
我走到门口,经过他身边的时候停了半秒。
“先把手头的事做完。”我说。
他抬头看我,眼珠子红着。
“你的手头,现在没了。”
第八章 凌晨的钥匙声
后来发生的事情,我都是从新闻里看到的。
全速科技被责令暂停相关业务。多名管理层被带走调查。股价连续跌停。合作方集体发起索赔,总额超过二十亿。一个月后,公司进入破产清算程序。邵德宏被起诉多项罪名,林嘉怡转作污点证人后被行业除名,周天明所在的外包公司吊销资质,赵远被追回所得并列入从业黑名单。
这些事,我没有再看第二遍。
林嘉怡走的那天给我发过一条短信,只有三个字:“对不起。”我没回。
赵远找过我一次。在新公司楼下,他穿着皱巴巴的外套,拎着个白色塑料袋,里面装着我的旧工牌和一本翻烂的《服务器运维手册》。
“师父,你帮我跟许总说说……”
我给他倒了一杯水。凉的。我没说话。
他等了一会儿,走了。走之前回头看了一下,我把门关上了。
郑凯后来跳槽去了一家律所。他给我发过一次消息:“所有证据都已移交。后续如果有需要出庭作证,会通知你。”我回:“好。”然后存了他的号码。
许岚问过我:“你是什么时候决定要这么做的?”
我想了想。不是领到950块那天。也不是清理备份那天。更不是电话轰炸那晚。
“可能是去年冬天。”我说。
“去年冬天怎么了?”
“有天凌晨我处理完故障,在机房里坐着。赵远给我带了个面包,说‘师父你就是公司的定海神针’。那天邵德宏在朋友圈发了一条,说‘全力冲刺年底目标,感谢大家没有怨言’。”我停了一下,“我吃面包的时候,忽然觉得自己像个笑话。”
许岚没说话,只点了点头。
那天晚上,我在新家整理东西。手机屏幕上还留着那360通未接来电的记录。一长串红色数字,密密麻麻。
我滑到最底部,点下“清空”。
屏幕回到锁屏壁纸。是陈美玲家窗台上那只橘猫,肚皮翻着,阳光正好。
我站起来,抓过钥匙。钥匙扣上的小铜锁碰在门把手上,叮当响了一下。
新公司离住的地方不远。夜里空气很好,有桂花的味道。小区门口的水果店还没关门,老板坐在灯光下刷手机。我买了半斤橘子,揣在兜里。
走到楼下,我抬头看了看陈美玲家的窗户。灯还亮着,电视里在放什么晚会,笑得一阵一阵的。
我掏出钥匙,开门。
锁芯转了一圈。
我站在门口,回头望了望旧公司那栋楼。隔着几条街,看不见了。
然后我关门。
钥匙在手指间转了一下,我把它们挂在门后的钩子上。
没有再看手机。
——全文完——