节点1(580字)
布伦南在自己那间堆满文件、只有一盏旧台灯作为主要光源的办公室里等了大半个下午。许文杰的飞机在当地时间下午两点四十分降落,现在快五点了,他还没收到任何消息——不是许文杰不守约,是入关、取行李、打车到城里需要时间。布伦南在等的这段时间没有干坐——他打开FBI内部数据库,输入了一个名字,按下搜索键。
*"谢尔盖·米哈伊洛维奇·沃罗诺夫"——搜索结果:零。*
没有犯罪记录,没有调查档案,没有FBI的正式关注名单记录。对于一个前苏联司法部官员、现为某寡头家族法律顾问的人来说,这本身就不正常——以他在这个行业的位置,即使没有案底,至少应该有一条"曾出现在某某案件的关联方名单中"的交叉引用记录。
布伦南换了一个搜索策略——他搜了"Воронов, Сергей Михайлович"的西里尔字母拼写版本。这次出现了结果:三条。
三条结果都不是FBI的记录——是FBI从其他来源获取的情报摘要中"被提及的名字"。第一条:来自一份三年前的CIA报告,内容是关于俄罗斯资金流动的一份综合性分析——谢尔盖的名字出现在一个脚注里,注释是"此人据信与某未被公开姓名的商业集团有法律顾问关系"。第二条:来自一份NSA的通信元数据报告——一个使用某特定加密通信工具的账号的注册姓名是"Sergei Voronov",注册时间2019年。第三条:来自DHS的一份备忘录——内容关于"俄罗斯籍法律专业人士在第三国金融交易中的潜在角色"——谢尔盖的名字出现在一个列表里,没有上下文,只是一个名字加上一个标注:"已被关注,不主动调查"。
布伦南靠在椅背上,咀嚼着那个标注:"已被关注,不主动调查"——这意味着有更高级别的机构已经标记了谢尔盖,但选择不采取行动。为什么?可能是因为他在被用作更高级别的情报源,也可能是他还没越过某条他们设定的阈值线。
他关上屏幕,在面前的便签纸上写了一行字:*"S.V.——三份文件中被提到,三份都不来自FBI。有人在更高的层面关注他。"*
然后他站起来,拿起外套。许文杰应该到了。
节点2(600字)
许文杰推门走进咖啡馆的时候,布伦南已经在那里坐了二十分钟。他选的位置是那家店最深处的角落——不是靠窗,不是靠门,是那个可以看到整间店面和入口但自己处在阴影中的位置。他不是在保持低调——他是在遵守他自己的规矩:在任何非正式的见面中,永远先到场,永远背对墙,永远面朝门。
许文杰看起来有时差——眼袋明显,眼皮有点沉,但眼神不是疲惫的,是那种完成了某件大事之后特有的平静。他没有点咖啡,直接从外套内袋里拿出了一个信封——牛皮纸,标准尺寸——放在桌上,推到布伦南面前,没有寒暄,没有"路上怎么样",第一句话就是:
"情报是真的。严世魁在莫斯科的资金网络——三层。我带回了第一层和第二层的数据。"
布伦南没有伸手碰那个信封。他先看许文杰的眼睛——不是在观察他的表情是否诚实,是在确认他有没有在莫斯科受到某种程度的"影响"——药物、胁迫、收买。在FBI干了二十三年,他见过太多第一次做线人的人在完成第一次交易后眼睛里出现的那种光——不是胜利的光,是"我跨过了某条我从来没想过会跨过的线"的光。
他在许文杰的眼睛里看到了那种光。很微弱,但存在。
然后他问——语气平淡,像是在问一个同事"下午的会议几点":"你做了交易?"
"是。"
"给了他什么?"
"LexBot俄语试用版。30天。有限功能——基础合同审查模块。沙盒数据——不连真实用户。不给核心引擎,不给源代码。"
布伦南没有马上说话。他在脑子里把许文杰说的那串条件对应到EAR出口管制条款的框架里过了一遍——不是法律分析,是一个有经验探员的直觉判断:这个配置大概率不构成明显的违规,但取决于"沙盒数据"的具体定义和"有限功能"的边界——细节决定灰色地带的深浅。
然后他伸手拿起了那个信封。
节点3(620字)
他没有在咖啡馆打开信封。他付了自己的咖啡钱——六美元,现金,不找零——然后站起来对许文杰说了一个词:"跟我来。"
他带许文杰去的不是他的办公室——是FBI大楼里的一个访客区。那是一个没有窗户的小房间,一张桌子,两把椅子,墙上有三面美国国旗,门上没有标牌。不是审讯室——是"你可以在这里用你的电脑但不会被其他探员看到你在做什么"的中性空间。他选择这里的原因很简单:访客区的电脑不会留下许文杰的访问记录,也不会有人看到许文杰走进布伦南的办公室——许文杰出现在FBI大楼里本身就是一个需要处理的信息风险。
布伦南打开电脑,从信封里取出U盘,插进USB接口。屏幕亮了,文件夹打开了。
接下来的三个小时——在小说叙事中被压缩成大约七百分的文本——他坐在那张金属椅子上,身体微微前倾,用读一本重要合同的专注力翻阅了许文杰带回来的全部数据。他读得很慢,不是因为读不懂——是因为每读一行,他就在脑海中跟自己在过去两年收集到的碎片信息做一次交叉比对。
六个壳公司的表单——两个出现在他的独立调查中,吻合。两个洗钱通道的操作模式——他之前推测的是"第一阶段走贸易、第二阶段走银行"的路子,但谢尔盖的数据告诉他,中间还有一个被忽略的环节:虚假贸易发票的伪造是通过一家注册在阿联酋的设计公司完成的,发票上的商品编号来自一个真实的跨国公司库存系统——这意味着伪造者入侵了或者收买了某个合法企业的ERP系统来生成可验证的发票编号。
他看到那个细节的时候,手在键盘上方停了一下。
三小时后,他靠在椅背上,摘下眼镜。那个动作——摘下眼镜拿在手里——是他在FBI同事中出名的一个标志性习惯。认识他的人都知道,当他摘下眼镜的时候,他不是要擦它——他是需要一秒钟的空白来重新整理自己的认知框架,然后才能做出判断。
他开口了。声音比他自己预想的低了一点:
"你帮了我一个大忙。"
他把眼镜戴回去,转过椅子,面对许文杰。然后他加了一句——声音不变,但语气里多了一层许文杰不太常在他身上听到的东西:"你也给自己惹了一个麻烦。"
节点4(580字)
他关掉电脑,拔下U盘,放进了自己衬衫上衣口袋里——不是裤子口袋,不是桌子抽屉——是他自己的口袋,意味着这份数据从现在起由他个人保管,不先走FBI的系统登记流程。
他看着许文杰。两个人之间隔着一张不足一米宽、台面光滑到没有任何不必要物品的金属桌子,在访客区单调的日光灯下,他做了一系列他职业生涯中从未做过的事——不是违反FBI的原则,是走在原则的边缘线上,而且他知道这个边缘是软的。
"你在莫斯科做的事——如果被查出来,你可能要坐两年牢。"
他没有停顿,没有留出让许文杰"消化这个事实"的间隙:
"但我不会去查。"
他的措辞不是经过修饰的——是直接、确定的,像是他在之前三个小时的数据阅读中就已经做好了这个决定。他不是在"临时考虑"——他是在"宣布一个已经做出的判断"。
"不是因为我想保护你——是因为你带回来的情报能让我抓住比他大得多的人。严世魁在我这张桌子上放了两年。你给我的数据把我两年前的假设变成了可以呈堂的证据链。这是突破——不是进展。"
他停下来,看着许文杰的眼睛。那个目光跟之前两次见面时都不同——不是警告,不是评估——是一种交换条件的确认。
"你欠我一次。"
许文杰在桌子的另一端说:"我知道。"
布伦南没有让他停在那个回答上——他需要确保许文杰完整理解"欠一次"这个短语在这句话里的真实含义:"不——你不知道。你欠我的不是'我放你一马'——是你欠我'如果我以后需要你做证人,你要来'。"
访客区的日光灯在那一瞬间似乎闪烁了一下——也可能是天花板上的老旧镇流器本身的物理抖动。许文杰沉默了。布伦南没有在他沉默的时候补充解释。他让那句话说出去,然后在空气中停着,等对方去称它的重量。
"我不需要你现在回答我。你回去想想。如果你不愿意——我也不会收回这次不追究的决定。但你欠我的那一次,会在某个时间点——可能是几个月后,可能是几年后——出现。到那时候你再说'好'或'不好'。"
许文杰说:"我明白。"
布伦南站起来。他伸出手——不是握手的手势,是一个手掌微屈、拍了拍许文杰肩膀的动作,轻,短,不拖泥带水:"回去睡觉。你需要。"
节点5(560字)
当晚,布伦南一个人坐在办公室里。他没有开那盏旧台灯——他坐在黑暗中,只有电脑屏幕的光照亮他的脸。他在重看一份他写了两年的调查报告,一份标题为《关于严世魁跨境资金网络的初步分析与追踪报告》的文档,封面上有一个他手写的标签:"未完成——等待关键连接点。"
两年了。
他打开许文杰带回来的数据,在自己的报告上逐段对应、补充、标注。之前只有三分之一内容填满的报告——现在他可以填满超过一半了。他填的时候手很稳,不是因为他没有情绪——是因为他有一整个下午的时间把情绪消化掉了,现在剩下的只有工作。
他在报告的最后加了一行字——不是报告本身的正式内容,是他给自己的备注:
*"信息来源:线人。代号:Moscow Link。可靠性:A级。"*
他看着那个代号,"Moscow Link"——莫斯科链路。这个代号在他的案件中第一次亮相,未来可能会在很多场合出现,也可能永远不会被除他之外的任何人看到。取决于这个案子的走向,取决于那个背后的人。
他关掉文档,但没有关机。他打开了一个新的搜索窗口,输入了那个在谢尔盖的数据中出现的公司名——Alpha Services Group,特拉华州注册。搜索结果诚实得令人遗憾:一家没有网站的公司,注册地址是特拉华州威尔明顿的一个标准代理地址,那栋楼里有上千家公司的注册地址都是那个门牌号。注册人是一家芝加哥的律师事务所——Winston & Sterling。他认识那家所——不是人认识,是名字认识——一家专门做跨境企业架构的中型律所。
他圈出律所的名字,在旁边写了一个词:*"传票。"*
然后他打开了FBI内部系统的通知页面——他想查一下,有没有人对他的那个下午的搜索留下了标记。果然。系统通知栏里有一条未读消息:
*"你对'沃罗诺夫,谢尔盖·米哈伊洛维奇'的查询已被标记。请联系内部分类安全办公室(DSO),分机4471。"*
他看了那条消息大概十秒。然后他拿起手机,回了一条:"明白。"
他没有立刻拨那个分机。他需要先想清楚,自己在这件事上要暴露多少信息。
节点6(630字)
回到公寓的时候已经过了半夜。布伦南的公寓——不是你在电视剧里看到的FBI探员住所那种风格,是真实的、生活了十几年没有认真整理过的样子。茶几上放着一本还没读完的书——《大博弈:阿富汗、巴基斯坦与中亚的权力游戏》,封面的一角被咖啡杯底留下的印记烫出了一个小褶皱。冰箱里有一瓶啤酒和一盒过期的牛奶,过期了四天,他没扔,因为扔了之后他会忘记买新的。
他坐在沙发上,打开那瓶啤酒——冰的,但不够冰,说明冰箱的温度设定需要调整——翻开了那本《大博弈》。他翻到夹着书签的那一页,读了大约五个句子,然后发现自己根本没有在阅读——他的注意力还在那片数据上,那些壳公司的名字、洗钱通道的流程图、Alpha Services Group的连接点。
他放下书,拿起那份重新修订过的报告,翻到自己今天下午补充的那一页,看着那个"Moscow Link"的代号。两年。他追严世魁的资金网络用了两年,从巴拿马查到香港,从香港查到莫斯科,从莫斯科查到二十几张打印纸上的数字和名字——然后一个叫许文杰的新加坡人带着一个U盘走进他的生活,把这个链条上最关键的几个缺口一次性补上了。
他喝了一口啤酒,对着天花板低声说了一句只有他自己能听到的话——不是对任何人说的,是对这个案子说的:"两年。终于。"
他的手机在茶几上亮了一下。不是许文杰的消息,不是FBI内部系统的通知——是他设置的一个日历提醒:
*"明天上午9:00 —— DSO 4471 —— 不要迟到。"*
他设置了那个提醒。他在回来的地铁上设置的。他看着那行字,没有修改,没有删除。他需要跟内部分类安全办公室谈一谈——不是为了交代许文杰的事,是为了搞清楚自己在查的这个案子,到底在FBI内部的层级归属上属于谁的范围。如果谢尔盖·沃罗诺夫被更高层级的机构标记了,那他在追的这条线可能比他在纸上看到的还要宽。
他把最后一口啤酒喝完,然后把空瓶放在茶几上——没有立刻扔进垃圾桶,不是因为懒,是因为他明天出门的时候记得带出去。他关了灯,在黑暗中坐了几秒,然后站起来,走向卧室。
两年了。他终于在报告上填上了最关键的那几行字。但那些新填上去的字,打开了一扇他还没有准备好走进的门。
【字数统计:第10章】3,570字 ✅