array(5) { ["chapterid"]=> string(8) "49252316" ["articleid"]=> string(7) "7279746" ["chaptername"]=> string(7) "第5章" ["content"]=> string(16166) "林哲是被冻醒的。

简易房的铁皮墙不挡风。凌晨的冷气从窗户破洞里灌进来,带着外面石灰和锈铁的味道。他坐直,脖子僵了,塑料椅子在屁股底下吱嘎一声。手机显示:上午九点十四分。

四个小时过去了。

他站起来,膝盖咔哒响。关节像没上油的合页。背包带子把左边肩膀压出一道红印子,他换了边挎,走到门口往外看。建材市场还在晨雾里沉默着,塌掉的钢架棚顶在灰白天光下像一副丢在地上的旧鱼骨。

裤兜里手机震了一下。

林哲掏出来。不是备份程序——灰点没回来。是系统自带的天气推送,蓝底白字:今日第七区多云,气温14-22℃,湿度62%。下面还有一条小字——“倒悬山市政提醒您:参与第三期智慧治理试点项目的市民,请于本月内完成年度行为数据更新。逾期未更新将影响护航服务评级。”

他把推送划掉了。

手指碰到屏幕的瞬间,触感不太对。玻璃面板上有一道细痕,从左上角斜着往下划到屏幕中间偏右的位置。不是屏幕碎了。是指纹痕迹——有人在他睡着的时候试图解锁。三次。超过三次解锁失败,手机会自动锁屏三十分钟。

林哲攥紧手机。指关节顶在机身边缘,泛白。

简易房里没有别人。折叠桌的位置没变,塑料椅还是两把,墙角的挂历被风翻了一页,现在是四年前的七月,印着一片油菜花田。但门口地上的石膏粉上多了一组脚印。不是他的——他的鞋底纹路是横条纹,这组印子是点状纹,像某种胶底工装鞋踩出来的。

脚印从门口进来,走到椅子旁边停下,然后出去了。

没有打斗痕迹。没有翻动背包的迹象。

林哲拉开背包拉链。两千块现金还在,便签纸也在,水瓶子被人动过——瓶盖拧反了。他的习惯是盖子上凸起的防滑纹路竖着,现在横着。

有人拧开过水瓶。

没拿走任何东西。没叫醒他。甚至把椅子推回原位。只是进来,站了一会儿,拧开水瓶看了眼,换个东西,走了。

不对。

林哲蹲下去重新翻背包。夹层里多了一张卡片。不是纸,是塑封的硬卡,身份证大小,正面印着倒悬山的logo和一行字——“第十区行政审批中心·临时通行证”。右下角有激光防伪标,角度偏一下会变色。卡片背面粘着张黄色便利贴,黑色水笔写着一行字,笔迹不熟。

“密钥只能用一次。用在闸口,不是出关。”

林哲翻过来,没有更多了。

他把卡片在指间转了转。临时通行证上的照片栏空着,姓名栏空着,只有底部那行序列号是印好的,一串数字加字母。谁送来的?送东西的人怎么知道他在这里?那个拧开水瓶的动作——也许不是检查,是在下药。也许什么都没下,只是个警告。

他把水瓶扔了。拧开盖子,倒掉,踩扁瓶身塞进背包。渴的话,路上找水。

九点二十三分。

建材市场到边界检查站,导航显示步行四十分钟。窗口期十点零七分开始。他得卡在十点零五分到检查站东侧三百米的位置——备份程序说的那个观察盲区。

他推开门。晨雾散了大半,天空仍然是倒悬山那种洗不干净的灰白色。空气里多了股焦糊味,远处哪个厂房在烧什么东西,黑烟从某栋建筑后面升起来。

林哲穿过废弃建材市场。碎瓷砖在脚底下咔嚓响。绕过塌掉的钢架棚顶,钻过铁丝网的破洞,回到铁路线旁边。铁轨上停着一列货车,十几节车厢满载着钢卷,引擎没熄,柴油机的突突声压得很低。机车头的窗户开着,司机的胳膊搭在窗框上,烟头一明一暗。

林哲蹲在枕木堆后面等了三十秒。司机弹掉烟头,缩回手,拉上窗。列车慢慢动了。

他等最后一节车厢过去,翻过铁轨。裤腿被铁轨旁边的碎石划了一下,皮肤上有道白印子。

过了铁轨,是第七区的边缘地带。路边长着半人高的野草,水泥路面断了,露出底下的土。一间废弃的加油站,顶棚塌了一半,加油机上爬满藤蔓,显示屏碎了一个洞。再往前,地势开始往上走,是个缓坡。坡顶有铁丝网,不高,大概一米五,没有刺。

铁丝网后面就是边界检查站。

不是电影里那种关卡——没有混凝土建筑,没有拒马,没有持枪的士兵。倒悬山的边界是数据边界,物理层面的检查站就是一个简易房搭的岗亭,外面两个摄像头,岗亭里面坐着值班的人。唯一显眼的是横在路面上的电子闸口,金属栏杆漆成黄色,栏杆上每隔半米贴着警示标语。

“数据主权边界。出界请主动申报终端设备。”

离窗口期还有四十分钟。

林哲没靠近。他顺着铁丝网往东走,找备份程序说的那个观察盲区。地图显示在东侧三百米的位置,那里有一排废弃的集装箱,是以前货场搬走时留下的。从集装箱后面可以看到闸口,但岗亭的摄像头拍不到这里——角度被一棵歪脖子构树挡住了。

到了。

集装箱生锈了,铁皮表面鼓着锈泡,用脚踢一下,掉下来一块锈皮。林哲蹲在集装箱后面,从锈蚀的破洞往外看。角度刚好。

岗亭里坐着两个人。一个穿深蓝色制服,数据管理部的,肩膀上有银色倒山logo,在看手机。另一个穿灰色工作服,应该是边界运维的人,在吃泡面。热气从碗口升起来,被岗亭顶上的风扇吹散。闸口栏杆横着,前面没车,也没人。

时间是九点四十一分。离窗口期二十六分钟。

林哲把手机掏出来。屏幕亮着,灰点没回来。备份程序还在关机状态。锚定设备的故障重连程序应该还在跑——系统判定设备故障,还没升级响应。但过了十点零七分,如果他想出关,必须让设备离线十分钟。这十分钟会被系统标记为异常。

他得在人工干预发生之前过闸口。

裤兜里的便签纸硌着大腿。他掏出来,展平。王恺的字迹在上面歪歪扭扭的:“去十区。找姓赵的。”背面是密钥片段,一串字母数字混合的字符。他又掏出那张临时通行证,放在一起看。

密钥片段用的是十六进制——林哲做数据恢复,一眼能认出来。但十六个字符,对应的应该是八个字节的密钥。闸口的验证系统是倒悬山内部的,用的是什么加密他不知道。王恺留下这串字符,没有算法,没有说明。

他忽然想起通行证背面的便利贴。

“密钥只能用一次。用在闸口,不是出关。”

闸口。不是出关。

出关是人走出去。闸口是系统层面——是终端设备申报出境的验证接口。密钥不是用来打开栏杆的,是用来伪造申报数据的。输入这一串字符,闸口系统会以为他的终端已经申报过了,放行。但只能一次。

林哲把便签纸收好。

岗亭里,穿灰色工作服的人吃完了泡面,端着碗站起来,走到岗亭后面的垃圾桶,扔掉。他伸了个懒腰,对旁边深蓝制服说了句什么,指了指闸口。深蓝制服点头,放下手机,站起来走向闸口边的终端机。

时间:九点五十分。

窗口期还没到。但是备份程序说过,今天换班时间提前了——他不知道具体什么时间换班。如果十点零七分是系统自动更新的窗口期,那人工换班可能在之前。

他盯着岗亭。

深蓝制服在终端机前面站了一会儿,敲键盘。屏幕的光照在他脸上,惨白一片。敲完,他抬头对灰衣服说了句话。嘴型看不清。

灰衣服站起来,从岗亭里拎出一个背包,背上。然后俩人一起往检查站外面走。不是出关方向,是往第七区方向,沿着坡下来。

换班。现在。

新的人还没来。岗亭空了。

林哲心脏开始加速跳。不是怕,是忽然多了一个选项。窗口期是十点零七分,但换班期间岗亭是空的。如果现在过闸口,没有人工干预。问题是备份程序没开机,他不知道锚定设备的状态。如果现在设备还在故障重连程序里,他可以大摇大摆走过去。但如果重连已经完成了——系统看到他的定位出现在闸口,直接触发干预。

还有第三个可能。

他低头看手机。屏幕上的时间跳到九点五十二分。灰点没亮。

但如果开机,备份程序会被唤醒。然后系统会在窗口期之外检测到一个锚定设备主动离线——离线时间如果超过系统容忍阈值,A级护航可能会升级。升到什么?S级?S级会直接锁定物理位置,派数据管理部的人上门。不是保安,是真正有权限制人身自由的执法力量。

林哲攥着手机。指腹在屏幕边缘来回搓。

两个选择。趁换班空档直接冲,不开机。或者开机,让备份程序告诉自己现在是什么状态,然后承担被系统检测到的风险。

他想起王恺留下的密钥片段。

密钥只能在闸口用一次。

如果不开机,他不知道该在闸口的终端机上输入什么。密钥片段的十六个字符,要对应的是一个完整的申报表,包括姓名、ID、出境理由、目的地。不是光填一串密码就行。

备份程序知道怎么填。

他摁下电源键。

屏幕亮了。倒悬山logo。开机动画比平时慢,进度条爬了整整十二秒。桌面弹出来。计算器、天气、日历、时钟。第二排第三个位置。

灰点亮了。不是右下角,是左上角,一闪一闪的。

一条消息弹出来,白底黑字。

“现在开机有风险。锚定已重连。系统检测到你的设备状态恢复到正常。偏差率在你关机期间降到了41%。但一旦你开始向边界移动,偏差率会重新计算。到达闸口时,预计偏差率将超过95%。”

林哲打字:“岗亭换班。现在空的。窗口期还差十五分钟。”

“我知道。但你不能等。换班间隙只有三分半钟。新换班的人在九点五十六分到达。他们提前了。”

林哲看了眼时间。九点五十三。

四分钟。

“怎么填闸口申报表。”

“扫描通行证。密钥片段填入第四栏验证码。其他项目我来填。到终端机,把手机贴在读卡器上。”

他没回。把手机塞进裤兜,从集装箱后面站起来。腿蹲麻了,针扎一样。他没管,踩过硬土坡,往铁丝网尽头绕过去。

闸口的金属栏杆还横着。岗亭空着,终端机的屏幕亮着待机界面,蓝底白字的申报表格。摄像头在头顶,一个对着闸口内侧,一个对着外侧。备份程序说过,他把上周期图像替换了——但那是三十分钟前的事。替换窗口早就过了。

头顶的摄像头镜头里,暗红色的指示灯亮着。

林哲走到闸口栏杆前面。终端的读卡器在屏幕右侧,一个黑色的感应区,表面磨花了,有无数细小的划痕。他掏出手机,把屏幕贴在读卡器上。

手机屏幕跳出一个界面。不是系统应用——是备份程序推过来的。界面上是申报表,姓名栏自动填入“林哲”,ID栏填入一串数字。出境理由栏空了一秒,然后跳出一行字:“设备维护,需赴第三市采购备件。”目的地:“临市电子市场。”

第四栏验证码。光标在闪。

林哲从裤兜里掏出那张便签纸,展平。手指有点僵,纸上的字被汗泡皱了,但还看得清。他一个字符一个字符敲进去。

手机屏幕闪了一下。

申报表弹出一个绿色的勾。

“申报已受理。闸口将在五秒后开启。”

头顶的摄像头指示灯忽然变成红色。不是暗红,是亮红,像一只眼睛睁开。

闸口栏杆抬起来了。电机转动的声音,嗡嗡的。

林哲迈出去。

脚踩到栏杆另一边的地面时,手机震了。不是备份程序。是系统通知。

蓝底白字。

“亲爱的市民,您的行为偏差率已达到96.7%。A级护航服务升级为S级。定位辅助已切换为全时监控。请在原地停留,等待护航人员到达。根据《倒悬山数据安全管理条例》第十七条,S级护航人员有权对您的人身自由实施临时限制。”

林哲没停。

栏杆在他身后落下。闸口终端机的屏幕闪了一下,申报表格消失了,换成蓝底白字的警告页面。一行字在上面跳动:“边界异常通行告警。闸口编号:7W-03。异常类型:非授权离境。”

手机又震了。

这次是备份程序的消息。

“系统检测到边界异常通行。正在追踪你的加密协议。我已经启动干扰模式,但最多能拖他们七分钟。七分钟后他们会锁定你的实时位置。”

“七分钟够不够出五百米。”

“够。但有个问题。过了边界线,数据管辖权终止,护航服务理论上失效。但S级护航有一个例外条款——如果被护航人使用的终端设备被判定为‘数据安全威胁载具’,管理部有权向临市当局申请协助执法。申请周期是二十四小时。二十四小时内他们拿不到许可。”

林哲穿过闸口后面的空地。沥青路面裂了,缝隙里长着枯草。路边立着一块路牌,白底黑字——“倒悬山市界。前方进入临市辖区。请注意数据漫游资费。”

“所以呢。”

“所以你需要在二十四小时内,找出退订的方法。退订成功,锚定失效,设备标记清除。他们就没理由申请协助了。”

林哲跨过市界。脚下还是那条路,但路牌旁边的地上埋着一条感应线圈,线圈外侧的沥青颜色稍微深一点。

跨过去的时候,手机信号从满格掉到一格,又跳回来。运营商切换了。

他走出去大概三百米的时候,裤兜里的手机发出了一声尖锐的警报音。不是来电,不是消息。是系统层级的告警——倒悬山所有市民都在紧急状态下听过的那种。

手机屏幕自动亮了。

蓝底白字。

“警告:您的终端设备已被标记为‘数据安全威胁载具’。根据《倒悬山数据安全管理条例》第二十三条,此标记将向所有接入倒悬山数据网络的终端设备广播。标记有效期:二十四小时。退订此标记需前往第十区行政审批中心。”

林哲看完。没停。

备份程序弹了最后一条消息。

“离开边界之后,往西走大概一公里,路边有间修车铺。老板姓丁。王恺以前帮过他。报王恺的名字,他会让你借住一晚。铺子里有干净的终端机,没联网的那种。明天早上之前,你得想出退订的办法。或者。”

“或者什么。”

“或者找到姓赵的。她不在十区。十区的地址是假的——王恺查到了她的真实住址。在临市。”

林哲攥着手机,站在灰白色的天空下。边界在身后三百多米的地方,路牌背面的颜色比正面旧,掉了一块漆,露出底下的铁锈。

他把便签纸从裤兜里掏出来,展平。正面的字——“去十区。找姓赵的。她知道退订的事。”背面是密钥片段,十六个字符,已经被汗浸得快要看不清了。

“姓赵的叫什么。”

备份程序弹出最后一行字。

“赵冬梅。前倒悬山数据管理部技术员。三年前离职。离职原因一栏写的是‘个人原因’。王恺查到的记录显示,她最后出现的地址是临市老城区,春城南路17号。五金店楼上的出租房。”

林哲把便签纸折好,连同那张临时通行证一起塞进裤兜。

他沿着破裂的沥青路往西走。修车铺在一公里外,路边有棵枯掉的梧桐树。他要去借一台没联网的终端机。然后。

然后去春城南路17号。

找赵冬梅。" ["create_time"]=> string(10) "1785516839" }