硬盘插进读取槽时发出轻微的咔声。令狐长生没动,盯着屏幕右下角的时间戳——下午三点零七分。这是从北环污水处理厂旧控制室拆下的第三块存储设备,前两块在进水四十八小时后彻底报废,只剩这块外壳变形的固态盘还留着一线可能。
技术科的人一开始不肯碰。理由很干净:没有立案编号,没有调取手续,不能对非涉案设备进行数据提取。令狐长生没争,只说要测试新购置的恢复模块,借用一下设备。对方犹豫了几秒,看在他过去帮过几次忙的份上,点了头。
扇区扫描开始后,进度条爬得极慢。每恢复一个数据块,都会弹出校验错误提示。令狐长生把椅子拉近,手指在键盘上敲了几下,切换到原始字节视图。绿色的十六进制码在黑底上滚动,他逐行扫过,直到看到一段被标记为“未分配空间”的连续视频帧头。
“就这儿。”他说。
技术员凑过来:“这段没索引,系统识别不了文件结构。”
“不用系统。”令狐长生调出手动解析工具,“直接导出MJPEG流。”
二十分钟后,一段十二秒的监控画面出现在屏幕上。
画面是红外成像,灰白交错,边缘失真严重。一个穿灰色工装的男人出现在厂房门口,左手拖着一只圆柱形铁桶,桶身沾满泥浆。他低着头,脚步稳定,穿过两排废弃反应池,消失在右侧维修通道。
令狐长生让画面暂停在男子转身的瞬间。左腕处有一道深色痕迹,弯弯曲曲,像蛇。
“纹身。”技术员说。
“位置在尺骨侧,三厘米长。”令狐长生记录下来,“工装肩线磨损严重,右肩比左肩低两度,长期负重导致。”
他让视频继续播放。男子进入通道后,画面中断。
“就这些?”
“够了。”令狐长生拷贝了原始帧数据,拔下硬盘,没再说话。
两小时后,周正仁推开物证分析室的门。令狐长生正把一段视频导入步态分析系统。画面里的男子在虚拟坐标中行走,软件自动生成步幅、重心偏移、摆动周期等参数。
“哪儿来的?”周正仁问。
“污水厂。”令狐长生头也没抬,“十二秒,拍到拖桶的人。”
周正仁盯着屏幕看了几秒:“李茂才?”
“不像。”令狐长生调出对比图,“李茂才右膝有陈旧性韧带撕裂,走路时支撑相延长,摆动相缩短。这个人步频均匀,左右对称性误差小于百分之三。”
“体态差不多。”
“体态不是步态。”令狐长生切到压力分布模型,“视频里的人体重约六十八公斤,李茂才户籍登记七十五,实际审讯录像显示他坐下时臀部压强偏高,至少七十三以上。”
周正仁皱眉:“纹身呢?”
“蛇形图案,三道弯折,末端分叉。宏远工程队登记在册的纹身里没有这个样式。”
“可能是后来纹的。”
“也可能是别人。”
周正仁沉默几秒:“你意思是,有人冒用李茂才的身份?”
“不是冒用。”令狐长生点开另一组数据,“李茂才的工牌出现在河岸车里,自然磨损痕迹明显。泵站井底的工牌是新做旧的,边缘有胶水残留。现在这个监控里的人,穿的是工装,但袖口没有队徽刺绣——那是夜班组的标配。”
“所以他不是宏远的人?”
“或者,是但不想被认出来。”
周正仁盯着画面里那个模糊的背影:“你打算报技术科备案?”
“不走系统。”令狐长生关掉分析界面,“所有数据存离线盘。”
“上级要是问起来?”
“没证据的事,不提。”
周正仁没再问。他知道这意味着什么——继续在明线之外走暗路,每一步都得自己扛。
第二天上午,令狐长生调出了李茂才的审讯录像。画面里,李茂才从监室走到讯问室,右腿明显外旋,每走五步就会轻微停顿一次。令狐长生长按快进键,反复播放他上下楼梯的片段,确认膝关节活动受限。
接着,他调出李茂才的体检报告。X光片显示右膝半月板陈旧性损伤,关节间隙狭窄,属于典型的职业劳损。这种伤不可能支撑连续拖拽四十公斤以上的铁桶行走百米。
他把两段视频并列播放:一边是李茂才在楼梯拐角扶墙喘气,一边是监控里那人平稳穿过厂区。
差异太明显。
下午三点,周正仁带回一张手抄名单。是宏远工程队近三年在职人员的花名册,从老熟人那儿悄悄抄来的。他一页页翻,找到李茂才的名字,在“特殊标记”一栏写着“右膝旧伤,夜班免登高”。
“队里没人有蛇形纹身。”他说。
“纹身可以遮。”令狐长生说,“也可以复制。”
“你是说,有人故意弄个一样的?”
“提醒我们注意李茂才,然后让我们以为案子到头了。”
周正仁盯着名单看了很久:“那这个人,为什么要在监控里露脸?”
“不是露脸。”令狐长生摇头,“是让我们看到他不想露脸。低头,背光,穿工装但不戴标识——他在演一个逃犯该有的样子。”
“演给谁看?”
“演给查案的人看。”
周正仁慢慢坐下来。他意识到问题在哪了——从铁桶被埋,到工牌被放,再到监控画面出现,整个过程像是一场精心安排的引导。每一步都留下线索,但每条线索都指向同一个错误答案。
“所以李茂才根本不是逃,是被推出去顶罪的?”
“他逃了,但不是凶手。”令狐长生打开离线硬盘,新建文件夹,命名为“执行者特征”。他把纹身位置、工装磨损、步态参数一一录入。
“你还记得泵站井口的水泥层吗?”他忽然问。
“怎么?”
“浇筑时间在案发后四十八小时内,手法专业,分层压实。不是临时起意,是计划好的掩埋点。”
“你是说,那个拖桶的人,早就知道那里会被封?”
“或者,他就是负责封井的人。”
周正仁猛地抬头。
令狐长生没再说话。他把监控视频拖回起点,再次播放。男子拖着铁桶走过反应池时,左手手腕上的纹身在红外光下显出清晰轮廓。他放慢帧速,逐格推进,直到看清纹身末端的分叉细节——是人为刻出的双线,不是自然蛇形。
“这不是装饰。”他说,“是标记。”
“什么标记?”
“我不知道。”令狐长生暂停画面,“但这个人知道我们会查监控,所以他让我们看到他不想被认出来。可他又让我们看到纹身。”
“矛盾。”
“除非……”令狐长生低声说,“他想让我们记住这个纹身。”
周正仁盯着屏幕,忽然问:“你有没有想过,为什么是十二秒?”
“什么?”
“监控只恢复了十二秒。”周正仁指着手表,“一个完整的进出过程至少要三分钟。可我们只拿到十二秒,刚好拍到拖桶,拍到纹身,拍到背影——像被剪过。”
令狐长生没回答。他重新导入原始数据流,查看文件头信息。视频帧的起始时间是凌晨一点零七分,终止于一点零七分十二秒。紧接着是一段长达两分零三秒的空白记录,然后才是下一组正常监控。
“中间断了。”他说。
“断得太巧。”
令狐长生调出硬盘写入日志。在视频中断的那两分钟里,设备记录了一次异常的写保护解除操作,持续四十七秒。操作来源未知,权限等级为管理员。
“不是损坏。”他低声说,“是人为删过。”
“谁删的?”
“能进控制室,有管理员权限,知道哪段要删。”
周正仁盯着那行日志看了很久:“这个人,还在系统里?”
令狐长生没点头,也没摇头。他把视频最后一帧放大,定格在男子即将转入维修通道的瞬间。那人微微侧身,左肩下沉,右手短暂扶了下墙。
就在那一帧,袖口滑落半寸,露出一小段皮肤。
令狐长生把画面裁剪、增强、对比度拉到最高。
皮肤上有字。
不是纹身,是刻痕。三道短横,排列整齐,像是编号。
他把图像另存,拖进新文档,标注时间、位置、特征。
周正仁站起身,走到他身后,看着屏幕。
“这是什么?”他问。
令狐长生把图像放大到极限。像素点开始模糊,但那三道横线依然清晰。
“不知道。”他说,“但这个人,不想让我们完全看不见。”