宋砚和纪寻连夜排查了那六个编号对应的身份。
第一轮比对是全国失踪人口数据库。纪寻把1号到6号的系统日志里残留的生物特征数据——身高、体重、推测年龄、血型——提取出来,做了模糊匹配。系统跑了一个半小时,弹出来的结果是零。不是匹配不上,是数据库里根本没有和这六组数据对应的失踪记录。十年前的同一个月,全国范围内没有任何一桩失踪报案能和这六个编号沾上边。
第二轮是 fingerprint。纪寻用系统日志里一段残留的触觉反馈数据反向推算了三枚指纹的局部特征,导入全国公民指纹库做特征点比对。跑了一整夜,天快亮时结果出来了——查无此人。不是指纹被删了,是这三个人的指纹从来没有被录入过任何系统。没有身份证登记时的指纹采集记录,没有出入境记录,没有驾驶证,没有结婚登记。这三双手从来没有在任何官方文件上留下过指印。
第三轮是DNA。宋砚让法医科新来的陈主任从1号系统日志的残留数据里提取了一段DNA参考序列——这段序列是系统在绑定过程中自动采集的,存储在系统底层日志的最深处,被七层覆盖扇区压在下面。陈主任把序列导入全国DNA数据库跑了一整天。傍晚时分,他亲自拿着比对报告敲开了宋砚办公室的门。
“宋队,没有匹配。”陈主任把报告放在桌上,推了推眼镜,“不是比对失败,是数据库里没有任何可对比的样本。这六个人没有在任何犯罪现场、任何医院、任何亲子鉴定机构留下过DNA记录。他们像从来没有存在过。”
“像。”宋砚接过报告,一页一页翻看,“还是真的没有存在过?”
陈主任没有回答。他在法医科坐了几十年,见过太多无名尸体被送来、被解剖、被贴上“身份不明”的标签然后送进冷藏柜。但那些无名尸体至少有骨龄、有牙科记录、有胃内容物指向的地域饮食习惯。这六个人连这些都没有。他们不是无名——他们是被抹掉了。
陈主任走后,纪寻推开办公室门,手里拎着一个塑料袋,里面装着两罐冰咖啡和一袋已经凉了的煎饺。她把塑料袋搁在茶几上,自己拿起一罐咖啡拉开,仰头灌了一大口。她的冲锋衣拉链今天终于拉整齐了,但马尾还是歪的,眼镜片上有一道新添的划痕——大概又在机房里撞到了什么。她没提,宋砚也不问。
“我又跑了一轮。”她把笔记本电脑摊开,屏幕亮起来,“这次不是查人口数据库。我换了思路——查系统日志。”
“系统日志?”
“1号到6号在被注销之前,每个人的系统都有运行记录。这些记录里没有任何实名信息,但有一段数据我一直接忽略——绑定时的环境参数。”纪寻调出一段代码。密密麻麻的字符在屏幕上滚动,她用指尖点了点其中几行,“温度、湿度、气压、经纬度。每个绑定者在被绑定的那一刻,系统会自动采集环境参数。我把1号到6号的绑定经纬度全部提取出来,做了地图标记。”
她敲了一个键。屏幕上弹出一张卫星地图,六个红色标记散落在省城及周边。最近的三个标记在省城,两个在宁港方向,一个在靠近洛安的山区。
“也就是说,1号到6号在被绑定的时候,物理位置上都在我们省。他们不是从全国各地被收集过来的——他们本来就在附近。普通人,就住在这几个城市。可能每天上班下班,买菜做饭,和邻居打招呼。”
“然后在某一天,他们被选中了。在之后的二十六天里被依次注销。身体被处理,档案被抹除,存在被从所有官方数据库里删干净。像从未存在过。”宋砚把那张地图打印出来钉在墙上,旁边是他之前钉上去的那张六座城市分布图。两张图叠在一起,红点与红圈交叠,十年前的绑定地点和十年后的案发地点在地理上高度重合。
纪寻从塑料袋里拿出一个煎饺咬了一口,嚼了两下咽下去。她把笔记本电脑往旁边一推,靠在椅背上,眼睛盯着墙上那两张图,嘴里还在嚼着。然后她忽然坐直了身体。
“宋队,你说1号到6号全部在十年前的同一个月内被注销。但他们的绑定时间是一年前。也就是说,他们在系统里活了一整年。一整年——不是二十六天。0号观察了他们一整年,然后决定全部注销。”
她停了一下。
“像在挑选什么。”宋砚接上她的话,“或者说,在测试什么。1号到6号是测试版。他测了一整年,发现全部不合格。然后他把六个人全部注销,用他们留下的数据重新调整了绑定协议。一年后,7号激活。7号是第一个正式版。”
“周予知道他是正式版吗?”
“不知道。他以为自己是从零开始的。”宋砚想起审讯室里周予低头看自己手的样子。那双曾经握过解剖刀也握过凶器的手,在灯光下白得发青。周予在审讯时说过一句话:他说“我曾经觉得完美的罪是杀了人之后没有人能证明是你做的”。宋砚当时以为他在总结自己的作案哲学。现在回想起来,他可能是在描述0号——0号不止杀了六个人,他把他们的指纹、DNA、身份证号、甚至曾经存在过的痕迹都一并抹掉了。这才是0号眼中的完美犯罪。不是让警察破不了案,是让案子从来没有发生过。死者不是死者,是数据错误,是被注销的账号,是从服务器里清理掉的无效缓存。这才是顾世平所说的“完美犯罪”——没有尸体,没有证据,没有受害者。连眼泪都没有。因为没有人知道他们曾经存在过。
纪寻从椅子上站起来走到窗前,把冲锋衣的帽子往后一推。远处老冷库还在被拆,挖掘机的液压锤一下接一下地砸在混凝土外墙上。她看着那片废墟,忽然说了句毫不相关的话:“我昨天晚上梦到那些数字了。不是梦到人——我梦到的就是数字本身。1、2、3、4、5、6,排成一排,像墓碑上的编号。然后数字开始消失,一个接一个,从1号开始,最后到6号。数字消失的时候,我在梦里想——不对,你们不该消失,你们应该是人。但我怎么也想不起他们的名字。”
宋砚没有说话。他把纪寻留在茶几上那罐没开的咖啡拿起来,拉开拉环放在她手边。然后他拿起手机走到门外拨通了沈渡的电话。
“沈哥,帮我查一件事。十年前,全省范围内有没有发生过多起无名尸体被集中处理的事件——不管是什么名义的。火化、填埋、海葬,什么都行。”
沈渡沉默了一会儿。听筒里传来打火机点烟的声音,他吸了一口,把烟雾吐出来。“十年前,那时候我还在省厅刑侦总队。那一年夏天,省厅后勤处发过一个通知——要集中清理一批无人认领的尸体,说是积压太久占冷藏柜。我那时候觉得这事轮不到我们刑侦口的人管,没多想。你现在问,我倒想起来了——那批尸体刚好是六具。”
宋砚握着手机的手指微微收紧。“通知还在吗?”
“早就归档了。那种后勤通知不是什么正式文件,十年下来早就没了。但签通知的人我记得——曹建国。那时候他是法医中心副主任。”
宋砚挂断电话,走回办公室。纪寻已经喝完了那罐咖啡,坐在电脑前继续跑数据。他把手机放在桌上,看着墙上那两张地图,在那六个红色标记旁边用马克笔写了一个名字——老曹。
老曹十年前签发了六具无名尸体的集中清理通知。老曹和唐铭远、顾世平是同一代人,在同一个法医中心待过。老曹在十年前用一支蓝笔签了周予的“准予录用”。老曹在五年前签了老方的“意外”结案报告。老曹上周签了联合调查的同意书。
这个人每一次都在最关键的时候签下了自己的名字。每一次签名都把他往这个案子的中心推了一步。