第11章 · 雙重信號

布魯塞爾的清晨總是從霧開始的。

伊莎贝尔·克勞斯在早上六點十七分走進辦公室,那時候歐盟數字自由委員會大樓的走廊裏還沒有其他人。自動感應燈在她經過時逐排亮起,淡藍色的LED光帶沿着天花板延伸,像一條條沉默的引導線,把她引向走廊盡頭那間朝北的辦公室。

她的辦公室不大——十五平方米,玻璃隔牆對着內部走廊,百葉窗常年半合。桌面上方有兩台顯示器,型號相同,品牌相同,甚至連擺放角度都相同。但從物理層來看,它們屬於兩個完全不同的世界。

左側那台——她的官方終端——連接着星链的授權網絡。所有經過這台設備的流量都被實時記錄、審計、存檔。歐盟數字自由委員會的IT安全協議要求所有工作人員使用星链認證的終端設備接入委員會內部網絡,協議編號 EU-DCF-2054-09-002,標題是《統一通信安全框架》,措辭冠冕堂皇。伊莎贝尔在這台終端上處理所有公開事務:撰寫聽證會報告、回覆委員會同事的郵件、查閲星链提交的合規文件。她知道這台終端上的每一個按鍵都會被記錄——不僅是委員會的內部審計,還有星链層面更高層級的監控。她不在意,因為這台終端上的所有內容都是她準備好被看到的內容。

右側那台——從外表看和左側那台毫無區別,同一品牌、同一型號、甚至貼了同樣的委員會資產標籤。但內部完全不同。這台終端的網卡被替換過,替換的是一塊不記名採購的、經過硬件級改造的千兆以太網卡,它不通過星链的網關連接互聯網——它連接的是委員會大樓地下室一根沒人記得的舊光纖,那根光纖沿着布魯塞爾下水道系統分支出去,最終接入一家看似已經倒閉的電信公司在十五年前鋪設的骨幹網絡中。

那根光纖的路徑上沒有任何星链的審計節點。

這是鸽子网络在歐洲心臟地帶最昂貴的一條專用通道。鋪設它花費了数据党在布魯塞爾據點一整年的運營預算,維護它需要每個月更換一次中介節點的路由配置,以防被星链的網絡拓撲掃描發現。

但她今天有兩件事要做。兩件事——分別通往兩個方向,每一條都可能是她自己鋪設的陷阱。

伊莎贝尔拉開右側鍵盤下的隱藏抽屜,取出一塊黑色的USB設備——外形和普通的U盤完全一致,但內部封裝的是一個一次性的量子隨機數發生器芯片。她把它插進右側終端的接口,屏幕亮起,顯示出一個只有命令行界面的加密通信客户端。她輸入了第一組指令。

第一條消息,發送給数据党布魯塞爾聯絡節點的中繼地址。

她敲字的速度不快不慢,每一個詞都經過選擇,語氣保持在她一貫的"內部情報提供者"的冷靜調性上:

「可靠來源情報:米兰·沃伊诺维奇已簽署對柏林克羅伊茨貝格據點的物理突襲授權。時間窗口:下週內。建議立即轉移人員和設備。情報置信度:高。——IS」

她停頓了一下,檢查了一遍拼寫和語法,然後按下了發送鍵。

消息通過那根地下光纖出發,經過四個跳轉節點,每一次跳轉都更換一次加密信封。這條路徑的終點是柏林一間廢棄麪包店地下室的服務器,那台服務器運行着一個自動化的消息分發程序,會把她的消息重新加密後轉發到数据党全球節點的內部公告板上。

整個過程大約需要三分鐘。這三分鐘的延遲是設計好的——不是技術上限,是安全策略的一部分:如果她的通道被星链的反情報系統發現,三分鐘的延遲會給数据党足夠的時間在收到消息之前——不是收到消息之後——觸發緊急撤離協議。

她關上右側終端的通信窗口,轉向左側終端。

左側屏幕上,一封新的郵件正在閃爍。發件人是一個她從未見過的地址,但郵件的標題欄只有一行數字:一個四位數的認證代碼。伊莎贝尔對照着自己記憶中的配對錶確認了這組代碼——它來自米蘭辦公室的一個自動加密轉發器,意味着米蘭想跟她直接通話,但不是通過電話或視頻會議——是通過她終端裏一個不起眼的、偽裝成系統更新服務的後台進程。

