车子刚开出两条街,林晚的手机又响了。老K接的,听了几句,脸色变得比刚才还难看。
“掉头,回沈氏大楼。”老K对老徐说。
林晚睁开眼:“怎么了?”
“那个全球广播的信号没完全切断。沈靖留了个后门,广播虽然停了,但信号还在往外发,只是被我们拦截在了骨干网的路由器上。技术组说最多还能撑两个小时,两个小时后信号会自动绕过封锁,推送到所有终端。”
林晚坐直了身体。“录音里还有什么?”
“技术组说背景杂音不正常,有一段频率被人为加密过,不是普通的音频噪音。”
车子掉头,十分钟后重新停在了沈氏大楼门口。林晚下车的时候,抬头看了一眼楼顶的旗帜,还在飘。
监控室在地下二层,比楼上的会议室冷得多,空调开到了十六度,几个技术员穿着外套还在打哆嗦。林晚进来的时候,一个戴眼镜的年轻人指着屏幕上的频谱图,声音都在抖:“林小姐,您看这段,五百到八百赫兹之间有一个重复的脉冲信号,周期是三秒一次,非常规律。这不可能是环境噪音,一定是有人故意嵌进去的。”
林晚盯着那幅频谱图,开启思维爆破。大脑开始自动解析那段脉冲信号的编码方式——不是摩斯密码,不是二进制,是一种更古老的、基于金融复式记账逻辑的编码。每一组脉冲对应一个借贷分录,借方是技术参数,贷方是时间戳。
“这不是加密信息。”林晚说,“这是指令集。芯片的底层指令集。”
技术员们面面相觑。老K凑过来:“什么指令集?”
“沈靖的芯片实验室用的那种。”林晚转身往外走,“把这段音频切片发给我,我要找个人验证。”
陈博士的实验室在苏黎世联邦理工学院旁边的一栋灰色小楼里,门口没有招牌,只有一道铁门和两个摄像头。林晚到的时候,陈博士已经在门口等着了,穿着一件洗得发白的实验服,头发乱得像鸟窝,但眼睛很亮。
“东西呢?”他伸出手,像个要糖吃的小孩。
林晚把U盘递给他。陈博士转身就往里走,步子快得不像一个六十多岁的人。实验室里全是各种仪器和电路板,空气中弥漫着松香和焊锡的味道。他坐到一台终端前,把U盘插进去,调出那段音频切片,戴上耳机听了一遍,又听了一遍。
“这是‘1号协议’。”陈博士摘下耳机,声音都在发颤,“我们找了三年,被海外锁死的那个底层协议,原始代码就在这段音频里。不是完整的,但核心指令集全了。有了这个,国产芯片的流片问题就能解决。”
林晚靠在墙上,双手插在口袋里,表情没什么变化,但心里有一个声音在说——苏曼。你连死了都在帮我。
“陈博士,这段代码能直接拿来用吗?”
“能,但不能直接用。需要先转换成硬件描述语言,大概需要两到三天。”陈博士顿了顿,“但有一个问题。沈靖那边肯定也知道这段代码的价值,他不可能就这么白白送给我们。”
林晚想到了同一件事。她掏出手机,拨了顾衍之的号码。
“你在哪?”
“沈氏大楼,我在整理剩下的合同。”顾衍之的声音里带着疲惫。
“放下手里的事,去查沈靖在海外设立的那三个离岸技术专利公司。我记得它们的注册地都在开曼,实际控制人是沈靖的代持人。我要你把那些公司收回来。”
顾衍之沉默了两秒。“怎么收?”
“协议转让。沈氏的那些中小股东刚签了股权转让书,你告诉他们,如果想顺利拿到钱,就必须配合我们把那三家公司的股权也转过来。不配合的,清算顺序往后排。”
顾衍之又沉默了两秒,这次更短。“明白了。”
陈博士点了点头,已经重新戴上耳机,沉浸在那段音频里了。
林晚走出实验室,老K在门口抽烟,看到她出来,把烟掐了。
“沈靖的定时摧毁程序启动了。”老K说,声音很沉,“国产芯片实验室的超算中心,核心温控系统被远程接管了。温度正在上升,已经超过了安全阈值。”
林晚的脚步停住了。“谁干的?”
“沈靖预设的。他可能在被捕之前就设定好了,不管他在不在,程序都会在指定时间启动。技术组正在尝试夺回控制权,但对方的加密等级太高,估计需要好几个小时。超算中心的物理温度已经升到了七十五度,再过二十分钟就会触发硬件保护性关机。”
“关机之后呢?”
“正在跑的那组流片数据会全部丢失。那是陈博士团队花了半年时间做的最后一次仿真,如果丢了,整个项目至少推迟一年。”
林晚站在实验室门口,夜风吹过来,把她的头发吹得到处飞。她没拨,就那么站着,脑子里在高速运转。温控系统被远程接管——这意味着对方有权限访问超算中心的底层管理接口。那个接口的访问密钥,应该跟沈靖芯片实验室的指令集用的是同一套加密体系。
而那段指令集的原始代码,就在她的U盘里。
“老K,把超算中心温控系统的访问界面给我接到我的终端上。”
老K愣了一下:“你要干嘛?”
“我要进去。”
“你不是技术人员——”
陈博士抬起头,推了推眼镜:“那段代码是芯片指令集,不是网络攻击工具。”
“但它跟温控系统的底层协议用的是同一套加密体系。”林晚说,“你不需要攻破防火墙,你只需要伪造一个合法的身份。用那段代码生成一个临时的访问令牌,告诉系统——我是沈靖,我有权限。”
“给我五分钟。”
林晚站在他身后,看着屏幕上那些飞速滚动的代码,心跳很快,但脸上很平静。她的手插在口袋里,摸到了那个定位器——她一直没扔的那个。绿灯不闪了,没电了,但她没扔。
四分钟后,陈博士敲下了回车键。屏幕上跳出一行绿色的提示——“Access granted. Temporary token valid for 300 seconds.”
三百秒。五分钟。
林晚坐到终端前,打开超算中心温控系统的管理界面。温度显示——八十二度,还在上升。冷却系统的状态是“远程接管”,控制权在对方手里。她需要做的不是夺回控制权,而是绕过控制权,直接给硬件发指令。
她用那段临时令牌登录了硬件管理接口,看到了一行参数——风机转速,百分之十二。她把那个数字改成了百分之百。
屏幕上的温度曲线开始掉头。八十二,八十一,七十九。冷却系统的状态还是“远程接管”,但风机已经转起来了,因为硬件指令的优先级高于软件控制。
对方发现了异常,开始疯狂发送新的指令,试图把风机转速调回去。但林晚已经把硬件接口锁死了,用的是沈靖自己的密钥——从那段音频里提取出来的原始代码。
对方进不来,她也不出去。
温度继续往下掉。七十五,七十二,六十八。冷却系统的状态从“远程接管”变成了“本地强制”,这是硬件层面的反馈,软件改不了。
老K站在旁边,看着屏幕上那条绿色的下降曲线,长长地呼出一口气。
“你他妈真是个怪物。”他说。
林晚没理他,靠在椅背上,盯着屏幕。温度降到了五十五度,安全线以下。超算中心的硬件保住了,那组跑了半年的仿真数据也保住了。
她站起来,拿起桌上的水杯喝了一口,水是凉的,激得胃一阵收缩。
“陈博士,代码的事继续。老K,沈靖那边你盯紧了,别让他再搞出什么幺蛾子。”她走到门口,停下来,回头看了一眼那台还在运转的终端,“我回酒店睡一觉。明天早上,我要看到那个定时摧毁程序的完整溯源报告。”
老K点了点头。
林晚走出实验室,上了车。老徐发动引擎,车子驶入夜色中。苏黎世的夜很安静,街道上几乎没有行人,只有偶尔一辆出租车从对面开过来,车灯在挡风玻璃上扫过一道光。
她靠在座椅上,闭上眼睛。
脑子里还在转——苏曼的录音,芯片指令集,超算中心的温控系统,沈靖的定时摧毁程序。所有的线头都指向同一个方向:苏曼在二十年前就预见到了今天的一切。她不是被动地被困在康养院里,她是在用自己的方式,一点一点地把钥匙递出来。
录音是钥匙。芯片代码是钥匙。甚至沈靖的存在,也是一把钥匙——一把打开裴氏实验室黑箱的钥匙。
林晚睁开眼,看着车窗外飞速后退的路灯。
“老徐,你说一个人要有多大的恨,才能在被人关了二十年之后,还在想着帮别人开路?”
老徐从后视镜里看了她一眼,沉默了一会儿。
“不是恨。”他说,“是爱。”
林晚没接话。
车子拐进了酒店的地下车库,停稳了。她下车,走进电梯,按了顶楼的按钮。电梯门关上之前,她听到了老徐在车里打电话的声音,断断续续的,像是在安排明天的安保。
门关了。
电梯往上走,数字一格一格地跳。她靠着电梯壁,仰头看着天花板上的灯,白光刺得眼睛发酸。
电梯到了,门开了。她走过走廊,刷卡进房间,把包扔在沙发上,连衣服都没换,直接躺到了床上。
天花板上有一盏吊灯,关着,但窗外有光透进来,在天花板上投下一个模糊的光斑。她盯着那个光斑看了很久,脑子里翻来覆去的都是苏曼的那句话——“你不是我的女儿,你是裴氏实验室最失败的一个产品。”
失败的产品。
那又怎样?失败的手机也能打电话,失败的飞机也能飞,失败的人也能赢。
林晚翻了个身,把被子拉到肩膀,闭上了眼睛。
明天还有仗要打。
