第3章 · 第一口禁果

陆远花了三天時間弄到那臺SDR。

不是買的——一臺覆蓋星链全頻段的軟件無線電平臺在二手市場上要價六萬信用點,他拿不出。他是從華強北一個專做翻新通信設備的倉庫裡"借"出來的。說是借,其實就是趁老闆午休的時候,用一把螺絲刀撬開了倉庫後窗的防盜網,鑽進三米高的貨架中間,找到那臺被標註為"待報廢"的USRP X440。

機器外殼積了一層灰,散熱片上有鏽跡,但核心板是完好的。陆远在昏暗的倉庫裡花了四十分鐘拆機驗證——電源模塊正常,基帶FPGA邏輯完整,射頻前端雖然老化但校準後可用。他把機器塞進一個拆空的微波爐紙箱裡,從後窗原路翻出,落地時膝蓋撞到水泥地,痛得他咬緊了牙關。

他沒敢開燈。走回出租屋的路上,他把紙箱抱在胸前,像一個偷了核彈原料的恐怖分子。深圳午後的陽光打在他背上,燙得發疼,但他覺得那點溫度比不上懷裡這臺機器輻射出來的熱量——它沒有通電,但他已經能感受到那種危險。

他花了兩天時間架設環境和校準設備。SDR被藏在衣櫃頂上,用舊衣服蓋住,饋線沿著牆角踢腳線的縫隙走到窗邊,天線偽裝成一根廢棄的電視接收杆,用紮帶固定在防盜網上。驅動程序是從一個俄羅斯技術論壇上下載的——那個論壇隱藏在暗網的某個角落,需要經過三層跳轉才能訪問。陆远不會搞暗網,但他在電子科大讀書時的室友會。一通三十年沒打過的電話,幾句含糊的託詞,一個加密鏈接發了過來。

"老陸,你搞什麼?"室友在電話那頭問。

"修一個東西。"他說。

掛掉電話之後他把SIM卡掰成兩半,衝進了馬桶裡。

現在設備就位了,但他還缺一樣東西——目標信號。

鉑金級用戶的信號不是隨便就能捕獲的。星链的終端在空閒狀態下會進入低功耗模式,發射功率降至最低,信號特徵非常微弱,被環境噪聲淹沒。要採集到足夠清晰、足夠完整的信號指紋樣本,他需要等到目標終端處於活躍通信狀態——而且最好是高清視頻流這種高數據率業務,因為高數據率意味著發射功率高、信號特徵顯著。

陆远需要一個鄰居。一個鉑金級的鄰居。

他花了半天時間篩選。星链的終端信號在天線端是可以粗略分類的——通過分析信號帶寬、調製階數和功率譜密度,可以大致推斷出用戶等級。他在屋頂上架了一個臨時的偵查天線,用筆記本連續記錄了四個小時的頻譜數據,然後回家分析。

結果是:他所在的這棟樓,沒有鉑金用戶。最近的鉑金信號源來自兩百米外的一棟高檔公寓——世茂濱江花園,深圳知名的富人區。那棟樓的外牆採用了星链特供的嵌入式相控陣天線面板,鉑金用戶的信號從那些面板裡射出來,乾淨、強勢、帶著一種不容置疑的優先級。

陆远站在自己五樓的窗口,朝那個方向望了一會兒。中間隔著一片老舊城中村的屋頂,參差不齊的天線像一片鐵質叢林。兩百米。直線距離二百一十米。這個距離上,即使他用高增益定向天線,捕獲的信號質量也會大打折扣。

但他沒有選擇。

當晚凌晨兩點,陆远把定向天線架在了樓頂水塔的檢修平臺上。天線被偽裝成一截廢棄的PVC排水管,用鐵絲固定在護欄上,饋線沿著雨水管垂下來,從廚房窗戶的縫隙穿進屋裡。他在樓頂蹲了四十分鐘,蚊蟲叮了他滿手臂的包,他一動不動——他在等那個鉑金用戶活動起來。

凌晨兩點四十七分,信號出現了。

目標終端發起了一條視頻通話請求——對方終端位於歐洲,低延遲需求使星链為其分配了一條專用的近地軌道鏈路。發射功率驟升,信號強度在陆远的頻譜分析儀上跳了一個明顯的臺階。

他開始錄製。

SDR的採樣頻率被設定在最高檔——每秒一百二十八兆採樣點。數據像洪水一樣湧入硬盤,十六位精度的I/Q樣本以每秒將近一個GB的速度堆積。陆远的眼睛一眨不眨地盯著屏幕上的實時頻譜,手指懸在停止鍵上方,等一個完美的、連續的信號段出現。

三秒。五秒。七秒。