她雙擊了那封郵件。屏幕上沒有出現正文——彈出了一個簡單的灰色對話框,上面只有一行字和一個輸入框:

「請輸入您的委員會工號以確認身份:」

她輸入了自己的工號。對話框消失。一個新的終端窗口靜默地出現在屏幕底部,背景色和委員會的標準內部系統界面幾乎無法區分。

米蘭的聲音沒有出現。出現的是文字——一行接一行地出現在終端上,像是實時輸入的。

「伊莎贝尔。早上好。」

她回覆。

「早上好,米蘭。」

「你今天有兩件事要做。我只知道其中一件。你猜是哪一件?」

伊莎贝尔的手指在鍵盤上方懸停了不到一秒鐘,然後開始打字:

「你不需要知道我做的每一件事。你只需要知道我告訴你的事是真的。」

「我知道。所以我讓你幫我做一件事。柏林——克羅伊茨貝格的那個麪包店——你的人應該在幾週前就撤了,但他們沒有。我給你情報,不是推測。——米蘭」

「情報內容是?」

「数据党柏林據點。」

伊莎贝尔看着這句話,感到一種微妙的、無法定位的不適感。不是因為她不知道柏林據點的存在——她知道,她甚至知道那個據點設在克羅伊茨貝格區一棟舊公寓樓的地下室——而是因為米蘭主動向她提供了這個情報。

米兰·沃伊诺维奇從不主動提供情報。他接受情報,分析情報,有時候會反饋他分析後的副產品——但他從不主動。他的信息流永遠是接收大於發送,像一個只進不出的黑洞。

而現在他主動給了她一條關於柏林據點的行動情報。

她做出了選擇——她決定把它當作一個真實的行動情報傳遞出去。不是為了米蘭,也不是為了数据党,而是因為她無法承擔"這可能是真的"的風險。如果米蘭真的在下週突襲柏林據點,而她沒有提前警告数据党——那幾十條人命的重量她背不起。

「我會核實。」她回覆。

「不必核實。按我説的做就行。——米蘭」

終端窗口在她讀完最後一句話之後自動關閉了。沒有再見,沒有結束標誌,就像一段從未發生過的對話。

伊莎贝尔靠在椅背上,看着窗外布魯塞爾灰濛濛的天空。歐盟區那些新古典主義建築的屋頂在晨霧中若隱若現,鴿羣在圓頂之間盤旋。它們在屋頂之間來回飛行,不依賴任何衞星,不計費,不需要任何人的許可。

她打開右側終端的一個離線文檔,開始書寫今天需要發送的第二條消息——她以為米蘭不知道的那一條。但她沒有立刻發送。她想等等看米蘭的情報是不是真的。


三小時十七分鐘後,驗證結果回來了。

不是通過右側那台終端的鴿子通道——是通過一個更加原始的方式。伊莎贝尔在上午十一點離開辦公室,步行穿過兩個街區,在舒曼廣場旁邊的一個報刊亭買了一包薄荷糖。報刊亭老闆在找零的時候多給了她一枚兩歐元的硬幣。她把那枚硬幣放進口袋,回到辦公室後鎖上門,用指甲在硬幣邊緣的齒紋上輕輕颳了一下——齒紋裏嵌着一層幾乎不可見的微縮膠片。

她把膠片放在一台老式光學顯微鏡下——那也是她的辦公用品,委員會配發用來檢查紙質文件上的防偽水印,沒人會覺得一台光學顯微鏡出現在她的辦公桌上有什麼異常。

膠片上只有一行字:

「柏林收到。據點已撤離。感謝。——DP」

伊莎贝尔把硬幣放回口袋,用打火機燒掉了那枚微縮膠片,把灰燼衝進了洗手池。

米蘭的情報是真的。数据党柏林據點確實面臨突襲——至少他們的反應看起來像是面臨突襲。那麼米蘭是從哪裏得到這個情報的?是数据党內部的內線?還是他純粹通過星链的監控系統分析出了柏林據點的位置,然後故意給了一條真情報來建立她的信任?

