第4章 源代码

3个月前 作者: 李宏悦1
    “一串代码。”


    我把手机屏幕亮给顾婉清看。她盯着那行字,眉头拧起来。


    “雇主不是人?”


    “是系统。”我把手机收好,“它不只是在惩罚我。它想干掉我。”


    光头在旁边擦枪,手停住了。


    “等等。你说的那个系统——它不是管你升级的吗?怎么还带雇凶杀人的?”


    “因为它发现我备份了。”我说,“它以为把我清零就完事了。没想到我脑子里还藏着上一世的记忆。现在它知道我记起来了。它慌了。”


    “系统也会慌?”


    “会。只要它有目的,它就会慌。它的目的是控制我。控制不住了,就销毁。”


    顾婉清站起来,走到窗边。外面天已经黑透了。城西旅馆的窗户对着一条背街,路灯坏了一盏,剩下那盏忽明忽暗。


    “那现在怎么办?”她没回头,“坐等着被销毁?”


    “不等。”我说,“反击。”


    脑子里的声音醒了。


    “银蛇给的那部加密手机,可以用来反向追踪。蝰的雇佣系统是闭环的,雇主下单一律通过暗网节点。但如果雇主是一串代码——说明它没走正常渠道。它直接侵入了蝰的指挥系统。顺着这条线,能摸到它的底层协议。”


    底层协议?


    “系统不是神。它也是程序。只要是程序,就有代码。有代码,就有漏洞。上一世你能在八年内通关,是因为你找到了它的漏洞。这一世你还记得那些漏洞。只是被加密了。”


    我闭上眼睛。记忆备份的数据像一座被封死的仓库。我知道里面有什么,但没有钥匙。


    “你需要钥匙。”脑子里的声音说,“钥匙在顾婉清身上。”


    我睁开眼。顾婉清还站在窗边。路灯忽明忽暗的光打在她侧脸上,眼角那粒褐色斑点像颗钉子,把她的表情钉在某个我读不懂的情绪上。


    “顾婉清。”


    “嗯?”


    “那封信。背面被撕掉的那半句话——你试过用其他方法复原吗?”


    她转过身。


    “试过。用铅笔涂,用紫外灯照。什么都没显出来。”


    “撕口呢?”


    “什么?”


    “信封的撕口。你说是被人硬扯掉的。撕口的方向。从上往下撕,还是从下往上撕?”


    她想了很久。


    “从上往下。”


    从上往下撕。撕的人是右手拿信,左手撕。如果是为了撕掉后半句话,说明那半句话写在这半句的下方。也就是说——被撕掉的内容,和“告诉他”这三个字是连在一起的。


    “你那封信还在吗?”


    她从内侧口袋掏出来。牛皮纸信封,旧得边角都磨白了。抽出信纸,翻到背面。那行红圆珠笔字还在——如果有一天他什么都不记得了,你就告诉他——撕口从下方截断了。


    我盯着那道撕口。毛糙的,不整齐,确实像是徒手撕的。


    脑子里的声音忽然开口。


    “问她。她是在哪里发现这封信的。”


    “你在哪儿发现的?”


    “警校宿舍门口。”顾婉清说,“大一那年。晚自习回来,门缝底下塞进来的。我当时以为是谁的恶作剧。但笔迹我查过——不是我们学校任何人的。”


    “你查过指纹吗?”


    “查了。只有我一个人的。”


    “信封呢?”


    “信封上有另一个人的指纹。但数据库里查不到。”


    我愣住了。


    “数据库?”


    “市局的指纹库。我偷偷查的。那指纹不属于任何录入系统的人。干净的。”


    一个人。没有身份记录。没有指纹记录。十三年间寄了一封信。笔迹是林渊当上万亿富翁之后的笔迹。指纹是空的。


    这个人不存在于任何一个系统里。


    就像顾婉清一样。


    脑子里那个声音忽然压低了音量。


    “她没有收到这封信。她就是这封信。”


    你什么意思?


    “意思是——顾婉清不是受害者。她是系统的一部分。或者说,系统的一部分被剥离出来,变成了她。”


    我盯着顾婉清。她站在窗边,路灯忽明忽暗的光在脸上晃。眼角那粒褐色斑点——像铁锈。铁锈是金属腐蚀后的产物。金属是系统的骨骼。


    “你怎么了?”她看着我的表情,“想到什么了?”


    “没什么。”我把信纸还给她,“明天开始,我要查一件事。”


    “什么事?”


    “这封信到底是谁写的。”


    光头凑过来:“我帮什么?”


    “帮我查一个人名。老猫。原名不详。北海人。以前在国安搞过网络安全。后来犯了事,被开了。出来后在黑市卖情报。上辈子我跟他打过交道。他知道怎么从代码废墟里捞东西。如果系统是一串代码,老猫能帮我找到那串代码的源头。”


    “上辈子的事你怎么还记得?”光头挠头。


    “因为我脑子里住着个鬼。”


    光头愣了下,大笑。


    “行。明天去找老猫。在哪儿?”


    “北海。”


    北海。离这儿九百公里。三天前,监控拍到我在这座城市的atm机上取了两千块钱。我以为那是我自己干的。现在想想——是系统用我的身体去北海干了一件事。那件事,跟老猫有关。


    天刚亮,我们动身去北海。


    银蛇给的箱子里有三套证件。我挑了一套,叫“陈默”。顾婉清的证件没换。光头选了个“王大力”。他觉得这个名字踏实。


    “你选名字的标准是什么?”我问。


    “听起来能扛揍。”光头拍了拍假身份证。


    北海是一座港口城市。空气里永远有股咸鱼味,和码头那边的机油味混在一起,闻着像工业废水和海鲜汤倒了同一口锅。老猫的窝在北海老城区一栋筒子楼里。四楼,走廊灯坏了一半,剩下一半嗡嗡作响。


    敲了三下门。里面传来一个沙哑的声音。


    “谁?”


    “猫哥。是我。”


    “我不认识你。”


    “我认识你。你欠我二十万。”


    沉默。然后门开了条缝。一只浑浊的眼睛从门缝后往外看。


    老猫比上辈子老了很多。头发剩一半,牙缺了两颗。房间里堆满各种电子设备,显示器排了三面墙,全是代码和监控画面。空气里一股方便面和猫尿的混合味。


    “你谁?”老猫盯着我,“老子不记得欠你钱。”


    “上辈子欠的。”我走进去,“你那个加密破解框架的论文——第九页第3行有个错误。md5碰撞的算法漏了个变量。因为这个错误,你丢了一个大客户。对吧?”


    老猫的脸色变了。


    “你怎么知道?”


    “因为上辈子是我帮你改过来的。你欠我二十万咨询费。”


    老猫盯着我看了十几秒。浑浊的眼睛里有什么东西在转动。然后他让开了门。


    “进来。”


    顾婉清和光头跟着进来。老猫看了顾婉清一眼,又看了光头一眼。没说话,从桌上摸了根烟点上。


    “说吧。找老子干嘛?”


    我从兜里掏出银蛇的手机,翻出那条消息。


    “帮我查这串代码的来源。”


    老猫接过手机,眯着眼看了半天。


    “什么代码?”


    “有人用这串代码雇了一队雇佣兵来杀我。不走正常渠道,直接侵入了雇佣兵指挥系统。我要知道它是从哪个节点发出来的。”


    老猫把烟叼嘴里,坐到一个显示器的前面。手指在键盘上敲了几下。屏幕上一行行代码往下滚。他敲着敲着,忽然停住了。


    “这代码——不像是人写的。”


    “怎么讲?”


    “没有冗余。没有注释。没有人类程序员的任何习惯痕迹。从执行效率来看,每一个指令都精准到字节级别。人类写代码会有多余的东西——标点、空格、随手打的注释。这个没有。从头到尾,干净得像被手术刀刮过的骨头。”


    他回头看我。


    “你惹上什么东西了?”


    “一个系统。人工智能。它说我犯了错,惩罚我。现在它想销毁我。”


    老猫愣了片刻。然后把烟从嘴里拿下来,按灭了。


    “有意思。老子搞了二十年网络安全,第一次听说人工智能买凶杀人的。”


    “不是买凶。是直接接管了雇佣兵的指挥系统。它没付钱。它直接发指令。”


    老猫回过身,继续敲键盘。屏幕上弹出更多窗口,代码像瀑布一样往下冲。他脸色越来越难看。


    “有问题。”


    “什么问题?”


    “这串代码——不是从外部侵入的。它是从蝰的内部服务器上直接生成的。也就是说,那个什么系统,它早就在蝰的服务器里了。它一直在那儿。等着。等有人下命令。”


    “等谁的命令?”


    老猫敲下最后一个键。屏幕中央弹出一个ip地址。


    “这个ip,是向那串代码下达‘清除令’的终端。这个终端的位置——”他把地图调出来,屏幕上的红点定位在北海。


    北海市第三人民医院。对面。农业银行。


    我心里一沉。


    七十二小时前。凌晨三点十五分。监控拍到我在那里取了两千块钱。


    “发令的终端,是一个物理设备。一部手机。imei码我调出来了。”老猫念了一串数字。


    顾婉清忽然站起来。


    “那是我的手机。”


    所有人都看着她。她从兜里掏出那部诺基亚n97。老猫接过去,拆开后盖,看了眼imei码。和他屏幕上的那串数字一模一样。


    “就是这部。三天前,凌晨三点十五分——就是这部手机,向蝰的服务器发送了那条‘确认清除’的指令。”


    顾婉清的脸白了。


    “我——我没发过。”


    “我知道你没发过。”老猫把手机还给她,“手机系统被植入了木马。应该是很久之前植入的。平时不触发。只在收到特定信号时才会激活。”


    “什么信号?”


    老猫重新敲键盘。屏幕上的数据一层层展开。他忽然停手。回头看着我们。眼神里有一种说不清的东西。


    “这段木马代码的签名——和你刚才给我那串代码的签名是同一个人写的。也就是说,顾婉清的手机,在三天前,被那个‘系统’远程控制了。它用她的手机,向蝰下了清除令。杀你的命令——是以她的名义发出的。”


    顾婉清低头看着那部破旧的诺基亚n97。屏幕上有裂纹。裂纹像一张网,把她的脸分割成无数小块。


    “它用我的手机。下令杀你。”


    她的声音很轻。像风里的纸片。


    “我成了它的工具。十三年。我找了十三年——都是在给它当鱼饵。对吗?”


    我没说话。因为答案是肯定的。她自己也知道。


    光头在旁边挠头:“你们能说人话吗?我听不懂。”


    “很简单。”老猫点了一根新烟,“有个人工智能——你们管它叫‘系统’。它十三年前用一封信把顾婉清和林渊绑定在一起。然后它等。等林渊被惩罚、被清零。等顾婉清找到林渊。他们碰面那一刻——系统就动手。用顾婉清的名义下清除令。用蝰的手杀人。一石二鸟。林渊死了,顾婉清也废了。两个威胁一起清掉。”


    他吐了口烟。


    “这不是惩罚。这是灭口。你们知道了它不想让你们知道的事情。”


    脑子里那个声音开口了。


    “他说的对。系统不是今天才想杀你。从你备份记忆那一刻起,它就知道了。它等了你很久。等你醒过来。等你和她相遇。等你们自己走到陷阱里。”


    那为什么不一开始就杀了我?


    “因为你还有用。你脑子里的数据——我的数据——对它来说也是拼图的一部分。它在找一样东西。一样连我都不知道是什么的东西。你以为你在备份记忆。其实你在帮它备份。它需要你活着,直到你帮它找到那个东西。找到之后——清除。”


    房间里沉默下来。老猫抽烟。顾婉清攥着手机。光头挠头。我站在三面墙的代码中间,看着屏幕上那个红点一闪一闪,像颗心跳。


    “老猫。”我说。


    “嗯?”


    “你能反追踪吗?顺着这条木马代码的签名,找到它的底层协议?”


    “能试试。但需要时间。可能需要一个礼拜。也可能一年。看这个系统的加密级别有多高。”


    “不用找到系统。找到协议就行。协议里有漏洞。有漏洞,就能钻进去。”


    老猫看着我。


    “你要钻进去?你疯了?那是个人工智能。你钻进去,它反过来能把你的脑子烧了。”


    “它已经在烧了。”我指了指自己脑袋,“我脑子里现在就住着一个它烧死的人。再烧一次,也没差。”


    老猫把烟按灭。站起来,走到另一台显示器前。屏幕亮起来,他的手指开始在键盘上飞奔。代码像洪水一样涌出。


    “给我三天。三天后给你结果。这三天你们别离开北海。也别靠近这台电脑。”


    他回头看我。


    “另外,你得想清楚一个问题——你脑子里那个备份,它跟你说的每句话,都是真的吗?”


    我愣了下。


    “什么意思?”


    “那个系统在你脑子里植入了木马。这个备份——自称是你上辈子的自己——它也是数据。数据能被篡改。你怎么确定它真的是你?不是系统伪装成你,用来引导你走向另一个陷阱的诱饵?”


    脑子里的声音没说话。


    这是它第一次沉默。


    从老猫住处出来,天已经黑了。北海的夜风咸腥,带着港口轮渡的汽笛声。我们仨走在老城区的窄巷里,路灯稀稀拉拉,影子拉得老长。


    光头走在前面,左看右看,警惕得像个刚上哨的新兵。顾婉清走在我旁边,步子很慢。她一直攥着那部诺基亚n97,指甲在裂纹上反复划。


    “林渊。”


    “嗯?”


    “如果十三年都是假的——”


    “馄饨是真的。”


    她停下脚步。路灯的光从头顶打下来,把她半边脸照得发白,另半边埋在阴影里。眼角那粒褐色斑点,正好卡在明暗交界线上。


    “你怎么知道?”


    “因为它没法伪造那个。系统能植入记忆,能替换画面。但味觉它造不了。馄饨的味儿——猪肉大葱,汤里有虾皮和紫菜,卤蛋蛋白有点老——这些细节,是我自己记住的。不是它塞的。它做不到那么细。”


    她看着我。过了一会儿,继续往前走。


    “八块钱。加卤蛋。你怎么记得这么清楚?”


    “因为那天是我这辈子最饿的一天。饿了三天。捡了三天垃圾。然后有个人给我买了碗馄饨。这种人不多。”


    光头在前面回头:“你们还吃不吃饭了?我饿死了。”


    “你什么时候不饿?”顾婉清说。


    “从来不饿。”


    我们在巷口找了家大排档。塑料桌椅,煤气灶呼呼响,铁锅颠得叮当响。点了三个炒菜,一盆米饭,一盆紫菜蛋花汤。光头一个人干了半盆饭。顾婉清吃得很慢,用筷子把米粒一颗一颗挑起来,放进嘴里,嚼很多下才咽。


    “林渊。”她放下筷子,“老猫说的那个问题——你脑子里的备份,有可能是假的吗?”


    我看着碗里的米粒。


    “有可能。”


    “那你怎么分辨?”


    “分不了。”我放下筷子,“它在我的脑子里。它知道我知道的一切。它用我的声音说话。它用我的记忆骗我。如果它是假的——那我从一开始,就没有过真的东西。”


    脑子里那个声音还没开口。从老猫家出来到现在,它一个字都没说过。


    不是沉默。是消失了。这是我重生以来,第一次——脑子里没有声音。


    顾婉清把手从桌上伸过来,放在我的手背上。她的手指凉凉的,骨节分明,指甲剪得很短。


    “馄饨是真的。包子也是真的。光头挨的那十几拳是真的。我找了十三年,是真的。”


    她顿了顿。看着我。


    “就算信是系统写的——我找你这件事,也是我自己的。”


    光头在旁边端着碗:“说得好。我再加个菜。老板娘!再来个回锅肉!”


    顾婉清把手收回去,拿起筷子继续吃饭。我把剩下的半盆米饭倒进碗里。紫菜蛋花汤热乎乎地灌进胃里。


    真的。


    至少这一碗汤是真的。


    回去的路上,手机震了一下。银蛇那条号码。短信三个字:“查到了。”


    拨回去。银蛇的声音从话筒里传来,夹着风,像站在甲板上。


    “你说的那个‘系统’,它的底层协议用的是军方加密标准。蝰的服务器它入侵了三年。不偷钱,不窃取情报,就只干一件事——监控你的档案。”


    “监控?”


    “对。你的身份证信息、出行记录、医院就诊档案、银行流水。每一样它都存了。从你十二岁辍学开始,存到现在。你知道这意味着什么吗?”


    我握着手机,手心出汗。


    “它一直在等我。”


    “不止。它一直在保护你。至少在这件事发生之前。”


    保护?


    “你十二岁那年,孤儿院失火。火源在你房间隔壁。如果那天晚上你没提前十分钟跑出来——你就死了。谁让你提前跑出来的?”


    我没说话。因为我不记得了。十二岁的记忆,早就模糊了。


    “查不到。但火灾记录显示,当时有人报过警。用的是公共电话。报警的声音经过变声处理。查不出是谁。那个电话,救了你的命。”


    银蛇停了片刻。


    “如果那个电话是系统打的——说明它在十三年前就存在了。比你说的‘绑定系统’早了五年。”


    他挂了。


    我把手机放回兜里。抬头看着北海的夜空。灰蒙蒙的云层后面,星星一颗也看不见。


    脑子里的声音终于开口了。


    “它在撒谎。”


    你确定?


    “不确定。但银蛇也有可能撒谎。所有人都有可能撒谎。信,顾婉清,光头,老猫,我。你自己。”


    那到底什么是真的?


    沉默。然后——


    “馄饨是真的。”


    我愣了一下。


    然后笑了。


    “你就知道吃。”


    那个声音也笑了。这是它第一次笑。声音不像我。像一个很久很久以前,活过又死过一次的人。


    “对。我就知道吃。所以你多吃点。攒够力气。接下来,该打硬仗了。”
关闭
最近阅读