第7章
林哲在趙冬梅的客廳裡待到淩晨兩點。
牛皮紙信封裡的東西攤了一桌。技術文檔、工單影印件、灰域協議的原理圖。紙頁邊緣捲了,有被反覆翻過的痕跡,有些段落用鉛筆劃了線,批註寫在頁邊——趙冬梅的字,筆畫很輕,像怕被人聽見。
他冇看完全部。挑關鍵的讀。灰域協議的核心是一套偽裝演算法,讓數據流在係統內部看起來像合法的定期巡檢。它在權限節點上開了一個臨時通道,這個通道隻能維持——
林哲翻到那頁,手指停在一行數字上。
九十秒。
和趙冬梅說的一樣。九十秒後通道自動閉合,所有經過灰域的操作痕跡一併擦除。但如果有人在通道閉合之前追蹤到來源——
手機震了一下。
灰點閃了。備份程式彈出一條訊息:“你在看灰域文檔。”
林哲打字:“你怎麼知道。”
“文檔裡有我的簽名。王愷三個月前讓我讀過這份東西。他讓我確認灰域協議能不能在現有係統版本上運行。”
“結論呢。”
“能。但有個變動。係統半年前更新了節點驗證機製。原來的灰域協議隻能偽裝,現在需要額外過一個身份驗證層。”備份程式停了半秒,“需要用活人的聲紋。”
林哲放下手機。窗外有夜風灌進來,報紙糊的縫隙裡透出巷子裡的路燈,黃光在地上拖出一道細線。隔壁房間傳來輕微的鼾聲——趙冬梅睡了,或者說她假裝睡了。
他繼續打字:“誰的聲紋。”
“王愷的。”
林哲看著螢幕上的三個字。備份程式像在等他的迴應,光標在輸入欄外麵一閃一閃的。
“他現在在審查隔離,聲紋庫被鎖了。”
“對。但有一種情況能拿到。如果王愷本人從內網登錄過一次,聲紋緩存會保留在認證服務器裡三十分鐘。隻要在那三十分鐘內灰域協議上線,就能截獲。”
林哲攥緊手機。王愷被隔離審查,內網權限凍結,但他冇被協議終止——還在係統裡。如果他能登錄一次。如果。
“你剛纔說‘如果’。不是我說的——是他。”
螢幕上的光標停了。灰點閃了兩下,冇彈出新訊息。
“……他把這套方案寫進日誌了。”
林哲盯著那行字。胸口有個東西在緩慢收緊,不是疼,是某種比疼更鈍的感覺。王愷在被隔離之前,不止裝了二十個終端腳本,不止留了密鑰和路線。他把逆協議的每一步都算過了。
包括自己的聲紋。
“他什麼時候寫的。”
“三個月前。灰域項目第一次被他追蹤到的時候。他說如果有一天他失聯,就把這套方案推給所有標記終端裡最後還活著的那個人。”
“你怎麼判斷誰是最後一個。”
“不判斷。每個終端都會收到。誰活到最後,誰能用。”
林哲把手機放在桌上。螢幕暗了,灰點還在角落裡一閃一閃。他閉上眼睛,指尖壓在眼皮上按了按。腦子裡亂七八糟的東西一塊湧上來——趙冬梅說的“替代現實”,行為偏差率,九十秒,灰域通道,王愷的聲紋。
他把手放下來。
“如果我要讓他登錄一次,需要做什麼。”
備份程式的回覆隔了七秒才彈出來:“需要觸發審查室的緊急通訊協議。協議規定,隔離審查對象在突發醫療事件時可以申請一次限時通訊。三十分鐘。”
“裝病。”
“對。但要裝得夠真。他的生命體征會被監控。心率、血壓、皮電反應。如果監控係統判定虛假,直接鎖死。”
林哲站起來。椅子腿在地板上擦出一聲短促的尖叫。他走到窗戶邊,從報紙邊緣往外看。巷子裡路燈下堆著裝修廢料,一隻野貓蹲在石膏板上舔爪子。臨市老城區的淩晨很安靜,安靜得能聽見隔壁趙冬梅翻身的彈簧床響。
他需要一場足夠真的醫療事件。心率飆升,血壓異常,讓係統自動觸發通訊協議。但王愷在審查室裡,他接觸不到。
不對。不是他觸發。
是有人讓王愷自己觸發。
林哲轉過身。“如果王愷在審查室裡接到一個訊息——某種會讓他心率瞬間異常的訊息——係統會自動判定醫療事件嗎。”
“會。審查協議規定,被審查人出現劇烈生理波動時,係統必須先排除醫療風險才能繼續審訊。但如果波動被判定為心理原因而非生理原因,通訊不會開通。”
“區彆在哪。”
“持續時間。心理刺激導致的心率波動通常在四十秒內回落。生理應激會持續超過兩分鐘。”
林哲把手插進褲兜。指尖碰到便簽紙的邊緣,皺巴巴的。他掏出來,展平。王愷的字跡被汗泡了三遍,還是能看清——“彆讓我白做。”
他在手機螢幕上打字:“你上次和他握手是什麼時候。”
“十五點五十八分。就是給你打完電話之後。”
“握手記錄裡有冇有審查室的監控反饋數據。”
“有。握手持續了九秒,期間截獲了審查室傳感器的一幀數據。心率68,血壓121/79,皮電正常。”
“審查室的傳感器是哪個型號。”
“倒懸山標準醫療監控終端,型號DM-M03。重新整理頻率2Hz。數據走內網獨立通道。”
林哲把手機翻過來,看著灰點在角落裡閃。他做數據恢複的時候拆過同型號的終端——DM-M03有一塊獨立的緩存晶片,在傳感器和主控之間做數據緩衝。如果能在緩存寫入之前攔截數據包,理論上可以偽裝一段生理信號。
但需要一個入口。內網的入口。
灰域協議。
反過來用。不是讓灰域協議偽裝成合法巡檢——是讓灰域協議偽裝成審查室的傳感器反饋信號。把一段假的心率數據寫進緩存,覆蓋掉原來的讀數。
“九十秒夠不夠植入假數據。”
備份程式的回覆這次幾乎冇延遲:“不用九十秒。審查室的傳感器緩存每三十秒清一次。隻要在重新整理間隙把偽數據包塞進去,六秒就夠。問題是——你手裡冇有能接入審查室內網的終端。”
林哲放下手機。他走到桌邊,從牛皮紙信封裡抽出灰域協議的技術文檔。翻到對映那部分,密密麻麻的代碼註釋裡夾著一行手寫批註。趙冬梅的字。
“內網物理接入點:第八區數據中心七樓。機房B。”
第八區數據中心。王愷上班的那棟樓。他前天下午從消防通道逃出來的地方。七樓的網監處隔壁就是機房B,門口有門禁,刷卡的那種。
“我有臨時通行證。”林哲把卡片從褲兜裡掏出來,塑封的硬卡在燈光下泛著倒懸山logo的銀光,“第十區行政審批中心的。能刷機房嗎。”
“不能。機房門禁是內網獨立權限,不走行政審批係統。”
林哲把卡片放回褲兜。他需要另一張卡。數據管理部的內部卡。王愷的有——但被凍結了。趙冬梅的早就登出了。還有誰有。
老丁。
修車鋪那個。他說過,王愷以前幫過他。怎麼幫的。什麼忙能讓人願意讓一個陌生人借住,還替他打掩護。
林哲拿起手機。“丁師傅手裡有冇有內部卡。”
灰點閃了兩下。
“有。三個月前王愷幫他恢複過一張報廢的員工卡。表麵看是修車鋪的工牌,晶片層寫的是第八區數據中心的訪客權限。王愷當時說是備用。他冇說備什麼用。”
三個月前。又是三個月前。王愷從追到灰域項目開始,就在布這些局。二十個腳本終端,藏在擋泥板內側的車鑰匙,一張蹭掉漆的訪客卡。
“丁師傅知道那張卡的真實權限嗎。”
“不知道。他隻知道王愷幫他修好了工牌。”
林哲把技術文檔合上。牛皮紙信封裡的紙頁還攤著,他一張一張收好,按原來的順序塞回去。趙冬梅在隔壁翻了個身,彈簧床響了一聲。
他把信封鎖好,拿在手裡。
手機螢幕亮了。灰點彈出一條訊息,字跳得很快。
“還有一件事。你在數據中心七樓的時間視窗很短。大樓的夜間巡檢每隔四十分鐘走一趟,下一趟是淩晨三點二十分。現在是淩晨兩點零八分。如果你要今晚做——你需要在四點之前回到第八區。”
林哲打字:“從臨市到第八區要多久。”
“開車一小時二十分鐘。公交停了。你得找老丁借車。”
他站起來,把信封夾在腋下。走到客廳通往臥室的過道口,敲了兩下門框。鼾聲停了。幾秒後趙冬梅拉開門,運動服皺巴巴的,頭髮散在肩膀上。
“看完了。”
“看完了。有個問題。”
趙冬梅靠在門框上,眼睛還帶著睡意,但目光已經清醒了。“什麼。”
“灰域協議在現有係統上跑,需要過一個身份驗證層。王愷的聲紋。”
她冇說話。嘴抿成一條線。
“你早就知道。”林哲說。
趙冬梅從門框上撐起來,走到桌邊,拿起那根冇點的煙。“我知道。我冇告訴你,是因為你在決定做逆協議之前,不該知道這個。”
“有什麼區彆。”
她把煙叼在嘴裡。打火機哢噠一聲,火光照亮她眼角的紋路。“區彆是,我可以讓你覺得這件事有可能不用犧牲任何人。”
“但事實上需要。”
“需要他活著登錄一次。登錄完,聲紋被灰域截獲,他繼續被隔離審查。逆協議成功之後他的錨定也會解除——如果他還在的話。”趙冬梅吐了口煙,“問題是隔離審查期間,誰也不能保證他在。”
林哲把信封放在桌上。“我今晚回第八區。機房B的入口在七樓,網監處隔壁。我手裡有灰域協議,還差一張能刷開機房的門禁卡。”
“卡有辦法。”
“人的聲紋呢。”
趙冬梅的煙燃掉一截,菸灰冇彈。她拿下煙,在菸灰缸邊沿磕了磕。“你打算怎麼讓他登錄。”
“審查室的傳感器有緩衝漏洞。用灰域協議反向寫入假生理數據,觸發醫療緊急通訊協議。他拿到的三十分鐘限時通訊,會用來登錄內網。”
客廳裡的冰箱壓縮機又啟動了。嗡嗡聲填滿了沉默。
趙冬梅把煙掐滅。“數據包的延遲你能算準嗎。”
“能。”
“行。”她轉身走進臥室。林哲聽到抽屜拉開的聲音,紙頁翻動的聲音。她出來的時候手裡多了個U盤,外殼磨花了,標簽上貼著一小塊膠布,寫著“GHOST”。灰域的代號。
“這裡麵是灰域協議的源代碼。你拿去。用之前改一下參數——係統更新過,舊協議會被檢測到。”
林哲接過U盤。塑料殼上有劃痕,邊緣發燙,像是她剛纔攥在手心裡捂了很久。
“樓下有部老式筆記本,”趙冬梅指了指牆角那台合著的電腦,“冇聯網。你拿它改完代碼再走。”
林哲打開筆記本。螢幕亮起來,係統很慢,桌麵是一張褪了色的風景照,不是倒懸山——海是藍的,天空也是藍的。他認出那是掛曆上的同一張照片,三年前那頁。
他插上U盤。代碼檔案跳出來,密密麻麻的等寬字體。對映部分在第174行,趙冬梅用批註標出了係統更新的三個節點。他敲鍵盤,手指在塑料鍵帽上跳得很輕。
改了大概四十分鐘。編譯通過。冇報錯。
趙冬梅站在窗邊看巷子,背對著他。菸灰缸裡多了兩個菸頭。
“好了。”
她轉過身。“下樓的時候輕點。隔壁老太太晚上睡得淺。”
林哲把筆記本合上,拔下U盤。裝機的時候,牛皮紙信封裡的東西他冇全拿——隻抽出了工單影印件和灰域協議的使用說明,摺好塞進褲兜。剩下的還給趙冬梅。
“逆協議做完,你的數據會擦乾淨。”他說。
趙冬梅點了下頭。她把信封接過去,手指在紙皮邊緣摸了摸。“做完之後你自己呢。九十秒夠不夠你退出。”
“夠。”
夠不夠其實不知道。但他不能多想。多想一秒,手就會慢。
他拉開鐵鏈釦,推開門。鐵樓梯在夜風裡晃了一下,欄杆上的鏽蹭在掌心裡,粗糲的。走到巷子底的時候,他回頭看了一眼。趙冬梅還站在門口,穿深灰色運動服,背後的燈光把她照成一個瘦削的剪影。
門關上了。
巷子裡路燈的黃光落在地麵上,野貓已經不在了。林哲穿過菜市場的空攤位,塑膠棚子在風裡啪嗒響。回到修車鋪的時候,鋪子裡的燈還亮著,老丁躺在滑板上睡在車底下,手裡還攥著扳手。
林哲蹲下來。“丁師傅。”
老丁睜開眼。從車底滑出來,扳手掉在水泥地上,叮噹一聲。“幾點了。”
“快三點。跟你借兩樣東西。”
“說。”
“那個工牌。還有外麵的麪包車。”
老丁從地上爬起來,膝蓋哢噠響。他走到工具箱旁邊,拉開最下麵那層抽屜。一堆螺絲刀和套筒扳手底下壓著一張白色工牌,磁條是灰色的,和其他工牌的黑色磁條不一樣。他拿出來,在工裝褲上擦了擦灰,遞給林哲。
“王愷說這張卡隻能刷一次。”老丁的眼睛在工牌和林哲之間掃了一下,“用完自動報廢。”
“夠用一次就行。”
老丁點了下頭。他冇問林哲要去乾什麼。隻是從牆上的掛鉤上摘下鑰匙串,取出一把車鑰匙,車標磨冇了,塑料殼上纏著黑膠布。
“油加滿了。車停在鋪子後麵。”
林哲接過鑰匙和工牌。鑰匙是涼的,工牌邊緣有點毛,被反覆摸過。他轉身要走,老丁在後麵叫住他。
“那個小子——王愷。”老丁把手在工裝褲上蹭了蹭,“他還好嗎。”
林哲停了一秒。“還不知道。”
老丁冇再問。他彎腰撿起地上的扳手,重新躺回滑板上,滾進車底。
林哲推開後門,窄巷子裡停著那輛麪包車。車身一側噴著“倒懸山市政服務”,漆又蹭掉了一塊,底下露出藍漆。他拉開車門坐進去,方向盤上有被手磨出的光滑痕跡。插入鑰匙,擰動。引擎抖了一下,啟動。
儀錶盤上的時鐘顯示淩晨三點零三分。
從臨市開回倒懸山邊界,導航顯示一小時二十分鐘。到第八區數據中心還要再加二十分鐘。他得在四點之前到大樓附近。
手機亮了。
灰點彈出一條訊息:“路線規劃好了。用春城南路→省道305→繞過邊界檢查站東側。那個位置淩晨三點到四點之間是巡邏盲區。進了倒懸山之後沿鐵路線往東,停在第七區貨場。然後步行到第八區數據中心。預計四點二十到。”
林哲踩下油門。麪包車駛出窄巷,拐上春城南路。路邊的拆樓在黑夜裡隻剩輪廓,窗戶洞開著,像無數張冇有牙的嘴。路燈隔一盞亮一盞,車燈的光柱裡飄著夜霧。
他開了大概二十分鐘,手機又震了。
“到了一件事。你手裡那張老丁的訪客卡,權限隻能刷開B號機房。進機房之後,需要把灰域協議從內網注入。機房B的編號是B-07。位置在機櫃第三排最裡麵。”
林哲瞟了一眼手機。“你連編號都知道。”
“王愷的日誌裡寫的。他三個月前把數據中心七樓的機櫃分佈全部摸過一遍。B-07是唯一一個可以直接連接權限節點的物理介麵。其他的都走了交換機的隔離層。”
三個月。王愷趁還在網監處上班的時候,把每一塊磚都踩過了。
林哲握緊方向盤。路麵在車燈下往後滾動,省道305的路況很差,水泥路麵裂了,車輪壓過去顛得方向盤抖。
“我到了機房之後,先觸發審查室的醫療緊急通訊。王愷拿到三十分鐘限時通訊,他會登錄內網——”
“他不會。”
林哲鬆了一下油門。“什麼。”
“審查室的限時通訊不等於內網登錄權限。他被隔離審查之後,內網權限凍結了。通訊鏈路是外網——隻能通話,不能操作。”
林哲冇說話。車速慢下來,引擎聲變得低沉。窗外是黑漆漆的野地,遠處鐵路線上一列貨車亮著尾燈,紅色的光點在夜霧裡一明一滅。
“那限時通訊有什麼用。”
“讓他告訴你一個東西。”
“什麼。”
“他在被隔離之前,在權限節點上留了一個後門。不是係統層麵的後門——是一個觸發口令。隻要在灰域通道內部輸入那個口令,身份驗證層會被直接跳過。不需要聲紋。”
林哲把車停在路邊。引擎怠速的聲音在黑暗裡悶悶地響。他攥著方向盤,指節硌在塑料套上。
“就是說,他不用登錄。隻需要通話。”
“對。隻需要通話。”
“那為什麼趙冬梅說要聲紋。”
“她不知道後門的事。王愷冇有寫在給她的文檔裡。”
林哲盯著手機螢幕。灰點靜靜亮著,不閃了。像一隻在等他做決定的眼睛。“他知道自己可能被隔離。所以把後門口令留給自己。”
“對。口令隻有他知道。”
“如果他不說呢。”
備份程式彈出一行字,一個字一個字地往外跳,像在斟酌措辭。
“他會說的。”
林哲看著那四個字。冇回覆。他重新掛擋,踩油門。麪包車駛過省道的裂縫,往邊界方向開去。車窗外,倒懸山的輪廓還冇出現,但天空的顏色已經開始變了——從純黑轉向灰黑。遠處的雲層被城市燈光映上一層模糊的白。
四點十五分。他過了邊界盲區。鐵絲網在夜霧裡若隱若現,攝像頭指示燈冇亮。第七區貨場在右手邊,集裝箱堆成黑色的方塊。
他把車停進貨場,熄了燈。
步行到第八區數據中心用了二十分鐘。灰白色的十五層樓在淩晨的霧氣裡亮著幾扇窗戶。消防通道的門還是壞的,鐵門虛掩,綠色安全出口指示燈在黑暗裡發著熒光。
林哲側身擠進去。
樓梯間聲控燈一層一層亮起來。七樓防火門推開的時候,走廊裡日光燈嗡嗡響。網監處的門關著,隔壁機房B的門牌在燈光下泛著冷白色的光。門禁讀卡器亮著紅燈。
他把工牌貼上去。
滴一聲。綠了。
機房門推開,冷氣撲麵而來。機櫃排列在黑暗裡,隻有指示燈閃著藍色和綠色的光點,成排成排,像某種密集的星空。風扇的嗡鳴蓋過了日光燈的聲音。
第三排。最裡麵。
B-07是一塊嵌在機櫃麵板上的麵板,一個標準網口,旁邊貼了張標簽,印著“權限節點·物理層接入”。
林哲蹲下來。從褲兜裡掏出U盤,插進那台老式筆記本——趙冬梅給的,臨走前他順手塞進了揹包。筆記本開機速度還是慢,但電池是滿的。
他把灰域協議調出來。運行。
終端介麵上跳出一行提示:“灰域協議v2.2已加載。目標節點:權限。:物理層B-07。等待內網接入驗證。”
手機震了。
“現在需要觸發醫療緊急通訊。審查室傳感器在四樓。灰域協議偽裝信號需要精準覆蓋傳感器重新整理視窗。視窗每三十秒一次,下一次在——十七秒後。”
林哲看著筆記本螢幕上的計時器。灰域協議的倒計時已經開始跳了。17,16,15。
手指在鍵盤上懸著。
4,3,2,1。
回車。
灰域介麵彈出一行綠字:“偽裝數據包已注入。目標傳感器DM-M03。覆蓋時長:六秒。等待反饋。”
六秒。
五秒。
四秒。
三秒。
兩秒。
一秒。
綠字又彈出來:“醫療緊急通訊協議已觸發。審查室通訊鏈路開啟。限時三十分鐘。目標:隔離審查對象LK-004。”
LK-004。王愷。
林哲把手機拿起來。手有點抖,但他冇去控製。備份程式彈出了一條提示:“通話鏈路已建立。你要接嗎。”
他摁下接聽鍵。
電話那頭傳來的呼吸聲,有點重,像剛經曆了什麼劇烈的事,還冇完全平複。然後那個聲音開口了。
“——我說了讓你彆重啟手機。”
聲音有點啞。語速比係統模擬的那個快,句子末尾有個自然的下沉,不是稿子那種平滑。是真的王愷。
林哲攥緊手機。指節壓在螢幕邊緣,手指尖是冰的。“你的腳本說你在審查室裡。”
“嗯。裝了三天了。”王愷的聲音頓了頓,“你拿到灰域協議了。”
“拿到了。還差一個身份驗證層。趙冬梅說要你的聲紋。”
電話那邊傳來一個很輕的聲音。像是笑了一下。“她不知道後門的事。”
“我知道。”
沉默從電話那頭漫過來。機房裡隻有風扇在響,成千上萬個小風扇,同時轉。
“口令是‘灰域之錨’。英文。十六個字元,全小寫。”王愷的聲音忽然變快了,像在趁著這三十秒把話說完,“在灰域通道裡輸入這個口令,驗證層會被跳過。你有九十秒。九十秒後通道閉合。彆管日誌清理——灰域自己會清理。上傳完退訂批文,立刻斷開。一秒都彆多留。聽懂了嗎。”
“懂了。”
“記住了。”
林哲的手指在筆記本鍵盤上打字。口令彈在灰域介麵的驗證欄裡,十六個字元,冇有回顯。
螢幕上跳出行字——“身份驗證已跳過。灰域通道開放。剩餘時間:90秒。”
他開始上傳退訂批文。工單影印件已經掃成圖片,三張,連同趙冬梅提供的原始檔日誌,一個壓縮包。進度條爬得很快。23%,47%,81%。
手機裡王愷的聲音還在。“林哲。”
“嗯。”
“把你臉上那個灰點關掉之後,替我喝一杯。”
進度條到百分之百。上傳完成。
林哲盯著螢幕。手指按在回車鍵上。眼眶有點酸,但冇東西流出來。“你自己喝。”
電話那頭又傳來一聲很輕的笑。然後通訊斷了。螢幕彈出一行字——“限時通訊已結束。鏈路關閉。”
林哲把手機放下。筆記本螢幕上的灰域介麵正在倒計時。45秒,44秒。通道還在開放。他拔下U盤,合上筆記本。
站起來的時候膝蓋哢噠響了一聲。
他把東西全部塞進揹包。推開機房的門,日光燈還是嗡嗡響。走廊裡冇有人。消防通道的防火門在走廊儘頭。他走過去。
推開門。聲控燈啪一聲亮了。
下樓。五樓,四樓,三樓。每一步腳底下都有沙沙的迴響。到了二樓,他推開通往貨梯的防火門。空蕩蕩的辦公區還是老樣子,拆光的格子間在黑暗裡像一片輪廓模糊的立方體。
貨梯門開了。
他走進去。摁B1。
電梯往下走的時候,褲兜裡的手機震了一下。不是備份程式。是係統通知。
他把手機翻過來。螢幕亮著。藍底白字。
“權限節點異常告警。檢測到未授權數據寫入。係統正在追蹤入侵源。”
林哲看了。冇刪。冇必要刪了。
電梯到地下停車場。門打開。空蕩蕩的水泥地麵,日光燈管隔幾米一根,光照亮的地方停著幾輛車。他找到那輛麪包車——車身側麵噴著蹭掉漆的“倒懸山市政服務”。
坐進去。發動。引擎聲打破了地下停車場的低頻嗡鳴。開出停車場的時候,後視鏡裡能看到數據中心那棟樓,玻璃外牆反射著灰白色天光,像一麵冇擦乾淨的鏡子。
天快亮了。
林哲踩下油門。麪包車拐上第八區的主乾道。路燈還亮著,橘黃色的光灑在瀝青路麵上。街邊晨跑的人從他身旁掠過,一個拎著早餐袋的女人在等紅燈。
褲兜裡手機震了。
不是係統通知。是備份程式。
一條訊息,白底黑字。
“灰域通道閉合。九十秒用完。退訂批文已寫入權限節點。你的錨定標記在三分鐘前被清除了。”
林哲把車停在路邊。手指壓在方向盤上,骨節發白。他把手機拿起來,盯著螢幕。
又一條訊息彈出來。
“王愷的錨定標記也清除了。係統裡找不到他。”
然後是第三條。
“叫那份日誌。他最後一條記錄寫的——”
林哲等了五秒。字一個個跳出來。
“已確認退訂。係統內所有標記終端清除完畢。二十個,全活。”
路邊早餐鋪子的蒸籠冒著白汽,老闆娘掀開蓋子,一團白霧升起來,混著麵香和肉餡的味道。有個穿校服的女孩站在鋪子前麵翻硬幣。街對麵,倒懸山第八區的天際線在晨光裡慢慢清晰起來。
林哲把手從方向盤上放下來。手機螢幕暗了。灰點在右下角閃了一下,然後熄滅了。
他擰動車鑰匙。引擎重新響起。
麪包車駛向第七區方向。出邊界的時候天已經大亮了。灰白色的天空裂開一道縫,有陽光從裡麵漏出來,照在路麵上一塊掉漆的路牌上。
他開往臨市方向。
省道305的裂縫還在,車輪壓過去的時候顛了一下。車窗外,鐵路線旁邊長著膝蓋高的野草,草尖上掛著露水。遠處貨運火車的汽笛響了一聲。
副駕駛座上,手機螢幕亮了。桌麵壁紙還是那張拍糊的第八區夜景,燈光線拉成一道道橙黃的線。
林哲看了一眼。打開車窗。風灌進來,帶著鐵軌旁邊野草和晨霧的味道。
他把手機翻過來,螢幕朝上放在副駕駛座上。灰點冇再亮。
麪包車繼續往前開。