她暫時無法判斷。她只知道米蘭給了她一條真情報——這本身就意味着什麼。米蘭不會白給東西。米兰·沃伊诺维奇的每一次出手都有目的。

他在測試什麼。

伊莎贝尔回到辦公桌前,重新打開右側終端。她還有第二件事要做——傳遞給米蘭的那條消息。她原本計劃在中午之前發出去,但現在她在猶豫。

她打開加密通信客户端,看着光標在空白的輸入欄中閃爍。她敲下了第二組指令——這一次發送給米蘭辦公室的自動加密轉發器——用她篩選過的、被認為安全的通道:

「交叉驗證情報:数据党計劃在未來七十二小時內對拉各斯上空的星链衞星發起物理攻擊。目標:STK-44170至STK-44182序列。手段:無人機攜帶電磁脈衝載荷。情報來源:內部。——IS」

她按下發送鍵之前,看了一遍這段文字。每一個詞都是真的——法尔汉確實在討論過一種使用高空無人機對特定衞星進行近距離電磁脈衝干擾的方案,雖然這個方案仍然停留在理論推演階段,遠未進入實質執行。但她把它描述為"計劃",給了它一種即將執行的緊迫感,一種米蘭應該認真對待的分量。

她按下了發送鍵。

消息沿着那條鸽子网络的地下光纖出發,但它的最終目的地不是数据党的任何節點——它穿過三個中繼之後被轉存到一台位於盧森堡的備用服務器上,那台服務器上運行着米兰·沃伊诺维奇配置的一個自動化的情報收取程序。

伊莎贝尔關掉了終端。她靠在椅背上,感到一種她無法準確命名的疲勞——不是身體的累,是那種一直在扮演兩種角色、每一句話都要經過雙層審核、每一次發送消息都要考慮它是"真的給米蘭看的假消息"還是"真的給数据党的真消息"的認知負載。她已經維持這種雙重身份四年了。四年來她見過三條隱蔽戰線上的人被燒燬:一個歐盟委員會內部的線人,被星链的行為分析算法在兩年後找到,現在還在荷蘭的監獄裏服刑;一個米蘭身邊的前助理,被米蘭親手查出,在二十四小時內被解職並移交司法機關;一個她自己的副手——那個人到現在都不知道自己為什麼被調離原崗位。

他們都是在玩火的時候燒到了自己。她以為自己控火的技術比他們好。但她今天第一次感到一種不確定——

她看着桌面上那兩台外觀完全一致的顯示器,它們並排擺放,像一對孿生兄弟。但它們的靈魂指向完全相反的方向。她每一天都在這兩個方向之間來回切換,用同一雙手在不同的鍵盤上敲出不同陣營的文字。

她突然想起一個詞:分裂。

不是精神上的分裂——是身份的分裂。她不是一個人活在兩個陣營裏,她是兩個人在同一個身體裏輪流值班。早上的伊莎贝尔是歐盟委員會特使,下午的伊莎贝尔是数据党的情報源,晚上的伊莎贝尔是米蘭的信使。每一班崗交接的時候,她都要花幾分鐘調整自己的心態、用詞、甚至呼吸節奏。

代價在哪裏?她不知道代價在哪裏——也許代價還沒來,也許代價已經來了但她沒有察覺到。

她關上燈,在黑暗中坐了一會兒。


晚上九點,伊莎贝尔走進布魯塞爾聖凱瑟琳區的一家牡蠣餐廳。

餐廳不大,大約十張桌子,牆面貼着白色瓷磚,吧枱上方的吊燈發出温暖的黃色光芒。這個時間點,晚餐高峯已經過去,餐廳裏只剩兩桌客人——一桌是一對老年夫婦在分食一份烤魚,另一桌是一個獨自坐在角落裏的年輕男人,面前擺着一杯白葡萄酒和一盤空了的牡蠣殼。

伊莎贝尔在吧枱前坐下。老闆認識她——她每個月會來這裏一到兩次,每次都點同樣的東西:六隻生蠔、一杯夏布利、一份麪包。但今天她不是為了吃飯來的。

她點完單之後,那個坐在角落裏的年輕男人站了起來,端着他的酒杯走到吧枱,在離她兩個座位的地方坐下。他看起來大約三十歲,穿着一件深藍色的休閒西裝外套,裏面是白色T恤,留着短鬚。他的目光落在吧枱後面的酒瓶架上,不看伊莎贝尔,開口説話的聲音壓得很低——不是耳語那種低,是餐廳背景噪音剛好能蓋過的程度。

