河水在黑暗中流淌的声音像是某种古老的呼吸。陆寻沿着河岸走了很久,久到腿脚开始麻木,久到天空从鱼肚白变成彻底的漆黑。通讯器上的坐标指向一片荒废的工业区,这里曾是城市早期的纺织厂聚集地,在产业升级后被均衡系统划定为“生态修复保留区”——意思是暂时没想好怎么规划,先任由荒废。
安全屋在一座废弃水塔的底部,入口被藤蔓和锈蚀的铁皮遮挡。陆寻按照通讯器上的指示,在指定位置找到一块松动的砖,按下后面的开关。地面滑开一个仅容一人通过的洞口,延伸向下的铁梯在黑暗中泛着幽暗的金属光泽。
他爬下去,头顶的入口自动合拢。底下是一个约莫二十平方米的空间,显然由旧时的防汛仓库改造而成。墙壁做过防水处理,空气中有除湿机运转的微弱声响。角落里摆着简易的行军床和折叠桌椅,墙边的架子上整齐码放着罐头食品和瓶装水。最引人注目的是屋子中央的那张工作台,上面摆着一台老式但保养精良的终端机,旁边还连接着几台陆寻从未见过的外接设备。
他打开灯,光芒是柔和的暖黄色,不刺眼。桌上放着一个牛皮纸信封。拆开后里面有三样东西:一把钥匙、一张手绘地图、一页手写的注意事项。
注意事项的第一条写着:“不要试图联系任何人,包括我们。等待。”
第二条:“每天检查通风口是否通畅,但不要长时间打开。”
第三条:“终端机已预装反追踪系统,但每次使用不超过三十分钟。”
第四条:“罐头食品按标签日期顺序食用,水每周更换一次。”
落款是一个简单的符号:一只眼睛,瞳孔处画着断裂的锁链。
陆寻放下纸条,走到终端机前。机器启动得很快,显然经过特殊优化。桌面很干净,只有一个文件夹,标着“学习资料”。他点开,里面是几十个文档和视频,标题包括“城市监控系统弱点分析”“反面部识别技巧”“物理隐蔽通信方法”“如何在数字社会中消失”。
他点开第一个视频。画面中出现了一个戴着面具的人,声音经过处理,听起来非男非女。
“欢迎来到盲区。”面具人说,“如果你在看这个视频,说明你已经做出了选择。接下来的时间里,你将学习如何在系统的注视下隐形。这不是游戏,不是演习。每一次失误都可能是最后一次。”
视频持续了大约二十分钟,详细讲解了城市监控摄像头的布局规律、盲区分布、以及如何利用光线和阴影干扰面部识别算法。陆寻看得脊背发凉——他从未意识到自己生活在一个如此密不透风的监控网中。
接下来的几天,陆寻严格按照时间表学习和训练。早晨六点起床,做半小时的身体训练——在狭小的空间里尽可能保持体能。七点早餐,然后开始学习监控躲避技巧。下午研究加密通信方法,晚上则复习所有内容并做笔记。
第三天夜里,终端机收到了一条加密消息。解码后显示:“明天黄昏,河边第三个长椅。带蓝色塑料袋。”
陆寻按照指示,在次日下午五点四十五分来到河边。他穿着从安全屋找到的旧衣服,戴着帽子和口罩,手里拎着一个蓝色塑料袋,里面装着几个空罐头——这是伪装。
长椅上已经坐着一个老人,正在喂鸽子。陆寻在他旁边坐下,也做出喂鸽子的样子。两人之间隔着一个座位的距离。
“冷却系统的流量计故障,通常有几种原因?”老人突然开口,眼睛仍然看着鸽子。
陆寻心跳加速,但他努力保持声音平稳。“泵体磨损、传感器漂移、管道积垢,或者……人为篡改。”
“东区服务器的冷却液配方,哪一年更换过?”
“三年前。从乙二醇基换成丙二醇基,因为环保标准升级。”
老人点了点头,扔出最后一把玉米粒。“你安全屋的通风口,今天早上有什么异常吗?”
陆寻想了想。“有只蜘蛛在那里结了网。”
老人站起身,拍了拍身上的面包屑。一个信封从他袖口滑落,掉在长椅上。他没有回头,径直走远了。
陆寻等了几分钟,才拿起信封。里面是一张新的身份芯片和一份手写的任务说明。
任务很简单:去城南的一个自动洗衣房,用指定的储物柜交换一个包裹。但这简单的任务背后,是巨大的风险——洗衣房位于一个中等密度的居民区,监控摄像头密集,人脸识别系统全天候运行。
回到安全屋,陆寻反复研究手绘地图和任务说明。洗衣房有前后两个入口,储物柜在靠墙的位置,理论上可以避开大部分摄像头的直接拍摄。但问题在于,洗衣房本身的监控系统会记录每一个进入的人。
他整夜未眠,把所有可能的方案在脑中演练了一遍。第二天中午,他出发了。
洗衣房比想象中更繁忙。几台机器轰隆作响,空气里弥漫着洗衣粉和潮湿布料的气味。陆寻压低帽檐,用围巾遮住下半张脸,尽量自然地走向储物柜区。
储物柜是旧式的机械锁,用钥匙就能打开。他找到指定的柜子,将装着空罐头的蓝色塑料袋放进去,然后取出里面的黑色背包。整个过程不到十秒钟。
转身准备离开时,他和一个正要进来的女人撞了个满怀。女人手里的洗衣篮掉在地上,衣物散落一地。
“对不起对不起!”女人连声道歉,蹲下去捡衣服。
陆寻也蹲下帮忙,心跳如鼓。他瞥见女人的手腕上戴着智算中心发给员工的健康监测手环——她是系统内部的人。
“没关系。”陆寻压低声音说,把最后一件衣服递给她。
女人抬起头,看到他遮住的脸,眼神里闪过一丝疑惑。但她什么也没说,接过衣服匆匆走向洗衣机。
陆寻快步离开洗衣房,转入旁边的小巷。他走了两个街区,确认没有被跟踪后,才敢稍微放慢脚步。黑色背包很轻,但背在肩上感觉有千斤重。
回到安全屋,他锁好门,打开背包。里面不是他预想中的文件或设备,而是一摞打印出来的照片。
照片拍摄的是一家咖啡馆的室内场景。从角度看,应该是从某个固定监控摄像头截取的画面。照片里,他的妻子沈薇正和一个陌生男人面对面坐着。男人背对镜头,看不清脸。沈薇的表情……陆寻从未见过妻子露出那样的表情——混合着忧虑、恐惧,还有一丝决绝。
照片的日期是两天前。那个时候,他已经在逃亡中了。
陆寻感到一阵眩晕。他一张张翻看照片,看到沈薇递给男人一个U盘,看到男人说了什么,看到沈薇点头,看到两人先后离开咖啡馆。
终端机在这时收到新消息。解码后只有一句话:“她比你想象的更坚强。”
陆寻盯着那句话看了很久。愤怒、困惑、担忧在胸腔里翻腾。沈薇知道他在做什么?她在帮他?还是系统设下的另一个圈套?
他想起离家前最后一个早晨,沈薇像往常一样为他准备早餐,叮嘱他记得吃午饭。他们的对话很平常,平常到没有任何告别的意味。她什么都没说,但也许什么都知道了。
夜幕降临,安全屋里只有终端机屏幕发出的微光。陆寻没有开灯,他就坐在黑暗里,手里握着那些照片。河水的流动声从墙壁外隐约传来,像这座城市永不停止的脉搏。
他想起很多年前,和沈薇刚结婚的时候。那时还没有均衡系统,或者系统还处于早期阶段,存在很多不完善。沈薇在一家图书馆工作,她喜欢纸质书胜过电子屏,喜欢手写卡片胜过自动推荐。她常说,算法永远不懂偶然的美——比如在书架间漫步时偶然翻到一本从未打算读的书,却发现它恰好解答了你心中的困惑。
后来图书馆被数字化改造,沈薇调到了社区服务中心。她的笑容越来越少,话也越来越少。陆寻以为那只是中年疲惫,是生活的常态。现在想来,也许她早就察觉到了什么,早就看到了系统光鲜表面下的裂缝。
终端机又响了。这次是一份新的学习资料:“情绪管理与危机决策——在压力下保持理智的十个方法”。
陆寻苦笑。他现在需要的不是方法,而是一个答案:他该怎么做?继续躲在这里学习如何隐藏,还是想办法联系沈薇?如果联系了,会不会把她也拖入危险?
他看向工作台上那把从信封里拿出的钥匙。很小,很旧,像是某个储物柜或信箱的钥匙。手绘地图的背面用铅笔写着一行小字:“当你有无论如何都要保护的人时,再来找我。”
陆寻把钥匙握在手心,金属的冰凉感让他稍微冷静下来。他打开终端机,开始学习新的课程。屏幕上,面具人的声音在狭小的空间里回荡:
“生存不是等待风暴过去,而是学会在雨中行走。你要走的这条路,每一步都可能触发警报。但记住,系统越庞大,它的盲点就越多。而人类的意志,是它永远无法完全计算的变量。”
窗外传来夜鸟的啼鸣。陆寻关掉视频,走到通风口前。蜘蛛果然在那里结了一张新网,细密的丝线在微弱的光线下几乎看不见,却能捕捉飞虫。
他看了很久,然后回到工作台前,开始制定明天的训练计划。照片被他小心地收进信封,放在枕头下。那里还压着女儿去年生日送他的手工贺卡,卡片上用稚嫩的笔迹写着:“爸爸是世界上最好的工程师。”
陆寻躺下行军床上,盯着天花板。通风系统发出持续的低声嗡鸣。他知道自己今晚可能还是睡不着,但没关系。他会闭目养神,保存体力。因为在这座被算法分割的城市里,在无数个看不见的孤岛之间,一场沉默的战争已经开始。
而他,已经做出了选择。