周砚看着那一排留白格,手指在桌面上停了半秒,像是把某个已经逼到眼前的答案按回了喉咙里。
“最后暗语不是一句话。”他说,“是一个位置。”
林序怔了怔。
“位置?”
“对。”周砚把屏幕往前推了一点,指着那一列灰色留白格,“它不是等你写内容,而是等你把名字、责任、签名、甚至补充说明,一起往里面塞。所谓暗语,不是让人记住什么,而是让人默认该在这里补上什么。谁补,谁认。谁认,谁先落钉。”
顾明盯着那几条调用记录,眉头皱得很深。
“这就对上了。”他说,“模板库里这个留白位,最近几轮抽样里都出现过。只是以前它太普通了,像格式里多出来的一小块空白,没人会特意看。现在一旦把证人册开了,它就不是空白了,它是导口。”
周砚没有接话,他在想更深一层的事。
模板与留白并排出现,说明对方不只是想统一口径,而是在统一“落名”的方式。证人册一开,证词要落印,决议要落印,见证位要落印,所有人都得把自己的动作从口头拖回纸面。可如果纸面上还藏着一个留白位,那就意味着最后一步签名可以被引导,甚至可以被预设。名字不是随便签上去的,是被推着签上去的。
而这,恰好就是那种最危险的影子。
它不站在灯下,却能决定灯照向哪里。
“把留白位对应的模板编号全部拉出来。”周砚说。
顾明立刻敲键盘,几秒后,屏幕上跳出一串批量记录。周砚扫了一眼,视线猛地定住。
其中一条编号后面,附着一个极短的内部标记。
BSO017。
不是完整标题,也不是项目代号的正常格式,更像是一枚被刻意缩短过的影子编号。旁边没有解释,只挂着一个来源字段:跳板导出。
周砚的指尖一下收紧了。
“BSO017……”他重复了一遍,声音很低。
林序立刻看向他:“你认得?”
“不是认得。”周砚盯着那串字符,“是见过这种写法。”
他脑子里迅速闪过几个月前那条被封存掉的线索,和第291卷以后逐渐浮出的各种灰层。编号、留白、模板、签名位,这些东西原本是分散的,甚至是各自独立的。可一旦编号前面多了一层跳板导出,那事情就不再是单纯的文档问题了,而是人和权限一起被转了一道手。
“跳板导出是谁做的?”他问。
顾明顺着记录往下翻,脸色一点点变沉。
“不是普通账号。”他停了一下,“是通过一台临时连接机导出的。连接机名义上挂在集团办公室外协运维名单里,但实际登录痕迹没有落在运维侧。它走的是一个中间跳板,导出后还重写了元信息。”
“重写元信息?”林序听得心口一紧。
“把原始来源洗掉。”顾明说,“这样你看到的不是谁导的,而是‘从哪台机器导的’。来源变成了机器,责任就被藏起来了。”
周砚冷冷地看着那条记录。
“这就是他们为什么先动跳板,再动签名。”他说,“跳板决定能不能碰到源头,签名决定碰到之后谁背。BSO017这种编号不是自然生成的,是从跳板里吐出来的影子编号。它一旦出现,后面就一定有人准备把签名位也一并改成‘看起来合法’。”
“你确定?”林序问。
“确定。”周砚说,“你看这里。”
他把屏幕上那一页往下拉,露出另一条极短的修订痕迹。那条痕迹并没有直接写“签名修改”,而是写着一行看似无害的字段:
【落款样式同步至统一签发模板】
这句话很轻,轻得像在调格式。
可周砚知道,这就是刀。
统一签发模板,意味着所有人的签名位置、抬头方式、落点格式、甚至印章大小,都能被统一到同一个标准里。标准本身没错,错的是标准如果被提前套进留白,就会把每一个签名都带进同一个方向。你以为你签的是你的意见,实际上你签的是他们设计好的出口。
“签名位开始动了。”周砚说。
顾明吸了一口气:“也就是说,模板库里那个留白不是单独存在的,它是和签发模板联动的。”
“对。”周砚的眼底沉得像压着一层冷铁,“留白是引子,签名是落点。谁先碰签名位,谁就会先问名。”
屋里一时没人说话。
问名。
这两个字很轻,却把整件事的重心一下翻了过来。
以往都是别人来问周砚的名分,问他谁授权,问他谁让他查,问他凭什么插手。现在不一样了。现在该轮到他问,编号从哪来,跳板是谁开的,签名准备往谁身上落,BSO017到底是谁给出的影子名。
“把跳板链路放大。”周砚说。
顾明把图往右一拉,跳板链一下展开。中间那台临时连接机像一根细得几乎看不见的针,扎在集团办公室外协运维与内部签发模板之间。再往后,竟然还连着一个本来不该出现在这里的账户域:risk.office.owner。
“这账号怎么会在这里?”林序脱口而出。
顾明摇头:“不是这个账号本身进了这里,是它被当成了中继标签。你可以理解成,签发动作被套了一层风险域的外衣。外面看是风险,里面其实是授权。”
周砚眼神一冷。
“他们在拿风险域做掩护。”
“更麻烦的是。”顾明继续往下翻,“这条链路最后还落到了一个二次签名节点上。节点备注只有一个字:名。”
“名?”林序皱眉。
“对,名字的名。”顾明说,“像是专门留给后面的人看的。它不是签名,它是‘问名’。意思很明显,签之前,先确认这个名字能不能落。能落,才签。”
周砚慢慢抬起眼。
这句话像一扇门,忽然把所有细节都打开了。
跳板与签名先动,就得问名。
不是先问内容,不是先问结论,而是先问这个名字到底归谁。名字一旦归错,后面所有签字、见证、封存都会跟着错位。对方不是想单纯偷一个文件,他们是想把责任名和动作名一起换掉。让你签下来的不是你的动作,而是他们预设好的身份。
“BSO017的影子就露出来了。”周砚低声说,“它不是一份内容,它是一个名字的壳。”
林序沉着脸:“那现在怎么办?”
周砚没有马上回答。他盯着那条跳板导出记录,手指缓缓点在“临时连接机”四个字上。
“先别急着碰签名。”他说,“先问名。”
“怎么问?”
“把签名位从模板里剥出来,单列问名页。”周砚说,“所有准备落签的人,先写明自己的身份归属、授权来源、签发链、是否经过跳板导出、是否知悉编号BSO017对应的影子模板。谁不敢写,谁就说明这名字不是他的。”
林序眼神一变:“你要直接把问名页并入正式册?”
“对。”周砚说,“不然他们会把签名藏回模板里。模板里有留白,留白里有暗语,暗语一旦和签名黏住,后面就会变成‘系统自动生成’。现在我们要做的,是把签名从自动生成里拆出来,逼它回到人的身上。”
纪检负责人听到这里,已经明白周砚要做什么。
他把手边的正式册翻到附页空白处,直接拉出一张新的问名页模板。
“列什么字段?”他问。
“第一列,签名人姓名。”周砚说。
“第二列,授权来源。”
“第三列,是否经过跳板导出。”
“第四列,是否知悉BSO017。”
“第五列,是否确认该编号对应模板留白。”
“第六列,是否愿意对签发后果负责。”
他每说一条,顾明就跟着往模板里填一条。屏幕上那张原本空白的问名页很快被拉长,像一条刚刚铺开的审问通道,但每一个字段又都建立在规则上,逼人不得不写实话。
门外忽然传来一声极轻的碰撞。
像有人不小心把什么东西撞到了门边。
屋里所有人同时抬头。
下一秒,门缝下方滑进来一张折起的纸条。
纸条没有署名,只折得很小,像是故意从门缝里塞进来的一枚钉子。林序第一时间想去捡,周砚却抬手拦住了他。
“别直接碰。”他说。
技术人员立刻拿封签袋套住纸条,固定后才缓缓展开。纸条上只有一句话:
【别问名,先签。】
屋里安静得一瞬间几乎能听见空调风声。
周砚看着那五个字,嘴角反而极淡地动了一下。
对方急了。
越急,越说明他们已经不想再等问名页落地。因为一旦问名页先落,跳板与签名就不再能被藏在模板里,BSO017也就不再是影子编号,而会变成一串必须被解释的责任链。对方现在要做的,就是把节奏抢回去,让人先签,再问。
先签再问,是他们最熟的套法。
先把名字按在纸上,再用流程告诉你“后面会补”。可补什么,怎么补,什么时候补,最后都不会再回到你身上。
“这张纸哪里来的?”纪检负责人声音沉下去。
技术人员已经对着纸条外沿做了初步扫描。
“门缝里没有残留指纹。”他说,“纸张边缘有外部打印痕,像是临时输出的,时间很近,墨层还没完全干透。”
“也就是说,他们就在附近。”林序压低声音。
周砚却没有看门外,而是把注意力放回屏幕上那条跳板链。
附近不重要。重要的是,这张纸条正好说明一件事:对方知道他们已经摸到BSO017了,知道问名页一旦签发,就会把跳板与签名一起拖进册里,所以才想用“别问名,先签”把节奏扳回去。看似一句提醒,实则是最后一次试图把名字从人身上剥走。
“把纸条也入册。”周砚说。
“作为威胁记录?”林序问。
“作为反向口径记录。”周砚说,“纸条上这句话,正好证明对方试图绕过问名。入册以后,谁再说签名只是例行动作,就等于承认自己知道名字不能先落。”
纪检负责人立刻点头,让人把纸条封进证据袋,编号同步到问名页下方。
“问名页先走。”周砚说,“谁要签,就先签问名,不签问名的不进正式册。”
“如果他们拒签呢?”
“拒签就等于默认名字不干净。”周砚说,“这比签错更有价值。”
他说完,直接在问名页首行写下自己的名字。
周砚。
三个字落下去的时候,他没有半点迟疑,像是早就知道,这一页迟早要由他先落。紧接着他在“授权来源”栏里写下:解释权复核组正式签发链。又在“是否经过跳板导出”栏里填了“已核验,存在”。最后,他把目光停在“是否知悉BSO017”一栏上,笔尖悬了一下,随后写下一个字:是。
写完,他把纸推到林序面前。
“继续。”
林序按住纸,呼吸略重,但还是迅速签了。顾明、纪检负责人、法务、技术人员,一个接一个落笔,像一串被重新钉回原位的名字。
当最后一笔签完,系统忽然弹出一条新提示。
【问名页已生成】
【签名节点BSO017待复核】
【跳板链路已标记为**险】
【建议:继续前移证人册与签名册】
周砚看着那条提示,眼睛微微眯了一下。
前移。
说明对方已经被逼得开始试图把风险往后推了。
可越往后推,越会撞上证人册。证人一开,签名一动,暗语留白就都得站出来。现在的问题不再是BSO017是不是存在,而是它准备把谁的名字套进去。
门外那道影子又出现了一次。
比刚才更长,停在门口像在听。
周砚没有起身,他知道对方现在不敢直接进来。因为屋里已经把“问名”做成了正式动作,纸面上每一个签字都对应一条来源,一条来源背后都可能牵出一条跳板。对方再往前一步,就不是来阻止,而是来承认自己和影子编号有关系。
“把签名节点再往前推一页。”周砚说。
顾明立刻执行。
新的页面展开时,周砚看见了一个更细小的字段,藏在签名节点旁边,几乎与页边融在一起。
【名源引用】
他盯着这三个字,心里顿时彻底明白了。
签名不是起点,名源才是。
BSO017的影子不是一个单独编号,它是名源被跳板导出的那一层外壳。只要名源还在,签名就能被借;只要签名还能被借,留白就能继续藏。现在必须问的,不只是“谁签”,而是“这个名字从哪里来,凭什么能落到这里”。
周砚抬起头,声音比刚才更冷,也更稳。
“名源页也开。”
屋里所有人都没有犹豫。
因为他们都看懂了,这一步不是加码,而是把最后一层影子往灯下拽。
门外那道影子忽然向后退了一步,像是第一次真正意识到,自己被点到了名。