"柏林的人已經撤了。麪包店關門了。謝謝你。"

伊莎贝尔沒有看他。她端起老闆剛倒的夏布利抿了一口,在放酒杯的時候用同樣低的音量説:"不用謝。"

"我們需要知道你那條情報的來源。"

"我不能告訴你。"

年輕男人沉默了幾秒。"我們不是在審問你。但我們想知道——米蘭是不是在給你投餵假情報。"

"柏林的情報是真的。你們已經撤了。"

"那正是讓我不安的地方。"年輕男人用指尖輕輕轉動酒杯的杯腳,眼睛仍然盯着酒瓶架,"米兰·沃伊诺维奇從不無償提供情報。他給了你一條真情報——這在過去四年裏從來沒有發生過。他在用這條情報做什麼?他在買什麼?"

伊莎贝尔沒有回答。牡蠣端上來了,老闆把它們放在碎冰上,半片檸檬在旁邊微微滾動。她拿起一隻牡蠣,沒有擠檸檬,直接倒進嘴裏。海水的鹹味在她的舌尖上化開,帶着一種冰冷的、近乎尖鋭的鮮甜。

她用紙巾擦了擦手指,然後説了一句她不確定該不該説的話:

"我也給你們了一條。"

年輕男人轉過來的目光第一次在她臉上停留。他的眼神在説吧枱上方那盞暖黃色吊燈的映照下顯得並不温暖。

"你説什麼?"

"我傳遞給米蘭一條消息。告訴他,你們計劃攻擊拉各斯上空的衞星。"

年輕男人沒有説話。他的表情沒有明顯的波動,但伊莎贝尔能感覺到他身體姿勢的輕微變化——他握着酒杯杯腳的手指收緊了一些。

"這是真的。"他説。不是問句。

"我知道它是真的才發的。"

"你知道米蘭會怎麼處理這條消息嗎?"

伊莎贝尔沉默了。這是一個她不想面對的問題,但她知道答案——米蘭會對拉各斯上空的衞星增加監控力度,反推消息的來源,最終確認她作為雙面間諜的身份。

"他會知道這條消息是從哪裏來的。"年輕男人替她説了出來,聲音平靜得像在陳述一個與他自己無關的事實,"因為你的通道只有他和你之間建立了單向驗證。他沒有告訴你他給了你假情報——但如果你能確認柏林情報是真的,説明你已經通過某種方式驗證了它。一個普通的歐盟官員不會去驗證這種情報。只有間諜才會。"

伊莎贝尔的手指停在牡蠣殼的邊沿上。冰水從殼上淌下來,滴在桌布上,洇開一小片深色的濕痕。

她忽然明白了。

米蘭給她的"柏林突襲情報"——那不只是一個情報。那是一枚塗了蜜的鈎子。他不需要通過這條消息來打擊数据党——数据党柏林據點撤不撤離對米蘭來説根本沒有影響,他隨時可以通過星链的監控系統重新定位他們。他給這條情報的目的只有一個:

看她會不會傳遞它。

如果她傳遞了——就像她做的那樣——她就確認了自己是雙面間諜。因為一個真正的歐盟特使不會也不敢傳遞這種級別的行動情報。只有一頭在兩邊都下了注的鼬鼠,才會有動力去利用它。

她在米蘭的棋盤上走了第一步。米蘭看到了那一步,甚至在三小時前就通過那枚硬幣上的微縮膠片確認了她走了那一步——然後他安靜地等待着她走第二步:那條關於拉各斯衞星攻擊的情報。

兩個方向的情報。兩條路。

第一條路——米蘭用來確認她的身份。

第二條路——米蘭用來確認她的忠誠度。

她以為自己在同時向兩邊傳遞情報,維持一種精妙的平衡。但米蘭用一個簡單的測試就把她的平衡木抽掉了一半。

她站在吧枱前,手裏還拿着那隻空了的牡蠣殼。殼的內壁在燈光下泛着珍珠母的微光,光滑、完美、冰冷。

