夜裡十一點四十三分。
R 公司研發部的公共區域已經熄了燈。走廊上的感應式頂燈在偵測不到人體移動的第三十秒自動關閉了,留下一整條深灰色的走道和兩面反射著微弱應急燈光的玻璃牆。空調切換到了夜間低功耗模式,出風口的氣流從白天的每秒 2.5 公升降到了 0.8 公升,整個樓層陷入了一種接近冬眠的安靜。
只有兩個地方還有光。
第一個是老 K 的辦公室。但那裡的光不是工作燈光,是監控螢幕的待機藍光和小冰箱的內部照明。老 K 本人兩個小時前就離開了公司,走之前把最後一盒炸雞的殘骸留在了茶几上,甜辣醬的氣味到現在還沒有散乾淨。
第二個是研發部最裡面的一間小型實驗室。門牌上寫著「N. Chen / Chief Designer / Access Level 5」。
門沒鎖。
裡面亮著一盞 BenQ 的螢幕掛燈,色溫調到了 4000K 的暖白光,剛好照亮了桌上的一小塊區域。區域之外全是暗的。
陳寧坐在那張區域裡。
他面前的桌上攤開了三塊螢幕。左邊那塊顯示的是 Falchion 鍵盤的 QMK 韌體原始碼,黑底綠字,密密麻麻的 C 語言函數在螢幕上排列得像一座微型城市。中間那塊顯示的是 Harpe 滑鼠的固件調試控制台,串口輸出的滾動日誌在不斷刷新。右邊那塊是空白的,只有一個打開的終端窗口和一個閃爍的游標。
他的左手放在 Falchion 鍵盤上,右手放在 Harpe 滑鼠上。
姿勢和白天在測試室裡一模一樣。
但做的事情完全不一樣。
白天他是 R 公司的首席設計師,記錄代言人測試數據的面癱工程師。
晚上他是他自己。一個用代碼建造世界的人。
陳寧正在做的事情,用通俗的話說,叫「改韌體」。用專業的話說,叫「對 QMK 開源韌體的核心掃描邏輯進行底層重構」。
Harpe 滑鼠的自適應輪詢率切換機制,他昨天已經在夏雪面前當場修過一次了。但那次修復是應急補丁,用工程師的黑話說叫做「hot fix」——修了表面的問題,但底層的架構沒有動。就像在一棟牆上裂縫的房子外面刷了一層漆,裂縫看不見了,但牆裡面的鋼筋還是在慢慢鏽蝕。
今天晚上他要做的,是把那面牆拆掉,換上新的鋼筋,再重新砌起來。
這需要時間。
也需要安靜。
他已經在這張椅子上坐了三個小時了。中間只站起來過一次,去茶水間泡了一杯速溶咖啡(不是手沖,他沒有那個耐心,而且他極度懷疑那些花二十分鐘磨豆子、悶蒸、注水的人到底是為了喝咖啡還是為了表演行為藝術)。咖啡的杯子是 R 公司的贈品馬克杯,上面印著 Falchion 的產品圖和一行標語:「Precision is信仰」。那個「信仰」的繁體字是他自己改的,因為簡體的「信仰」筆畫太少了,看起來不夠莊重。
他喝了半杯咖啡。
然後回到螢幕前,繼續打字。
手指在 Falchion 的鍵帽上飛速移動。每一次敲擊都精準得像一把微型氣動釘槍,力道一致,節奏均勻,發出的聲音在安靜的實驗室裡形成了一種規律的、接近白噪音的背景音。
嗒嗒嗒嗒嗒嗒嗒嗒。
像一台精密運轉的打字機。
在這種規律的鍵盤聲裡,陳寧的大腦進入了一種他稱之為「代碼流」的狀態。那是他效率最高的狀態,相當於運動員的「zone」,或者音樂家的「心流」。在這種狀態下,他的意識和代碼之間的距離會被壓縮到接近零。他不需要「想」怎麼寫代碼,代碼會自己從他的手指裡流出來,像水從泉眼裡湧出來一樣。
他的眼睛盯著螢幕,瞳孔裡映著一行行滾動的綠色字元。
他的手指在鍵盤上跳舞。
他的大腦在代碼的叢林裡高速穿行。
然後,在第十一行的一個函數調用裡,他看到了一個不屬於這段代碼的東西。
那個東西非常小。
小到如果不是他正在以「代碼流」狀態逐行審視原始碼,根本不可能注意到。
那是一個異常的網路封包。
Harpe 滑鼠的韌體在運行時,會定期向 R 公司的內部伺服器發送一組心跳封包,用來報告設備狀態和使用數據。這些封包的格式是固定的:開頭是一個 4 位元組的 magic number(「0xR0G1」),中間是設備序列號和狀態碼,結尾是一個 CRC32 的校驗和。
正常的心跳封包大小是 64 位元組。
但陳寧在韌體的網路監控模組裡,看到了一個大小為 8,192 位元組的異常封包。
8,192 位元組。是正常心跳封包的 128 倍。
而且那個封包的目標地址,不是 R 公司的內部伺服器。
是一組他不認識的外部 IP。
陳寧的手指在鍵盤上停了。
不是暫停。是停止。像一台正在高速運轉的引擎被人拔掉了鑰匙。
他盯著螢幕上的那組 IP 地址看了三秒鐘。
然後他打開了右邊那塊空白的螢幕,輸入了一行命令:
traceroute [IP address]
回車。
路由追蹤的結果開始在螢幕上逐行跳出來。數據包從 R 公司的內部網路出發,經過了七個中間節點,最終到達了目的地。
目的地是一個雲端伺服器。託管商是海外的。IP 歸屬地顯示為「東南亞某國」。
陳寧的眉頭皺了起來。
他又輸入了幾行命令。這一次不是追蹤路由,而是掃描那個雲端伺服器的開放端口和運行服務。
結果出來了。
那個伺服器上跑著一套自動化的社群媒體操控系統。介面是中文的。功能模組包括:批量帳號管理、自動發文排程、評論區輿論引導、關鍵詞屏蔽與替換、以及一套名為「智能洗版引擎」的模組。
水軍控制台。
這是一台水軍控制台。
而 8,192 位元組的那個異常封包,是某個安裝在 R 公司內部網路裡的監控軟體,正在把公司內部的數據偷偷傳送到這台水軍控制台上。
陳寧沒有動。
他坐在椅子上,盯著螢幕上的掃描結果,面無表情。
面癱嘛。
但他的大腦正在以每秒十億次的速度運轉。
他在做三件事。
第一件:確認入侵路徑。那個 8,192 位元組的異常封包是從哪裡進入 R 公司內部網路的?是通過外部攻擊,還是內部植入?
第二件:確認數據洩露範圍。那個監控軟體傳出去的數據具體包括什麼?是公司的商業機密?還是個人隱私?
第三件:確認幕後主使。這套水軍控制台是誰在操作?目的是什麼?
他花了二十七分鐘完成了前兩件。
入侵路徑:內部植入。有人在 R 公司研發部的某一台工作站上插入了一個經過改裝的 USB 隨身碟。那個隨身碟的外殼看起來和普通的 SanDisk 隨身碟一模一樣,但內部的控制器晶片被替換過,植入了一個微型的後門程式。後門程式在隨身碟被插入電腦的瞬間自動執行,利用一個已知的 Windows 系統漏洞獲取了系統管理員權限,然後安裝了那個監控軟體。
數據洩露範圍:不是商業機密。是個人資料。具體來說,是 R 公司內部所有與夏雪相關的數據。包括她的測試數據、她在公司裡的行蹤記錄(來自門禁系統的日誌)、她的個人聯絡方式(來自 HR 的員工資料庫)、以及她在測試期間所有的語音和影像片段(來自測試室的監控系統)。
陳寧的手指在桌面下攥了一下。
指甲掐進掌心。
有人在監控夏雪。
有人用了公司的基礎設施來監控夏雪。
然後把監控到的數據傳到了一台水軍控制台上。
目的不言而喻。
第三件花了更長的時間。
不是因為難度更高,是因為他需要克制自己的情緒。
在追蹤水軍控制台的使用者身份時,陳寧用了他最擅長的方法:反向社會工程學。簡單來說,就是通過分析水軍帳號的操作模式來反推操作者的身份。
每一個操控水軍帳號的人,都會在操作習慣上留下指紋。什麼時間段最活躍?用什麼設備登入?打字速度和用詞習慣如何?發文排程的時間規律是什麼?
陳寧從水軍控制台的後台日誌裡提取了操作者的登入記錄。過去七天的。他把這些記錄按照時間軸排列,繪製成了一張操作者活躍時段的熱力圖。
結果非常清晰。
操作者的活躍時段集中在兩個時間段:每天的上午九點到十一點,以及晚上的八點到十一點。
上午九點到十一點。這個時間段恰好是 R 公司正常上班時間的前兩個小時。大部分員工在這個時間段裡是在通勤、開早會、或者泡咖啡。
晚上的八點到十一點。這個時間段是下班後的個人時間。
陳寧又調出了 R 公司門禁系統的進出記錄(這部分數據他有最高權限,因為門禁系統的硬體是他設計的)。他把門禁記錄和水軍控制台的登入記錄做了交叉比對。
兩組數據的時間戳完美重合。
每一次水軍控制台登入的時候,R 公司的門禁系統都會記錄到同一個人刷開了研發部的門禁。
那個人的員工編號:R-0247。
姓名:Eva L.
職位:特聘設計師。
陳寧盯著螢幕上的名字看了五秒鐘。
五秒鐘裡,他的臉上沒有任何變化。
但他的瞳孔收縮了。非常微小的收縮,從 3.2 毫米縮到了 2.8 毫米。這個幅度的瞳孔收縮通常出現在兩種情況下:一是光線突然變強,二是大腦偵測到了一個需要立刻調動全部注意力的威脅。
光線沒有變化。
那就是第二種。
陳寧的手指重新搭上了鍵盤。
這一次,他做的事情不是「改韌體」,也不是「做分析報告」。
他做的事情,用一個詞來概括,叫「反向肉搜」。
但這個詞不夠精確。更精確的說法是:順著數據的河流逆流而上,找到河流的源頭,然後把源頭的每一滴水都化驗一遍。
他先從水軍控制台入手。
那台雲端伺服器的安全防護做得不錯,對普通人來說可能是個黑箱。但對陳寧來說,它的防護等級大概相當於一扇掛了一把腳踏車鎖的木門。他用了十四分鐘繞過了防火牆,進入了伺服器的根目錄。
根目錄裡有三個資料夾。
第一個叫「accounts」。裡面存著水軍帳號的資料庫。總數:十二萬三千四百七十一個。每個帳號都標注了註冊時間、使用的設備指紋、以及被分配到的任務類型。
第二個叫「tasks」。裡面存著水軍任務的排程記錄。陳寧打開了最近七天的記錄。任務內容全部指向同一個目標:夏雪。
任務類型包括:在夏雪的直播間刷負面評論(「就知道靠臉」「技術一般般」「全靠男人」);在各大電競論壇發佈抹黑帖(標題包括「Bee 戰隊 Snow 的真實水平到底如何?扒一扒冰山女神的水分」);以及在微博的相關話題下大規模投放統一格式的負面留言。
第三個叫「source」。這個資料夾的名字引起了陳寧的注意。「source」的意思是「來源」。他打開了它。
裡面只有一個檔案。
一個 Excel 表格。
表格的標題是「資金流水記錄」。
陳寧打開了它。
表格的第一欄是付款日期。第二欄是付款金額。第三欄是付款方式。第四欄是收款方資訊。第五欄是備註。
付款方的名字被隱去了,只顯示了一串數字代號。但收款方的資訊是完整的——那是水軍服務供應商的公司名稱和銀行帳號。
付款金額從幾千到幾萬不等,但每一筆的備註欄裡都寫著同一個詞:「輿論優化服務」。
陳寧把付款記錄的時間戳和水軍任務的執行時間做了交叉比對。
完美重合。
每一筆付款之後的二十四小時內,對應的水軍任務就會被啟動。
這不是一個人隨便買幾個帳號罵人的行為。這是一套有組織的、有預算的、有供應鏈的、專業級別的網路攻擊行動。
而出資者——
陳寧的目光掃到了付款方式那一欄。
支付寶。付款方的支付寶帳號被部分隱藏了,只顯示了前三位和後四位:「139****8827」。
這是一個手機號碼的格式。
陳寧打開了 R 公司的員工通訊錄。
他不需要搜索。他記得每一個員工的手機號碼。不是刻意記的,是他的大腦在處理大量數據時會自動把有意義的資訊存入長期記憶區。
139****8827。
他在腦海裡匹配了零點三秒。
匹配成功。
Eva 的私人手機號碼。入職登記表上填的。前三碼 139,尾碼 8827。完全吻合。
陳寧靠在椅背上。
他摘下了黑框眼鏡,用兩根手指捏了捏鼻樑。然後他把眼鏡戴回去,重新面向螢幕。
他的手指在鍵盤上懸了三秒鐘。
這三秒鐘裡,他的大腦在做最後的評估。
他手裡現在掌握了什麼?
第一:Eva 在 R 公司內部工作站上植入了後門程式,非法監控夏雪的個人數據。
第二:Eva 使用私人資金購買了十二萬多個水軍帳號,對夏雪進行系統性的網路攻擊。
第三:所有證據都指向同一個人。數字不會說謊。時間戳不會說謊。付款記錄不會說謊。
他接下來要做的事情,其實很簡單。
把這些證據打包,發給 R 公司的法務部、公關部、以及董事會。
然後等。
等公司走內部流程,開除 Eva,報警,起訴。
這是最正確的做法。最合法的做法。最工程師的做法。
但陳寧不想等。
或者更準確地說,他不願意讓夏雪再多承受一天的網路暴力。
每多等一天,夏雪的直播間裡就會多出幾千條惡意評論。每多等一天,論壇上就會多出幾篇精心編寫的抹黑帖。每多等一天,那些用機器人批量生成的、千篇一律的「靠臉吃飯」「技術水貨」「靠關係上位」的惡意留言,就會多出幾萬條。
陳寧見過那些留言。
他每天晚上都會用自己寫的腳本爬取所有和夏雪相關的網路輿論數據。他見過那些留言的每一條。他見過那些留言在凌晨三點鐘被批量發出、在早上八點鐘達到峰值、在中午被新的留言覆蓋、然後在傍晚又被重新頂上來的完整生命週期。
他見過那些留言下面,偶爾會出現的夏雪的回覆。
夏雪從來不在公開場合回應這些攻擊。她只做一件事:繼續打比賽。繼續訓練。繼續用實際行動來回應那些質疑。
但陳寧知道,「不回應」不等於「不受傷」。
一個在比賽中能精確到毫秒級的選手,一個能用耳朵分辨軸體觸底聲音頻率差異的人,一個花了七年的時間把自己從手殘練到冰山女神的人——她不是不會受傷。她只是把受傷藏在了所有人都看不到的地方。
藏在凌晨兩點鐘的訓練記錄裡。
藏在每天多加的一小時練習時間裡。
藏在比賽結束後一個人坐在隔音棚裡、摘下耳機、閉上眼睛、深呼吸三次然後再站起來的那三秒鐘裡。
陳寧見過那些三秒鐘。
他不需要在場。他只需要看數據。
數據裡有一個欄位叫做「比賽結束後到離開隔音棚的時間間隔」。正常情況下,這個間隔是十五到三十秒——選手需要摘耳機、整理線材、和隊友擊掌。
夏雪的平均間隔是四十二秒。
多出來的十二秒,是她用來「恢復」的。
恢復什麼?
恢復那張冰山臉。
陳寧每次看到那個四十二秒的數字,胸口都會湧上一股鈍痛。那種痛不是尖銳的,是沉的、悶的,像一塊石頭壓在心口上,搬不走,推不開,只能一直壓著。
他壓了四年。
今晚,他不打算再壓了。
陳寧的手指重新落在了鍵盤上。
他沒有走公司的內部流程。
他用了另一種方法。
他先從水軍控制台的後台提取了所有的操作日誌、帳號資料庫、任務排程記錄、以及資金流水。然後他把 Eva 的私人帳號資訊、購買記錄、以及她和水軍服務供應商之間的通訊記錄(這些記錄存在控制台的「messages」資料夾裡,Eva 連這個資料夾都沒有加密)全部打包。
打包完畢。
他把這些檔案分成了四份。
第一份:發給 R 公司的董事會全體成員。標題:「關於公司內部員工涉嫌非法監控與網路攻擊行為的證據報告」。
第二份:發給 Eva 的父親(那位 VVIP 客戶)的公開商務信箱。標題:「令嬡在 R 公司任職期間的違規行為記錄」。
第三份:發給三家國內最大的電競媒體的匿名爆料信箱。標題:「Fox 戰隊相關人員組織水軍攻擊職業選手夏雪的完整證據鏈」。
第四份:發給 R 公司的法務部。標題:「緊急:員工 R-0247 涉嫌違反公司保密協議及刑法相關條款,建議立即啟動法律程序」。
四封郵件。
全部定時在明天早上八點整發送。
他不想在半夜發。半夜發出去,所有人都在睡覺,郵件會被淹沒在垃圾郵件和系統通知裡。早上八點發,剛好是每個人打開工作信箱的第一時間。
第一眼看到的東西,記憶最深刻。
陳寧在心裡把這個策略命名為「物理超渡的正確時間表」。
做完這一切之後,他又做了一件事。
他打開了一個 Python 腳本,寫了一段大約六十行的代碼。那段代碼的功能是:在明天早上八點鐘,當四封郵件被發送的同時,自動向水軍控制台的伺服器注入一段 payload。
那段 payload 不會破壞伺服器上的任何數據。
它只做一件事:把水軍控制台上所有帳號的「暱稱」欄位,全部替換為帳號的「真實註冊手機號碼」。
也就是說,明天早上,當 Eva 或者任何人登入水軍控制台的時候,他們會看到十二萬多個水軍帳號的暱稱,全部變成了一串串的手機號碼。
身份暴露。
全部暴露。
無處可藏。
陳寧把腳本調試了三遍,確認沒有 bug,然後設定了定時執行。
他靠在椅背上,盯著螢幕上的代碼看了三秒鐘。
然後他在代碼的最後一行加了一行註釋:
# touch her keyboard, touch your career.
動她的鍵盤,毀你的職業生涯。
他保存了檔案。
關掉了螢幕。
凌晨一點十七分。
陳寧站了起來,走到實驗室角落的一個小型防塵櫃前。櫃子是鎖著的,他用指紋解了鎖。
櫃子裡面躺著一把鍵盤。
不是 Falchion。是另一把。
一把還沒有名字的、從未見過光的、被他鎖在這裡不知道多少個日夜的鍵盤。
ROG Falcata。
分離式人體工學鍵盤。左半邊和右半邊之間有一道 V 字形的間隙,兩邊的鍵區各自向外傾斜了一個微小的角度。掌托的弧度像兩片溫柔的手掌,等著接住一雙疲憊的手。
陳寧沒有把鍵盤拿出來。
他只是站在那裡,低頭看著它。
然後他輕輕地關上了櫃門。
鎖好。
轉身回到座位上。
重新打開螢幕。
繼續工作。
同一個夜晚。
R 公司二十三樓的員工宿舍。
Eva 坐在自己的床邊,手裡握著一杯剛泡好的洋甘菊花茶,膝蓋上攤著一台 MacBook。螢幕上顯示的是水軍控制台的操作界面。
她正在安排明天的任務。
明天的任務重點有三個:一,在夏雪的直播間刷一波新的負面評論,主題是「靠關係拿代言」;二,在三個主要的電競論壇上各發一篇長文,詳細分析「夏雪的真實技術水平被嚴重高估」;三,在微博上用五十個高仿號同時轉發太子爺的那條微博,把話題熱度再往上推一推。
她喝了一口洋甘菊花茶。
花茶的味道很淡,帶著一股微微發苦的草本香氣。她喜歡這種味道。這種味道讓她覺得自己是一個「講究生活品質的人」,而不是一個半夜三更坐在床上操控十二萬個水軍帳號的、正在對另一個女人進行系統性網路攻擊的人。
這兩件事之間的距離,在她的認知裡非常近。
近到她覺得這只是「做自己該做的事情」。
夏雪讓她丟了臉。在測試室裡,在陳寧面前。那場「拉花比妳的邏輯複雜」的羞辱,她到現在想起來耳根還會發燙。
所以她要報復。
用她最擅長的方式。
不是正面對抗。正面對抗她打不過夏雪。那個女人的毒舌是核武級別的。
是從暗處出擊。用錢。用帳號。用那些看不見摸不著但數量龐大的、可以一夜之間改變網路輿論風向的數字幽靈。
Eva 覺得這是一場戰爭。
而戰爭是沒有規則的。
她把明天的任務排程設定完畢,點下了「確認」按鈕。
然後她關掉了 MacBook,喝完了最後一口花茶,把杯子放在床頭櫃上,關了燈。
在黑暗中,她的嘴角微微上翹了一下。
那個笑容在黑暗裡看不見。
但它的溫度是涼的。
她不知道的是,在十六樓的實驗室裡,有一個人已經把她的「戰爭」的每一個細節、每一條指令、每一筆資金流向,全部拆解成了一行行冰冷的代碼。
那些代碼正在等待明天早上八點鐘的到來。
像一顆已經設好了倒計時的炸彈。
安靜地。
精確地。
不可阻擋地。
第二天早上。
Eva 像往常一樣,七點四十五分走進了 R 公司的大樓。她穿了一件奶白色的針織開衫,搭配一條淺灰色的及膝裙,左手拎著 Loewe 手袋,右手端著一杯燕麥拿鐵。髮型是今天新換的低馬尾,用一枚金色的髮夾固定在腦後。
她走到電梯口,按下了上行按鈕。
等電梯的時候,她掏出手機看了一眼微博。
太子爺的那條微博已經衝到了熱搜第一。評論數突破了十萬。她昨晚安排的五十個高仿號轉發任務執行得很成功,話題的互動量比她預期的還高了百分之二十。
她的嘴角彎了一下。
電梯到了。
她走進去,按下了十六樓的按鈕。
電梯上升的時候,她順手打開了公司的工作信箱。
想看一眼今天有沒有新的會議通知。
信箱打開的瞬間,她的手頓住了。
收件箱的最頂端,躺著一封郵件。
發件人:R-Hardware IT Department。
標題:「緊急通知:全體員工即刻前往一樓大會議室集合。」
時間:今天早上 7:58。
Eva 的眉頭皺了一下。
緊急通知?什麼緊急通知?
她繼續往下翻。
第二封郵件。
發件人:Board of Directors, R-Hardware。
標題:「關於公司內部違規行為的公開聲明」。
Eva 的手指在螢幕上停了。
她的指尖開始發涼。
第三封郵件。
發件人:R-Hardware Legal Department。
標題:「致員工 R-0247:即日起中止勞動合同的通知」。
Eva 的臉白了。
不是比喻。是真的白了。白到連她精心塗抹的粉底都蓋不住底下那層血色褪去後的蒼白。
她的手指在螢幕上顫抖著點開了第三封郵件。
正文很短。只有三段話。但每一段都像一把錘子,砸在她的胸口上。
第一段:「經查實,員工 R-0247(Eva L.)在任期間,涉嫌在公司內部設備上植入未經授權的監控軟體,非法獲取同事個人隱私數據,並利用上述數據組織實施大規模網路攻擊行為。」
第二段:「上述行為已違反公司保密協議第 7.3 條、第 12.1 條,同時涉嫌觸犯《中華人民共和國刑法》第 253 條(侵犯公民個人信息罪)及第 286 條(破壞計算機信息系統罪)。」
第三段:「即日起,公司正式終止與您的勞動關係。相關證據已移交公安機關。請於今日內歸還所有公司資產並離開公司辦公場所。」
Eva 的手在發抖。
手機差點從手裡滑落。
她用力攥緊了手機,指節泛白,指甲在手機殼上刮出了一聲短促的尖響。
電梯繼續上升。
15 樓。
16 樓。
「叮。」
電梯門開了。
走廊上站著兩個人。
一個是 R 公司的人事總監。一個是法務部的律師。
他們的表情都很平靜。那種「我們已經知道了一切,你也知道我們知道了一切,所以請配合」的平靜。
「Eva 小姐,」人事總監開口了,聲音溫和但堅定,「請跟我們來。」
Eva 站在電梯裡,沒有動。
她的臉上已經沒有了任何表情。不是面癱的那種沒有。是一台正在經歷藍屏的電腦的那種沒有。所有的程式都崩潰了,只剩下了最底層的、還在勉強維持呼吸的作業系統。
她的嘴唇動了一下。
「是誰?」她的聲音很低,低到幾乎聽不見。「是誰做的?」
人事總監和律師對視了一眼。
「這個問題,」人事總監說,「您可以向公安機關詢問。」
Eva 的目光越過他們的肩膀,落在了走廊盡頭的測試室方向。
玻璃牆的另一邊,她什麼都看不見。十六樓的走廊和測試室之間隔著一道磨砂玻璃,只能看見模糊的光影。
但她知道。
她知道是誰。
全世界能做出這種事情的人只有一個。
一個她一直以為只會拿螺絲起子的面癱木頭。
一個她低估了的、用底層代碼武裝到牙齒的、真正在暗處保護著某個人的男人。
Eva 深吸了一口氣。
然後她跟著人事總監和律師走向了會議室。
高跟鞋踩在走廊上的聲音很輕。
輕到幾乎聽不見。
不是精心計算的步頻。
是認輸的步頻。
同一時間。
十六樓測試室。
夏雪剛走進門,還沒來得及放下背包,就感覺到了空氣裡的一絲異常。
不是味道的異常。是人的異常。
測試室裡除了她,還有陳寧。他像往常一樣站在數據台後面,手裡抱著數據面板,黑框眼鏡,白襯衫,面無表情。
但他今天的面癱和昨天的面癱有一點不同。
昨天的面癱是「我什麼都不知道」的面癱。
今天的面癱是「我知道了一些事情,但我假裝我什麼都不知道」的面癱。
這兩種面癱之間的差異非常微小。微小到只有一個花了好幾天時間仔細觀察這張臉的人才看得出來。
夏雪看得出來。
但她沒有問。
她只是放下背包,坐到桌前,開機,登入遊戲。
在等待遊戲載入的時候,她掏出手機,看了一眼微博。
然後她愣住了。
她的直播間。她之前那些被水軍刷了幾千條負面評論的直播間。所有的惡意評論全部消失了。不是被舉報刪除的那種消失。是連帳號帶評論一起蒸發的那種消失。直播間的評論區乾淨得像被水洗過一樣。
她又打開了論壇。
那些抹黑她的帖子也全部不見了。搜「Bee 戰隊」「夏雪」「花瓶」,搜索結果是零。
她打開了微博。
太子爺的那條微博還在。但底下的評論區出現了一個奇怪的現象:所有之前由高仿號批量轉發的評論全部消失了,只剩下真實用戶的評論。話題的熱度一下子掉了好幾個名次。
夏雪的手指在螢幕上停了三秒鐘。
然後她抬頭,看向了三米外的數據台。
陳寧正低頭記錄數據。
面癱。
一如既往的面癱。
但他的白襯衫袖口上,有一道極其細微的咖啡漬。
那道漬的位置在右手袖口的內側,色澤是深褐色的,形狀是一個不規則的圓形。那是速溶咖啡濺上去的痕跡。一個在深夜裡單手喝咖啡、同時用另一隻手打代碼的人,才會把咖啡濺在那個位置。
夏雪的目光在那道咖啡漬上停留了兩秒鐘。
然後她收回了視線。
她沒有說謝謝。
但她嘴角的線條,在轉向螢幕的那一瞬間,柔和了一個幾乎不可察覺的弧度。
桌子底下,陳寧的手在面板上寫了一行數據。
然後翻了一頁。
新的一頁上,只有他一個人會看到的位置,他用極小的字寫了一行備註:
「網路輿論環境已清理。預計在 48 小時內恢復正常。」
他頓了一下。
又加了一行:
「她不需要知道這些。」
再加了一行:
「她只需要打比賽。」
他把筆放下。
拿起咖啡杯。
喝了一口。
咖啡已經涼了。
涼了的速溶咖啡有一種接近中藥的苦味。
但他喝得很平靜。
像一個剛剛完成了一場沒有硝煙的戰爭、但不打算讓任何人知道的士兵。