下一章 上一章 目录 设置
4、密钥匹配点 沈清珩 ...
-
沈清珩不知道自己是怎么从那个地下室走出来的。
他只记得周说的话像一把锤子,一下一下地敲在他意识的最深处。
“你就是‘盖亚指令’的最后一行代码。”
“系统无法删除你,无法修改你,无法绕过你。”
“因为你就是它。”
走出写字楼的时候,天已经快黑了。傍晚六点多的光景,秋日的暮色来得早,路灯还没亮,天空是一种暧昧的灰蓝色。苏晓棠走在他旁边,两个人谁都没有说话。
他们沿着铜仁路往南走,经过了几个路口,拐进了一条安静的小路。路两旁是老式的石库门建筑,青砖墙上爬满了爬山虎。一只橘猫蹲在墙头,歪着头看着他们。
苏晓棠先开口了。
“你还好吗?”
沈清珩没有立刻回答。他走到路边的一个花坛边,坐了下来。
“我不知道。”
苏晓棠在他旁边坐下。
“我也是,”她说,“我今天来之前,以为最多就是搞清楚了那些数字是什么。没想到……我妈是‘创世者’。她把我变成了一个活的‘密钥’。”
“你难过吗?”
苏晓棠想了想。
“难过。但更多的是……愤怒。”她攥紧了手里的帆布包带子,“她在我三岁的时候就把这个东西塞进了我的身体里。她从来没有问过我愿不愿意。然后她死了。留下我一个人,什么都不知道地活了二十多年。”
沈清珩侧过头看着她。路灯刚刚亮起来,橘黄色的光照在她的侧脸上,把她的睫毛投下一小片扇形的阴影。
“如果你可以选择,”沈清珩说,“你宁愿不知道这些?”
苏晓棠沉默了很长时间。
“不,”她最后说,“我还是想知道。她是我妈。不管她做了什么,我都想知道她是什么样的人,她为什么这么做,她最后在想什么。”
她从帆布包里掏出那叠周给她的A4纸,在膝盖上展开。纸上的树状结构图在路灯下显得更加复杂了——那些密密麻麻的节点和连线,像是一张某种未知生物体的神经网络图。
“你能看懂这个吗?”她问沈清珩。
沈清珩接过那叠纸,一页一页地翻。
他是程序员。他看过无数的系统架构图、数据流图、UML类图。但这个图不一样——它不像任何他见过的架构图。它不是分层的,不是环形的,也不是网状的结构。它更像是一棵倒置的树,根系朝下伸展,每一层都在分裂成更细的根须。但那些根须不是向下生长的,它们是向上“吸附”的——像是在攀附某种沈清珩看不见的支撑结构。
“这个图不是平面的,”沈清珩说。
“什么意思?”
“你看,”他用手指沿着一条根须的走向移动,“这些线条不是二维的。它们之间有重叠、有交叉、有缠绕。这棵树不是画在纸上的——它是画在三维空间里的,只是被人投影到了二维平面上。”
苏晓棠歪着头看了半天。
“我怎么看不出来?”
“因为你没有写过程序,”沈清珩说,“程序员看架构图的时候,脑子里会自动构建一个三维的模型。这个图的设计者显然也是程序员,而且是一个非常非常厉害的程序员。”
“我妈妈。”
“应该是。”
苏晓棠安静了一会儿。
“那你能找到那个‘密钥匹配点’吗?”
沈清珩翻到了最后一页。最后一页上的节点已经稀疏了很多,只有七八个孤立的节点散落在纸面上,彼此之间没有连线。最底部有一个节点,被周用红笔圈了出来,旁边写着一个问号。
那就是“密钥匹配点”的位置——至少在纸面上。
但在真实的三维模型里,沈清珩“感觉到”那个点不应该在那里。那棵树的根须还在向下延伸,只是画图的人已经无法继续画下去了。不是因为没有空间,而是因为没有数据。
“我需要更多的信息,”沈清珩说,“周说你能‘感知’到那个点。你试过吗?”
苏晓棠摇了摇头。
“我不知道怎么试。他说要‘调动密钥’,但我完全不知道那是什么感觉。就像你让我动一下我从来没听说过的肌肉——我不知道它在哪里,不知道它怎么动,甚至不知道它是不是真的存在。”
沈清珩想了想。
“我们换个思路。你看到那些数字的时候——就是监控屏幕上出现的那些——是什么感觉?”
苏晓棠闭上眼睛,像是在努力回忆。
“就像是……突然多了几根手指,”她说,“你本来只有十根手指,突然之间多了三根。你不知道那三根手指从哪里来的,也不知道它们应该怎么用,但你能感觉到它们在那里。它们能摸到一些你以前摸不到的东西。”
“那些数字就是那种‘你以前摸不到的东西’?”
“对。以前我听车喇叭声,就是车喇叭声。但看到那些数字的时候,我能‘看到’喇叭声的形状。它是有波形的,有颜色的,有密度的。我甚至能‘看到’它是怎么从车里跑出来,怎么在空气中传播,怎么撞到我的耳膜上的。”
沈清珩的脑子里突然闪过一个念头。
“你现在还能看到吗?”
苏晓棠睁开眼睛,看了看四周。
“不能。没有下雨。”
“如果我们人为制造‘神陨雨’呢?”
苏晓棠愣了一下。
“你能制造那个?”
“我不能,”沈清珩说,“但‘盖亚指令’可以。”
他打开手机上的系统界面,进入了“工单大厅”。他没有接取任何工单,而是点开了一个工单的详情页面,然后往下滑到了最底部——那里有一行极小的灰色文字,写着:
“神陨雨”模拟参数:不可编辑。
不可编辑。
但可不可以“覆盖”?
沈清珩想起了今天早上修复声速异常时使用的方法——用新的代码覆盖旧的代码。如果“神陨雨”本质上也是一个系统参数,那理论上,他可以通过“代码注入”来修改它的触发条件。
这不是一个工单。这是一个他自己搭建的“私活”。
他需要一个“测试环境”。
“你知道这附近哪里有下雨的地方吗?”沈清珩问。
“下雨的地方?”苏晓棠被他这个奇怪的问题弄糊涂了,“你是说……人工降雨?”
“不。任何有水落下来的地方。喷泉、洒水车、消防栓——都可以。”
苏晓棠想了想。
“再往前走两百米,有一个小广场。广场中间有一个喷泉。那种往上喷然后落下来的那种。算吗?”
“算。走。”
---
喷泉广场不大,大约一个篮球场的面积。中央是一个圆形的喷水池,池子里的水很浅,大概只到脚踝。喷头每隔十几秒会喷出一束水柱,大约两三米高,然后在重力的作用下散开成无数细小的水珠,落回池子里。
广场上有几个遛狗的人和带着孩子玩的家长,但不算多。
沈清珩站在喷水池边上,打开了代码编辑器。
他没有接取任何工单,所以编辑器目前是“未激活”状态——灰色的界面,只有一个光标在闪。但他注意到,即使没有激活工单,他还是可以在编辑器里写代码。
只是代码不会被“提交”,而是会进入一个“待执行”的状态。
他需要找到一种方式,让这些代码被系统执行,而不是被系统当成无用的输入直接忽略。
他想起了周今天早上说的话:工单系统的派发算法是可以被操纵的。
如果他能把自己写的代码“伪装”成一个合法的工单,系统就会执行它。
就像是写一个SQL注入——把自己的查询语句伪装成程序预期的那部分字符串。
他开始写代码。
```javascript
// 创建一个模拟的“神陨雨”事件
let simulateRain = () => {
// 首先,定位到当前区域的天气控制系统
let weatherController = locate('weather.control', {
coordinates: [121.4532, 31.2318],
radius: 50
});
// 检查天气控制系统的当前状态
if (weatherController.status === 'idle') {
// 如果系统空闲,注入一个“神陨雨”的模拟参数
weatherController.inject({
eventType: 'godfall_rain_simulation',
duration: 30, // 持续30秒
intensity: 0.3, // 强度30%
particles: {
luminosity: true, // 粒子发光
code_trace: true // 粒子携带代码痕迹
}
});
}
};
```
他写完之后,没有点击“提交”——因为没有工单接取,提交按钮是灰色的。
但他发现,只要他在编辑器里保持这段代码,他的手机就会持续地向系统发送某种“心跳包”——像是在说:“我这里有一段代码,你要不要看看?”
他在等。
等系统“主动”来读取他的代码。
这个过程持续了大概两分钟。
然后喷泉里的水变了。
不是水的形态变了,而是水的“光”变了。那些水珠从喷头里射出来的时候,还是普通的透明的水珠。但在它们升到最高点开始下落的那一瞬间,每一滴水珠都亮了一下——像是有一盏极小的灯被短暂地点亮了。
蓝色的光。
和昨晚“神陨雨”一模一样的蓝色。
“有了有了!”苏晓棠的声音在旁边响起来,带着一种压抑不住的兴奋,“我看到了!我又看到那些数字了!”
沈清珩立刻看向她。
苏晓棠的眼睛瞪大了,瞳孔里反射着喷泉水珠发出的光芒。她的目光没有落在沈清珩身上,也没有落在喷泉上——她看的是一种沈清珩看不见的东西。
“你能看到什么?”沈清珩问。
苏晓棠没有说话。她的嘴唇微微张开,像是在默读什么东西。过了大概十几秒,她伸出手,指向了喷水池的东南角。
“那里,”她说,“有一个点。数字在那里最密集。像是一个……漩涡的中心。”
沈清珩走到她指的位置——喷水池东南角的一块普通的地砖上。他蹲下来,用手摸了摸那块砖。砖是湿的,表面有细小的裂纹。没有异常。没有光。什么都没有。
但在他的“代码感知”里——那种从他昨晚就开始逐渐清晰起来的、说不清道不明的感觉里——那块砖“下面”确实有什么东西。
不是地底下。是“系统层面”的下面。
像是程序里一个被注释掉的代码块。它还存在,但不会被执行。除非有人把它“取消注释”。
他打开编辑器,开始感知那个位置的“代码状态”。
这是一种很难描述的过程。不是用眼睛看,不是用耳朵听,不是用任何已知的感官。更像是——他在“读取”一个只有他能打开的数据库。信息不是以文字或图像的形式出现的,而是以某种更原始的、还没有被翻译成人类可感知信号的形式直接灌入他的意识。
他“看到”了一行代码。
不。不是一行。是一段。
一段被“注释”掉的代码。注释符是系统级别的——不是普通的//或者/* */,而是一种他从未见过的符号。那个符号像是一个枷锁,把这段代码锁在了“不可执行”的状态。
但这段代码的内容——他用他的权限去“读取”被注释的内容——让他整个人僵住了。
那段代码的开头是这样写的:
```javascript
/*
* 密钥匹配点 #001
* 绑定对象:苏晓棠
* 创建者:苏晚亭
* 创建时间:2024-03-15 23:47:21
* 状态:休眠
*
* 激活条件:苏晓棠的生物学特征 + 沈清珩的代码签名
*
* 功能描述:
* 当此密钥匹配点被激活时,它将打开一条通往“盖亚指令”递归内核的通道。
* 通道长度为7层递归。每深入一层,需要苏晓棠和沈清珩的共同协作用。
* 第七层递归的底部,是系统的原始启动代码。
*
* 警告:进入第七层递归后,无法保证安全返回。
*/
```
沈清珩盯着那段被注释的代码,一个字一个字地读了三遍。
“苏晓棠”三个字出现在第一行。
“沈清珩”三个字出现在激活条件里。
这不是巧合。
周说他不认识苏晚亭。但他的代码风格和苏晚亭一模一样。他的父母把他写进了系统的核心代码。苏晚亭把苏晓棠变成了一个活的“密钥”。
这不是两个人的命运被编织到了一起。
这是四个人——他的父母、苏晓棠的母亲——早在二十年前就把这一切设计好了。
他和苏晓棠的相遇,不是巧合。
他甚至不知道——苏晓棠是不是也不知道。她是不是被某种系统层面的“引导”安排到了他公司楼下的那个便利店?她是不是被安排在了他每天都会经过的地方?她是不是被安排成了那个“唯一能看到系统异常的非天命人”?
他的后背在发凉,但喷泉的水珠还在发光,苏晓棠还在那个“漩涡”的中心专注地“读取”着什么。
他不能在这里打断她。
他把这些念头压了下去。现在不是想这些的时候。现在要做的是——激活这个密钥匹配点。
激活条件是:苏晓棠的生物学特征 + 沈清珩的代码签名。
生物学特征。苏晓棠本人就在这里。那应该没问题。
代码签名。他的代码签名——那是什么?是他的天命人ID?是他的代码风格特征?还是其他更底层的东西?
他试着在那段被注释的代码上“写入”自己的“签名”。
没有反应。
他又试了一次——这次用的是他昨天晚上修复重力异常时的“感觉”。那种感觉像是他身体里有一个开关,打开之后,他就不再是一个普通的程序员,而是一个能触碰系统底层代码的“权限者”。
他把那种感觉“注入”到了那段代码里。
被注释的代码的外壳——那个像枷锁一样的注释符——出现了一道裂纹。
很小的一道裂纹。
但它出现了。
苏晓棠突然“啊”了一声,身体晃了一下,像是被什么东西轻轻地推了一下。
“怎么了?”沈清珩连忙站起来扶住了她。
“那个漩涡……它在动,”苏晓棠的声音有些发飘,“它刚才感觉到了你,像是在确认你的身份。然后它……打开了。很小很小的一条缝。但我能感觉到里面的东西了。”
“里面有什么?”
苏晓棠闭上眼,眉头紧锁,像是在努力听一个信号很差的电台。
“代码,”她说,“无数的代码。不是我能读懂的,但它们是有生命的。它们在呼吸。它们……在等我进去。”
沈清珩低头看向手机。
系统界面上出现了一条新消息——不是公告,不是工单通知,而是一条看起来像是系统“自动生成”的日志:
【递归入口#001】状态变更:休眠 →待激活(1/2)
等待第二验证因子:苏晓棠的生物特征确认
沈清珩把手机屏幕转向苏晓棠。
“它需要你确认。”
苏晓棠看着那行字,深吸了一口气。
“怎么确认?”
“我不知道。但系统说‘生物特征’——也许不是指纹或者虹膜那么复杂的东西。也许就是……你在这里。你主动地、有意识地,‘同意’它被激活。”
苏晓棠看着喷水池东南角那块普通的地砖,沉默了五秒钟。
然后她说了一个字。
“激活。”
像是琴弦被拨动的声音——不是从任何一个方向传来的,而是从四面八方同时涌来的低鸣。
那块地砖“亮”了。
不是发光。而是它上面的所有“信息”——它的颜色、材质、裂纹、被雨水侵蚀的痕迹——在一瞬间都变得“可见”了。不是用眼睛看得更清楚,而是沈清珩的“代码感知”能力突然扩展到了那块砖上,他能“看到”这块砖在系统层面上的全部属性:它的材质ID、它的坐标、它的创建时间戳、它的最后修改时间。
而在这块砖的“位置属性”里,多了一个新的字段:
recursive_entry: active
递归入口已激活。
喷泉的水珠还在发光。苏晓棠站在沈清珩的旁边,手指攥着帆布包的带子,指节泛白。她的脸上没有害怕,有一种沈清珩第一次在她脸上看到的神色——不是便利店收银员的那种温和的笑意,不是今晚说起母亲时的愤怒和悲伤,而是一种沉静的、近乎于固执的决心。
“你看到了吗?”苏晓棠的声音很轻。
“看到了。”
“那些代码下面的东西。”
沈清珩又“感知”了一下。在他刚才“打开”的那个入口下面,是苏晚亭描述的“递归内核”。七层递归。每一层都比上一层更接近系统的核心。第一层是物理规则的管理层——重力、摩擦力、热力学,所有他今天早上在天桥上修复过的东西,都在这一层。
第二层是概率和因果律。第三层是时间和空间的底层框架。第四层以上,他的“感知”变得模糊了,像是隔着一层磨砂玻璃在看东西。
第七层,他什么都看不到。
但在那里,在第七层的最底部,有一小片区域,连“模糊”都算不上——是一种“空”。不是不存在,而是他的权限不够,连“感知”到那片区域都不被允许。
那片区域,就是系统的原始启动代码。
苏晚亭说,那是“盖亚指令”的核心。是它第一次被启动时的那一行最初的指令。是它所有规则、所有逻辑、所有“自我意识”的源头。
如果能到达那里,就能看到系统为什么判断人类是“Bug”。就能看到它“格式化”人类的计划是真的还是假的。就能看到——能不能改变它。
周没有把这些告诉沈清珩。也许周自己也不知道。也许周知道,但选择不告诉他,因为这是一个一旦知道就不可能再回头的真相。
沈清珩把手机揣回兜里。
“先回去,”他说,“把今天看到的这些都告诉周。然后我们再决定下一步。”
苏晓棠点了点头。
她转过身,最后看了一眼喷水池东南角那块普通的地砖。在别人眼里,它只是一块砖。在她和沈清珩的感知里,它已经变成了某种完全不同的东西。
是一扇门。
一扇通往世界最深处、通往系统心脏、通往一个或许没有归途的地方的门。
他们沿着来时的路往回走。
走出广场的时候,沈清珩停下脚步,回过头。喷泉还在继续喷水,水珠还在发着微弱的光。有几个孩子在水池边跑来跑去,家长在后面喊“别跑太快小心摔倒”。
没有人注意到那些水珠在发光。
没有人知道那块砖下面有什么。
世界还在照常运转。人们在吃饭、在散步、在刷手机、在为明天的生活发愁。而就在他们脚底下几厘米的地方,有一扇门,通往这个世界的源代码。
沈清珩转回头,继续往前走。
苏晓棠走在他左边,步子不紧不慢。风吹过来,把她的马尾辫吹到了肩膀上。她伸手把头发别到耳后,动作很自然,好像今天什么都没有发生。
她忽然开了口。
“沈老师。”
“嗯。”
“如果我进了那个递归内核,回不来了——你会怎么办?”
沈清珩的脚步慢了一拍。
他想了想。
“我会把你拉回来。”
“如果你也进得去出不来呢?”
“那我们就一起想办法出来。”
苏晓棠笑了。不是便利店收银时的那种职业微笑,不是今天下午在地下室里勉强挤出来的那种苦笑。是一种真正的、带着一点孩子气的、相信他说的每一个字的笑。
“好,”她说,“说定了。”
沈清珩没有回答。他把手插进卫衣口袋里,攥紧了那张周给他的黑色卡片。
口袋里的手机震了一下。
他掏出来看。
是Z_HO发来的消息,只有一句话:
“你激活了001号入口。我‘看到’了。干得不错。但别高兴太早——系统也‘看到’了你们。从现在开始,你们被标记了。”
下面跟着第二条消息。
“回地下室。今晚有‘客人’要来。”