目標終端在這一幀裡發出了完整的握手協議數據包——包含終端ID、認證令牌、時間戳和信號指紋校驗序列。這是整個認證鏈路上最關鍵的一段信號,所有信息都在這裡了。

陆远按下了停止鍵。

硬盤上多了7.3 GB的數據。他靠在椅背上,發現自己的後背已經被汗浸透了。窗外,那棟高檔公寓裡的鉑金用戶也許正在和家人進行一場輕鬆的視頻通話,完全不知道自己的一部分信號已經被截獲、存儲、即將被拆解和克隆。

陆远覺得自己應該感到愧疚。但他沒有。他只是在腦海中機械地計算著下一步——提取信號指紋特徵,構建克隆模板,設計實時中繼算法。

他打開筆記本,開始寫代碼。


三個不眠之夜之後,克隆鏈路跑通了第一次閉環測試。

測試環境簡陋得可笑:他用一臺二手手機作為模擬終端,接上SDR的發射端口,讓SDR把錄製好的鉑金信號重放出來——然後他用自己的另一臺設備去連接星链。結果比他預想的要好。第一次嘗試,克隆信號通過了物理層指紋校驗,但卡在了第二層的會話密鑰協商環節。第二次,他修正了時序偏差——原始信號和克隆信號之間有三毫秒的延遲差,星链的時序檢測模塊捕捉到了這個異常,斷開了連接。第三次,他在中繼算法里加入了一個自適應延遲補償模塊,讓克隆信號的幀時序與真實終端的時鐘漂移保持同步。

第三次測試,連接成功。

屏幕左上角跳出了一個讓他幾乎不認識的通知圖標——鉑金色的,星链最高等級標識,旁邊顯示著:

「已連接 · 鉑金級 · 帶寬保障 1 Gbps · 延遲保證 <5ms」

陆远盯著那個圖標看了整整十秒鐘,然後慢慢吐出一口氣。他伸手去拿桌上的水杯,指尖碰到杯壁時才發現自己的手在劇烈顫抖,幅度大到杯裡的水盪出了漣漪,灑在桌面上。

他不在乎。他把杯子端起來喝了一口,水是涼的,但他感覺整個胸腔都在發燙。

他走進了女兒的房間。

小姑娘睡得很沉,呼吸均勻,嘴角微微翹著,大概在做美夢。床頭櫃上放著她的學習平板——一臺二手的、屏幕有一道裂紋的老款設備,外殼已經被磕碰得掉了好幾塊漆。陆远把它拿起來,連上了克隆後的鉑金網絡,打開了一個在線教育平臺。

頁面加載時間是——零。

不是零,是快到肉眼無法感知。之前需要緩衝三分鐘的高清課程視頻,現在點擊即放,畫面清晰到能看到教學視頻里老師髮絲的紋理。陆远換了一個頁面,又換了一個,每一個都是瞬間加載。一千倍的差距不是數字上的概念——它是一種感官上的震撼,像一個人一輩子都透過毛玻璃看世界,忽然有人把那層玻璃拿掉了。

他關掉平板放回原處,在女兒床邊坐了下來。

月光從窗簾的縫隙裡漏進來,一縷銀色的光線落在女兒的臉頰上。五歲的小姑娘在睡夢中翻了一個身,小手從被子裡伸出來,無意識地抓住了陆远的手指。那隻手太小了,五根手指握不住他一根食指,但攥得很緊。

陆远沒有把手抽回來。他坐在那裡,在黑暗中聽著女兒的呼吸聲,心裡有一種說不清的滋味——不是純粹的喜悅,夾雜著恐懼、不安和一種破罐破摔般決絕的快感。他做了一件違法的事,他清楚。他克隆了另一個人的網絡身份,竊取了價值每月數萬信用點的服務。如果被抓住,後果他不敢細想。

但女兒抓著他的手指。

他低頭看著那隻小手,忽然覺得就算前面是萬丈深淵,他也會跳。


第二天早上,陆远給女兒連接了克隆網絡。

小姑娘抱著平板坐在床沿上,眼睛亮晶晶地看著屏幕。她先打開了一節自然科學的網課——之前緩存了三天才下載完第一課,後面的十幾節課一直灰著,點不進去。現在整門課程全部解鎖,高清視頻流暢播放,小姑娘第一次看到了高清版的蝴蝶破繭過程,畫面裡蝶翼上每一片鱗粉都在陽光下閃爍。

"爸爸,它好漂亮。"她說,聲音輕得像怕驚動了屏幕裡的蝴蝶。

"嗯。"陆远坐在旁邊看著她。

