亲,双击屏幕即可自动滚动
正文 第18章 技术难题
    沈易是第三天下午回来的。

    

    他没走正门——地下室的门框已经被林劫撞歪了,锁舌卡不住,一推就开。但沈易还是习惯性地用指节敲了两下门框,像进别人家之前先打招呼。然后拎着两个塑料袋走进来,一袋是罐装咖啡和压缩饼干,另一袋是一台老旧的便携服务器,外壳上贴着墨影技术组的资产标签,边角磨得露出了底下的金属。

    

    林劫坐在屏幕前面,背对着门。听见动静没回头,只是把手里正在写的一行代码敲完。屏幕上开着三个窗口:左边是林雪的锚点环境,海浪一下一下拍着沙滩;中间是陈博士的权限节点拓扑图,密密麻麻像一棵倒着长的树;右边是一个新建的文档,光标停在第四百多行的位置,最后一行写到一半就卡住了。

    

    沈易把塑料袋放在地上,拉了一把椅子坐下来,点了一根烟。“先生给了权限节点图。早期架构,陈博士上传之前留的。完整度大概七成,有三成交接的时候被覆盖了。”

    

    林劫把椅子转过来。三天没刮胡子,下巴上的胡茬从青黑色变成了灰蒙蒙的一片。眼睛里的血丝比之前少了一点,但眼眶更深了,颧骨也更凸了。他伸手从沈易的烟盒里抽出一根,叼在嘴里,没有点。“哪三成?”

    

    “核心认证层。”沈易吐出一口烟,烟雾在屏幕的冷白色光里慢慢散开。“陈博士把自己的生物特征——指纹、虹膜、声纹、心跳节律——全部数字化了,做成了认证密钥。上传之后,这套密钥应该跟着他一起融进了系统底层。但交接的时候,有一部分被新系统覆盖了。不是被删了,是被压在

    

    “像被水淹了。”

    

    “对。数据还在,但读不到。系统读到那一段的时候会自动跳过,因为新的权限协议告诉它那部分是无效的。”

    

    林劫把没点的烟从嘴里拿下来,在手指间转了两圈。他在想一件事。陈博士上传自己的时候,是一个人走进那间实验室的,还是被人推进去的?实验日志里写的是“自愿上传”,但陈博士的实验日志里没有一句是实话。P-0000的备注栏里那行字他还记得——“状态:已融合”。不是“已上传”,不是“已转化”,是“已融合”。像一滴墨掉进一杯水里,墨水还在,但你再也没办法把它单独捞出来。

    

    “被压在

    

    沈易的烟停在嘴边。“吸收?”

    

    “陈博士上传之后不是变成了系统的一部分,是被系统消化了。他的权限还在,但不是作为一个独立的密钥存在——是分散在系统底层的代码里,跟其他东西长在一起了。”林劫把烟放在桌上,转过身,把中间那个拓扑图的窗口放大。“你看这个。他的权限节点不是集中在一个区域,是散开的。像树根一样扎进系统的各个底层模块里。新系统覆盖不了这些根须,只能绕过它们,在上面铺一层自己的协议。”

    

    “所以权限还在,只是没有一条路能通到那儿。”

    

    “路被新系统盖住了。”林劫的手指在触摸板上划了一下,拓扑图上浮现出一层半透明的红色标记。“这些是新系统的权限协议。你看它们怎么分布的——不是随机覆盖,是专门绕开了陈博士的根须,但又把每一条根须的末端都压住了。不是删不掉,是不删。”

    

    沈易盯着那层红色标记看了一会儿,烟灰掉在膝盖上没有察觉。“因为删了会出事。”

    

    “对。陈博士的权限根须已经和系统底层的核心功能长在一起了。强行拔掉,整个系统会像被抽了筋一样瘫掉。所以新系统选择压住它。让它还在,但够不着。”

    

    林劫把拓扑图缩小,露出整个权限结构的全貌。陈博士的根须在最底层,密密麻麻,像一棵倒着长的榕树。新系统的红色协议压在它上面,像一层冰,把树根冻在底下。而林雪的基础人格框架——那个被锁在独立分区里的部分——就悬在这两层之间。往上够不着新系统的权限,往下触不到陈博士的根须。

    

    “她被困在夹层里了。”林劫说。

    

    沈易把烟掐灭在椅子扶手上,烫出一小片焦痕。他没有道歉,林劫也没在意。“要打开那个分区,必须用陈博士的权限。但陈博士的权限被新系统压住了。你要用他的权限,就得先把新系统那层协议掀开。”

    

    “掀开会触发清除协议。”

    

    “对。那层红色协议不只是压住陈博士的根须,它还连着系统的安全监控模块。任何对它的非授权访问——哪怕是碰一下——都会触发清除协议,把夹层里的所有东西一次性删干净。包括林雪的基础人格框架,包括那二十六个残缺体。”

    

    沈易沉默了一会儿。窗外天已经暗了,锈带区的夜晚来得早,废弃厂房的影子把地下室的窄窗遮得严严实实。日光灯还在闪,那根老化的灯管发出细微的电流声,像一只虫子在玻璃上撞。

    

    “有没有可能不掀开它?”沈易问。“不碰那层红色协议,直接绕过它,从底下把陈博士的根须接上来?”

    

    “想过。”林劫把拓扑图又放大,聚焦在红色协议和系统底层之间的夹缝。那里有一片极窄的灰色区域,没有任何标记,没有任何节点,像两栋楼之间的防火巷。“这片区域是系统日志的缓冲区。读写频率极高,数据在这里停留不超过零点三秒就会被刷新。理论上可以通过这里接入陈博士的根须——不是直接读取,是监听。像把耳朵贴在墙上,听隔壁在说什么。”

    

    “能听到什么?”

    

    “权限握手的数据包。陈博士的根须虽然被压住了,但它还在工作。系统底层每隔一段时间会尝试跟它建立连接,每次尝试都会产生一组握手数据。那组数据里包含了陈博士权限密钥的碎片。如果能截取足够多的碎片,理论上可以拼出一把完整的钥匙。”

    

    沈易把烟头从扶手上抠下来,扔进垃圾桶。“理论上。”

    

    “对。理论上。”林劫的声音很平。“实际操作有三个问题。”

    

    他竖起一根手指。指关节上的痂已经脱落了,露出底下新长出来的粉色皮肤,和周围粗糙的指节形成鲜明的对比。“第一个问题,时间窗口。握手数据在缓冲区停留不超过零点三秒。要在零点三秒内完成捕获、解包、校验、存储,然后等下一次握手。陈博士的根须每四到六小时才尝试握手一次,每次只交换不到两百个数据包。按这个速度,要截取足够拼出完整密钥的碎片,需要至少四十天。”

    

    第二根手指竖起来。“第二个问题,新系统的安全监控模块虽然不会监控缓冲区——那是系统自己的日志区,不在红色协议的覆盖范围内——但它会监控握手的频率。如果握手频率出现异常,比如短时间内被反复触发,监控模块会判定为入侵尝试,直接冻结整个权限层。到时候不只林雪,所有被锁在夹层里的残缺体都会被一起冻住。”

    

    第三根手指。这根手指上还留着一点干涸的血迹,是前几天砸墙时留下的,洗了几遍没洗干净。“第三个问题。就算截取到了足够的碎片,拼出了完整密钥,这把钥匙也只能用一次。新系统的安全协议是动态更新的,任何一次成功的非授权访问都会被它学习,然后堵上漏洞。第二次就用不了了。”

    

    沈易靠在椅背上,盯着天花板上的水渍。那片水渍的形状像一张模糊的脸,嘴张着,像在喊什么但喊不出声。“所以你要在四十天里,用每次不到零点三秒的时间窗口,截取几百次握手数据,拼出一把钥匙。然后这把钥匙只能用一次。你必须在那一次里把林雪和二十六个残缺体全部转移出来,一个不落。”

    

    “一个不落。”林劫说。

    

    日光灯闪了一下,灭了半秒,又亮起来。沈易从塑料袋里拿出一罐咖啡,拉开拉环,递给林劫。林劫接过来喝了一口,是常温的,苦味在舌尖炸开。他想起陈博士的实验日志里那行备注——“常温,加一份糖浆”。他把咖啡罐放在桌上,没有再喝。

    

    “还有第四个问题。”林劫说。

    

    “什么?”

    

    “转移出来之后放哪儿。”他把椅子转回去,面对着屏幕。左边的锚点环境里,林雪的残影还坐在木桌旁边,手里握着那只橘子。橘子皮上的指甲印又多了两道,总共七道了,像她在数什么。“锚点环境是我用陈博士实验室的废弃服务器搭的。那些服务器本来就是‘蓬莱计划’淘汰下来的旧设备,稳定性很差。我一个人格的锚点环境就已经占用了将近百分之六十的算力。如果再把那二十六个残缺体全部拉进来,服务器会在四十八小时内过载宕机。”

    

    沈易把手里的咖啡罐转了两圈。“墨影有自己的服务器集群。先生那边——我可以去谈。”

    

    “先生不会白给。”

    

    “对。他要你入伙。不是挂名,是正式加入墨影技术组,替他们干活。”

    

    林劫没有说话。屏幕上林雪的残影把橘子换到左手,右手在桌面上轻轻划了一下,像在画什么。他想起P-0112,那个在白色地板上画了两扇窗户的女人。她的重置路径已经被他改了,窗户不会消失了。但她还在画吗?还是站在窗户前面,手指放在画出来的窗框上,等着它打开?

    

    “我加入。”他说。

    

    沈易的咖啡罐停在嘴边。“你想好了?”

    

    “我需要服务器。墨影有。墨影需要我。我有技术。这不是加入,是交换。”

    

    “先生不会这么看。他会觉得你终于想通了,终于愿意站队了。他会给你资源,给你保护,给你在组织里的位置。然后有一天,他会让你做一件你不愿意做的事。到那时候,他会说——你已经是我们的人了。”

    

    林劫把没点的烟从桌上捡起来,叼在嘴里。“到那时候再说。”

    

    沈易看了他几秒钟,然后把咖啡罐里的最后一口喝完,捏扁,扔进垃圾桶。“我去约先生的时间。”

    

    他站起来走到门口,停下来,背对着林劫。“你刚才说四十天。从什么时候开始算?”

    

    林劫看着屏幕上那个拓扑图。红色协议和陈博士根须之间的灰色夹缝,像一道还没愈合的伤口。“从今晚开始算。”

    

    沈易没再说什么,拉开门走了出去。楼道里的脚步声一下一下踩在台阶上,越来越远。日光灯闪了一下,电流声滋滋响。屏幕上的海浪还在一下一下拍打着沙滩,灶台上的面已经坨了很久,碗沿结了一层干掉的汤渍。

    

    林劫把烟点着了。第一口烟雾吸进肺里,呛得他咳了两声。他已经很久没抽了,嗓子不适应。但他没有把烟掐灭,只是夹在指间,让它自己慢慢燃着。烟雾在屏幕的冷白色光里升起来,散开,像往一杯清水里滴了墨。

    

    他打开那个写到一半的文档。光标停在第四百多行的位置,最后一行是:“//问题:如何在不触发安全监控的前提下,将握手频率提升至足以在四十天内完成密钥捕获的水平。”

    

    他在

    

    “//方案A:分散触发。在多个节点同时监听握手数据,将捕获任务分摊。问题:节点之间无法通信,数据碎片需要手动汇集。时间成本翻倍。”

    

    “//方案B:伪装握手。伪造系统底层的握手请求,诱使陈博士根须主动响应。问题:伪造的握手请求会被红色协议识别为异常流量,触发清除。”

    

    “//方案C:等待系统自行提升握手频率。系统底层在高负载状态下会加快握手频率以维持权限同步。问题:高负载状态不可控,无法预测何时发生。”

    

    他停了一下,烟灰掉在键盘上,他用小指轻轻拂掉。

    

    “//方案D:制造一场可控的高负载。”

    

    打完这行字,他把手从键盘上拿开,靠在椅背上。烟在指间燃了半截,烟灰摇摇欲坠。窗外已经完全黑了,锈带区的夜晚没有霓虹,只有远处偶尔闪过几盏巡捕无人机的蓝色尾灯,像掉进水里的火星,亮一下就灭了。

    

    制造一场可控的高负载。意思是对龙吟系统发动一次攻击,规模要大到足以让系统底层进入高负载状态,加快握手频率。但又不能太大,不能触发系统的防御反击,不能引起巡捕的注意,不能让“宗师”察觉到有人在它的血管里钓鱼。

    

    他以前做过这种事。在黑进陈博士数据库的时候,在改掉残缺体重置路径的时候。但那些都是小规模的,针对的是边缘节点,像在城墙底下挖老鼠洞。这次不一样。这次他要碰的是系统底层,是陈博士根须和新系统红色协议交缠的那片灰色地带。任何一点失误,都会被放大成一场灾难。

    

    不是他自己的灾难。是林雪的,是那二十六个残缺体的。是那些被关在白色房间里、刚刚发现绳子断了、刚刚开始画窗户的人们的。

    

    林劫把烟掐灭在空咖啡罐里。烟头碰到罐底残余的咖啡,发出一声很轻的嘶响。他把文档往上翻,翻到最开头,那行他几天前打下的标题。

    

    “解放而非毁灭。”

    

    光标停在这四个字后面。他开始写具体的方案。不是代码,不是攻击脚本,是步骤。每一步要做什么,每一步可能出什么问题,出了问题怎么应对。像一个人站在悬崖边上往下看,不是看风景,是画地图。画一条从崖顶到谷底的路,知道每一步踩在哪里不会掉下去。

    

    写到最后,他加了一行。

    

    “如果失败,触发清除协议,所有残缺体数据将被永久删除。包括P-0089。包括P-0039。包括P-0112。包括——”

    

    他把这行删了。不是因为它不真实,是因为它太真实了。真实到他不忍心写下来。但他的手记住了那行字的位置,他的眼睛记住了那行字的形状。他会在梦里看到它,一遍一遍,像P-0112画在白色地板上的窗户。画了两年,七百多扇。一扇都没有打开过。

    

    林劫保存文档,关掉,然后重新打开锚点环境。林雪还坐在那里。橘子上的指甲印又多了一道,八道了。她在数什么?他忽然想问她。不是用代码,不是用语音输入,是用只有他们两个人知道的方式。他把手放在屏幕上,按在她手的位置。

    

    她没有抬头。但手里的橘子动了一下——橘子皮上又多了一道印子。

    

    九道。

    

    像在回答。

    

    林劫把手收回来。日光灯闪了一下,电流声滋滋响。屏幕上那个拓扑图还开着,红色协议和陈博士根须之间的灰色夹缝,像一道还没愈合的伤口。他把手放回键盘上,开始写第一行代码。

    

    窗外,锈带区的夜晚安静得像一口枯井。远处的巡捕无人机尾灯闪了一下,灭了。
为您推荐