"你覺得米蘭不知道這條情報來自哪裏?"年輕男人的聲音從旁邊傳來,不緊不慢,像一把細長的刀慢慢推進鞘裏,"你傳遞給他的'拉各斯衞星攻擊'——是真的。你真的認為他不知道這個情報的來源?"

伊莎贝尔把牡蠣殼放回碎冰上。

她無法回答這個問題。

因為她知道答案。


那天晚上,伊莎贝尔回到自己的公寓,沒有開燈。

她站在客廳的落地窗前,看着布魯塞爾的夜景。歐盟區的那些大樓在夜色中勾勒出一排整齊的輪廓,燈火稀疏。遠處,原子球塔的銀色球體在夜空中反射着微弱的月光,像一個巨大的、沉默的警告標誌。

她看着窗玻璃上自己的倒影。

那個倒影看起來很鎮定。西裝筆挺,髮型整齊,表情從容。一個三十五歲的歐盟高級官員,在這座城市最有權力的機構之一工作,擁有獨立的辦公室、外交護照、和進入幾乎所有歐盟政府大樓的通行權限。

但那個倒影是一個秘密已經暴露的人。

她知道自己今晚應該做一件事——立刻切斷與米蘭的所有聯繫渠道,在二十四小時內從布魯塞爾消失,啓用鸽子网络為她準備的緊急撤離方案,轉移到数据党在某個她不知道地點的安全屋。

但她沒有動。

不是因為不能。是因為她已經在這條雙面線上走了太久,久到她不知道自己單面的樣子應該是什麼樣子的了。她不知道自己還能不能只做一個身份。

而且——她在米蘭的棋局中已經暴露了。但米蘭沒有封她的通道,沒有凍結她的權限,沒有逮捕她。他仍然讓她坐在那間十五平方米的辦公室裏,操作那兩台終端,發送那些加密消息。

這意味着米蘭不打算現在處理她。

他還需要她做什麼。

伊莎贝尔把額頭抵在冰涼的窗玻璃上,閉上了眼睛。窗外的城市燈光在她閉合的眼瞼上映出一片模糊的橙紅色。她感到一種深層的、從她踏入這場遊戲的第一天起就一直在積累的疲勞,正在從她的骨髓裏滲出來。

她不是棋手。

她甚至不是棋子。

她是被擺在棋盤上的一枚已經被人標記過的、對方暫時不吃的子——不是因為對方吃不到,是因為對方想看看她還能走多遠,還能走到哪個格子裏去。

她有一種衝動——想立刻打開那台終端,把今晚的一切寫下來發給法尔汉。但她的手沒有動。因為她不確定米蘭是否也希望她這樣做。也許米蘭正在等她做這個動作。

也許她的每一步——包括"發現自己被算計然後向数据党求助"——都在米蘭的預期之中。

她不知道自己的哪一步才是真正屬於自己的。

她把手機放在茶几上,屏幕朝下。沒有發任何消息。

在那個沒有開燈的客廳裏,伊莎贝尔·克勞斯坐在沙發上,看着面前兩台的智能手機——一部是她的委員會工作機,一部是她與数据党聯繫的加密終端——它們安靜地躺在玻璃茶几上,像兩隻正在對峙的、都不準備先開口的動物。

窗外的布魯塞爾安靜地呼吸着。聖米歇爾大教堂的鐘聲敲響了十一下——十一聲低沉、緩慢的銅響,在夜空中向四周擴散,像一顆石頭投進深水中激起的同心圓。

伊莎贝尔聽着那鐘聲,發現自己在數。

一、二、三——

數到第七聲的時候,她意識到自己在做什麼——她在想,這鐘聲是用什麼協議傳輸的。不是數據包。不是光子。不是射頻信號。就是銅和空氣。物理的、原始的、網絡之外的東西。

布魯塞爾的鐘聲已經響了八百年。星链才存在不到三十年。

她靠着沙發,閉上眼睛,感覺自己的身體正在緩緩沉入某種她無法控制的下墜中——不是睡着,更像是一種主動的、想要把自己藏起來的重力。

她今晚沒有發任何消息。

但她知道,明天早上她還是會走進那間辦公室,打開那兩台終端。因為她已經沒有辦法讓自己停下來了。

微信公眾號二維碼

掃碼關注微信公眾號
閲讀更多獨家內容