小姑娘看完視頻,又打開了一個遠程問診的應用——星链醫療平臺上的一個免費兒童健康諮詢入口,之前因為網速太慢,她從來沒能成功加載出視頻畫面。現在醫生的臉清晰地出現在屏幕上,一個戴眼鏡的年輕女醫生笑著跟她打招呼:"小朋友你好呀,你今天感覺怎麼樣?"

女兒愣了一下,然後害羞地躲到陆远身後,又忍不住探出頭去看醫生的臉。陆远替她回答了醫生的問題,詳細描述了最近的發作頻率和藥物反應。醫生認真聽完,在系統裡調出了一些參考數據,給出了一些調整建議——整個過程不到二十分鐘,比去一趟醫院省了至少半天的時間。

掛斷之後,女兒拉了拉陆远的衣角。

"爸爸,網變快了。"

她說得很平靜,像一個陳述事實的小大人。陆远笑了一下,想說點什麼,但喉嚨像被什麼東西堵住了。他只能點了點頭。

"以後都會這麼快嗎?"

這個問題讓他指尖發涼。他不知道怎麼回答。他不知道自己偷來的這個信號能用多久——可能是一週,可能是一個月,也可能下一秒就被星链的安全系統攔截封禁。他不知道那個鉑金用戶會不會發現自己的信號被克隆,不知道星链的工程師有沒有在監控這種異常,不知道自己這張臨時搭建的克隆鏈路能撐到什麼時候。

"爸爸儘量。"他說。

女兒沒有追問。她低下頭繼續看屏幕上的蝴蝶,小手在觸摸屏上滑動,一頁一頁地翻著那些以前永遠加載不出來的高清圖片。陆远站起身走到廚房,背對著女兒,把雙手撐在水槽邊緣,低著頭,肩膀微微聳動。

他沒有哭出聲。三十三歲的男人哭不出聲了,但他的肩膀在抖。

過了好一會兒,他擰開水龍頭洗了把臉。鏡子裡的人眼眶泛紅,眼角有細紋,頭髮裡已經開始冒出白茬。他盯著鏡中的自己看了幾秒鐘,然後擦乾臉,轉身去煮早餐。


同一時刻,八千公里外,貝爾格萊德。

星链歐洲協議研發中心的頂樓辦公室裡,米兰·沃伊诺维奇面前的屏幕上顯示著兩個並排的地理座標。左邊一個標記在比利時安特衛普——那是該鉑金終端登記註冊的合法位置。右邊一個標記在中國深圳——那是克隆信號剛剛上線的位置。

兩個座標之間的距離是9,247公里。信號指紋匹配度:99.94%。

米蘭端著一杯已經徹底涼透的咖啡,靠在人體工學椅的靠背上,把這兩個座標來來回回看了好幾遍。他的表情很平靜,甚至可以說帶著一絲欣賞——像是一個園藝師終於看到自己多年前埋下的種子破土而出。

他沒有上報。沒有報警。沒有封禁那個克隆信號。他甚至沒有通知星链的安全團隊。

他打開了一個加密日記應用,開始打字。鍵盤敲擊聲在安靜的辦公室裡清晰可聞,一下一下,不緊不慢。

「第7個。也許第8個——如果算上那個三年前沒成功的巴西人的話。」

他停下,想了想,又繼續敲。

「這次的實現路徑不太一樣。之前的幾個都是用軟件破解認證令牌,這個用的是物理層克隆——射頻指紋的實時重映射。有意思的手法。他在CDMA物理層上下了功夫。也許是老華為的人。」

米蘭在這行字後面加了一個下劃線,不是重點標記,而是一種帶有期待感的下劃線,像一個老師在學生的作業上畫出的那道表示"有點意思"的波浪線。

他關掉日記應用,重新看向屏幕。深圳的那個光點還在閃爍——克隆信號穩定、持續,甚至比一些真實終端的連接質量還要好。

米蘭對著屏幕上那個光點微笑了一下。

那個笑容裡沒有敵意。沒有憤怒。甚至沒有算計。它更像是——

一個獵人,在黑暗的叢林裡,終於聽到了他期待了七年的腳步聲。

他拿起桌上的麥克風,對著內線說了一句:"不用管。觀察。注意不要打草驚蛇。"

對面的安全團隊值班員愣了一下:"先生,這是一個明確的——"

"我知道它是什麼。"米蘭打斷了他,聲音溫和但不容置疑,"我說了,觀察。"

他掛斷通話,再次看向屏幕。窗外的貝爾格萊德夜幕低垂,而深圳的陽光正熾。同一個網絡,兩種截然不同的天色。

米蘭把冷掉的咖啡一飲而盡,玻璃杯底接觸到木質桌面的聲音很輕,卻有一種落定的意味。

他在日記的最後一行寫道:

「來。走近些。」

微信公眾號二維碼

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