下一章 上一章 目录 设置
2、心跳 上 ...
-
上午十点,周临渊又站在了心内科监护室门口。距离昨晚那张彩票开奖,已经过去了不到十二个小时。
这次他不是空手来的。他带了三样东西:一袋水果、陈远山的笔记本电脑、和陈远山昨天塞给他的那个U盘。护士说病人今天早上做完检查,指标稳定了一些,但仍然需要持续监护。周临渊把水果放在床头柜上,苹果和橙子在塑料袋里发出窸窣的声响。
陈远山靠坐在床头,身上还是那件病号服,但脸色比凌晨时好了一点。他正看着窗外,听到动静转过头来,目光先落在笔记本电脑上,然后落在周临渊脸上。
“你去了我住的地方?”
“七点去的。门锁换过了——不是换的,是被人修好了。昨天你说门锁没坏但东西被动过,我检查了一下,锁芯里侧有工具痕迹。”周临渊在床边的椅子上坐下,把笔记本放在陈远山腿上。“技术开锁,手法很专业。你邻居说前天下午三点左右,有个穿物业制服的人在你那层待过。不是真物业——物业公司昨天没有维修记录。”
陈远山打开笔记本,手指放在键盘上却没有敲下去。他看着屏幕上的登录界面,停了好几秒,然后输入了一串长密码。系统启动后,他打开一个隐藏文件夹,翻了翻里面的文件时间戳。
“前天下午三点半有人打开过这个文件夹,”他说,“只看了三个文件。一个是双区□□数据汇总,一个是大奖池相位分析草稿,还有一个——”他顿了顿,“是我三个月前写的备忘录。里面有一句话:‘如果被人发现,不要抵抗。把东西交给老周。’”
周临渊坐在椅子上,两条腿交叠,双手交叉放在膝盖上。他的姿态看起来很放松,但陈远山认识他三年,知道这个动作意味着他在用力压住某种情绪。
“所以有人比我先知道你在干什么。”周临渊说。
“也许。”
“什么叫也许?”
陈远山合上笔记本,把它放到床头柜上,和那袋水果并排放着。监护仪继续在响,嘀,嘀,嘀,像某种倒计时。
“老周,”陈远山说,“我接下来要说的话,你听完之后可以觉得我疯了。但你得先听完。”
周临渊没说话。他点了点头。
窗外的阳光从百叶窗缝隙里漏进来,在白色的床单上投下一道一道细长的光斑。
陈远山靠在床头,沉默了很久。监护仪的嘀嗒声填满了病房里的每一个空隙,规律得像某种节拍器。周临渊没有催他。他坐在椅子上,手指交叉放在膝盖上,等着。
“你知道彩票的开奖号码是怎么产生的吗?”陈远山终于开口,问的是三年前在茶水间问过的同一句话。
周临渊这次没有说“摇奖机摇的”。他说:“你说。”
“摇奖机确实在摇。物理球,气流搅拌,看起来很随机。但摇奖机不是从零开始产生随机数的——它需要一个种子。这个种子由一套随机数生成算法提供,算法部署在彩票中心机房的专用硬件上。摇奖机的物理过程只是最后一步,算法的输出决定了哪些球更容易被吹到出口。”陈远山说这段话的时候,声音不高,但每个字都咬得很清楚,像在课堂上推导一个定理。“大多数人都以为自己在买运气。他们不知道,他们买的是一段代码的输出。”
“你怎么知道?”
“因为我花了三年证明它。”
陈远山伸手从床头柜上拿起笔记本,打开,翻出一个文件夹。屏幕上是密密麻麻的图表,横轴是时间,纵轴标注着周临渊看不懂的符号——φ、δ、λ,还有一些他认不出的希腊字母。每条曲线都有不同的颜色,在白色背景上交错盘绕,像某种复杂的地质剖面。
“你看这里。”陈远山指着两条曲线,一条红色,一条蓝色。“红色是双区□□过去一千期的开奖号码,做归一化处理之后映射到相位空间。蓝色是大奖池过去八百期的开奖号码,同样处理。两条曲线看起来完全独立,相关性系数只有0.03——几乎为零。统计学上,它们就是独立的随机事件。”
周临渊凑过去看。两条曲线在屏幕上各自起伏,没有明显的跟随关系。
“但如果我把其中一条沿时间轴平移七点一三天——”陈远山按下键盘,蓝色曲线在屏幕上向左移动了一段距离,“——你看。”
两条曲线忽然重合了。
不是完全重合——有一些细小的偏离,有的地方红在蓝上面,有的地方蓝在红上面,但整体趋势、波峰和波谷的位置、曲线的形态,几乎一模一样。像一个钢琴家把同一首曲子弹了两遍,第一次用降B调,第二次用C调,但旋律骨架是同一个。
周临渊盯着屏幕。他是做私募的,看了一辈子曲线图——股票走势、收益率曲线、波动率模型。他对数据的直觉告诉他,这个重合度不是巧合。
“七点一三天?”他问。
“七点一三天。”陈远山重复了一遍,“精确到小数点后两位。我把双区□□和大奖池的开奖序列做相位解调,发现两条曲线在这个周期上呈现高度同步。然后我又跑了三星彩、顺三星、顺五星——五个品类,同一个周期。”
“这个周期和什么有关?摇奖机维护?开奖日间隔?”
“都不吻合。”陈远山说。他的眼睛又亮起来了,那种在周临渊办公室里见过的光重新烧了起来。“摇奖机维护周期是三十天。开奖日间隔是两天到四天不等。天气模式我跑过,不匹配。太阳黑子周期是十一年,地磁活动指数我也做了相关性分析,没有显著关联。七点一三天——它只存在于数字序列本身。”
周临渊靠回椅背。他在脑子里把陈远山刚才说的话过了一遍,找出一个他没有直接回答的问题。
“你刚才说摇奖机需要一个种子。算法部署在专用硬件上。这套算法,是谁写的?”
陈远山看着他,嘴角动了一下,不是在笑,是一种更复杂的表情——像是欣慰,又像是苦涩。
“你问到了最关键的问题。”他说,“我在过去三年里一直在追溯这个算法的来源。彩票系统的随机数生成器,底层架构是1999年定下来的。那时候彩票系统刚刚全面联网,需要一套统一的随机数算法来保证摇奖的公平性。这套算法由当时的军工科技委员会下属一个技术小组负责设计,对外公开的说法是‘采用国际通用的物理噪声源加软件混合算法’。”
“但实际不是?”
“我找到了1999年的一份内部技术文档。文档里提到的算法框架,不是物理噪声源,是一个叫‘天枢’的系统的一个衍生模块。文档里只有一句话提到了‘天枢’,后面的内容全部被删除了。”陈远山把笔记本屏幕转向周临渊,打开另一个文件,是一份扫描版的旧文档,纸页泛黄,边角有折痕。文档的中间有一段被黑色方块覆盖,只能看到上面一行字——“本算法基于天枢工程第——”
“天枢工程是什么?”
“不知道。我查了三年,没有任何公开资料。但这个名字在三个地方出现过——1999年的彩票系统技术文档,2002年的一份军工科技委员会内部简报,还有——”陈远山停了停,喉结滚了一下,“——前晚闯进我住处的人,翻看的那三个文件里,其中一个文件名就叫‘天枢-相位锁定假说-0512版’。”
周临渊沉默了。
窗外的阳光从百叶窗缝隙里照进来,落在白色的床单上,落在那台笔记本电脑的黑色外壳上。监护仪继续响着,滴,滴,滴,每分钟七十次,陈远山的心跳。
“所以有人不想让你查这个。”周临渊说。
“有人不想让任何人查这个。”
“那你为什么还要查?”
陈远山没有立刻回答。他转头看着窗外,五月的天空蓝得发亮,有鸟从窗外的树枝上飞起来,翅膀扑棱棱的声音穿过玻璃传进来。
“三年前我在气象总署工作,”他说,“做数值预报模式的优化。有一天我在跑一个长期气象数据的周期性分析,发现了一组异常的相位信号。我以为是大气潮汐的某种谐振,但查了所有已知的气象周期都对不上。后来我偶然把这组信号和彩票开奖数据做了交叉对比——两条曲线完全重合。”
他转回头看着周临渊。
“我当时跟你现在的反应一样。不信。觉得是数据污染,算法错误,某种统计学上的巧合。然后我又跑了两百组数据,换了六种方法,去掉了所有可能的外部变量。结论没变。彩票系统的随机数生成,和大气潮汐的某些谐振频率,在底层共享同一个周期。”
“这意味着什么?”
“意味着两件事。第一,彩票不是随机的。第二——这套算法比彩票大得多。它被嵌入了彩票系统,但它不是为彩票设计的。彩票只是它的一个测试场。”
周临渊站了起来。他走到窗边,背对着陈远山,看着楼下停车场里来来往往的人群。一个穿着病号服的老人坐在轮椅上被推着晒太阳,几个穿着白大褂的实习医生蹲在花坛边抽烟,一辆救护车停在急诊门口,后门开着,里面的担架空着。这些人都不知道,就在他们头顶的七楼病房里,一个瘦得只剩骨架的人正在说一个比彩票大得多的东西。
“你需要我做什么?”周临渊问。他没有转身。
“我需要一个人帮我。不是技术上——我的模型已经够了。我需要的是资金、渠道、和一群能保守秘密的人。验证这个模型需要大量投注样本,不能集中在同一个投注站,不能引起风控系统的注意。这需要分散账户、分散投注点、分散兑奖人。”陈远山说,“而且我需要一个人,在我不在的时候,能把这件事做完。”
周临渊转过身来。
“‘在你不在了’是什么意思?”
陈远山看着他,眼睛很平静。
“我的心脏,”他说,“心肌缺血,冠状动脉粥样硬化,三根主要血管都堵了。三年前我爬上气象总署观测塔的时候还能一口气上二十层。现在——”他低头看了看自己插着输液管的手,“现在走五层楼都觉得有人在踩我的胸口。医生说搭桥手术可以做,但我的身体条件不一定撑得过去。”
“手术什么时候做?”
“排期还没定。也许下个月,也许下下个月。”陈远山说,“但重启周期不一定等我。”
“什么重启周期?”
陈远山从笔记本里调出另一个文件,是一个手绘的时间线图,扫描进去的。线条很细,黑色的墨迹在不同的时间点上画了圈,有些地方潦草地写了标注。时间线从1999年开始,延伸到2002年,再从2002年画到2016年,再从2016年画到2030年。最后一个时间点被打了一个星号。
“相位锁定假说的核心推论——如果彩票系统的底层随机数生成器是算法驱动的,那这个算法在特定周期上会产生可预测窗口。我把过去二十年的所有开奖数据跑了一遍,发现每五千一百一十三天,相位曲线会出现一次短暂的正交偏差。偏差持续的时间很短,大概几天,但在这几天里,随机序列的熵值会降到异常低——低到可以被预测。”
“上一次偏差是什么时候?”
“2002年9月。”陈远山说。
“下一次呢?”
陈远山把手指放在时间线最后那个星号上。
“今年。”
周临渊看着那个星号。它在时间线的最右端,墨迹画得很重,像是陈远山用笔反复描了好几遍。
“2002年9月发生了什么?”周临渊问。
“我不知道。那一年的数据很少,大部分记录都被删除了。我只找到一份当年的彩票系统安全审计报告的残篇,里面有一行字——‘2002年9月17日至9月23日,系统维护。期间所有摇奖设备暂停运行,开奖数据由备用算法生成。’”
“七天。”
“七天。”陈远山点头,“五千一百一十三天就是十四年。2002年到2016年是十四年,2016年到今年——”他顿了顿,“又是十四年。”
周临渊走回椅子边坐下。他的心跳得比平时快,但他没有表现出来。他在脑子里把陈远山的话拆开、重组、寻找漏洞。私募做久了,他对任何声称“高收益低风险”的逻辑都有本能的不信任。陈远山给他的信息量太大了,大到像一个精心设计的骗局——中奖彩票、神秘算法、军方背景、十四年周期、一个病得要死的人在病房里讲故事。
但那张彩票是真的。他亲眼看了开奖直播,核对了三遍号码。四百三十六万八千块,如果他今天去兑奖,那笔钱就会进入他的银行账户。骗子不会真的给你一张中奖彩票。四百多万的成本,太高了。
“老陈,”周临渊说,“你说服我了。”
陈远山看着他,没有露出意外的表情,只是静静地等着他说完。
“不是因为你的模型和曲线——我还没看懂那些。说服我的是你放在我桌上的那张彩票。我昨晚核对号码的时候,你已经在医院里了。如果这是骗局,你不会让自己在开奖之前进医院。骗子会守在电话旁边等着数钱。”
陈远山嘴角浮起一点笑意,很淡,转瞬即逝。
“我需要时间准备,”周临渊站起来,“账户、人手、投注方案,这些都需要规划。你在医院里配合治疗,手术的事我去帮你问。如果医生说能做,尽快排。”
“老周。”
“嗯?”
“还有件事。”陈远山说,“从今天起,不要用手机谈这件事。不要发微信,不要发邮件,不要在办公室打电话。你办公室的座机也可能被监听。见面谈,或者用这个。”
他从枕头底下摸出一个小东西,递给周临渊。是一个U盘,和陈远山昨天给他的那个一模一样,黑色的塑料外壳,上面用白色记号笔写着编号:E-003。
“里面是一个加密通讯软件,走的是境外信道,协议是定制的。密码在文件里。以后重要的事,用这个联系。”
周临渊接过U盘,掂了掂。很轻,和昨天那个一样轻。他把U盘塞进上衣口袋里,和昨天那个放的是同一个位置。
“你到底是什么人?”他又问了一遍昨天的问题。
陈远山靠回枕头,闭上眼睛。监护仪继续响着,嘀,嘀,嘀。
“我以前是个气象预报员,”他说,“看了十几年天气。后来发现天气至少是真实的——不管准不准,云就飘在那里,风就吹在那里。但彩票不是。彩票是一种被制造的天气。”
周临渊站了一会儿,没有再问。他转身走出病房,把门轻轻带上。走廊里的消毒水味道这次闻起来不一样了——不只是消毒水,还混着某种更深的、从医院地基渗出来的寒意。
他没有直接走出医院。他在七楼走廊尽头的窗户前站了一会儿,看着楼下人群进进出出,脑子里拼着一幅他还没法完全看清的拼图。陈远山说的话里面有一个细节他刚才没有追问——“天枢-相位锁定假说-0512版”。文件末尾的编号是0512。5月12日,还是在编号里只是巧合?陈远山说文件三个月前写的。三个月前是2月。但这个编号让他觉得不舒服,像一个提前标好日期的预判。
他下了楼,在停车场里坐进车里,没有发动引擎。他把两个U盘从口袋里掏出来,并排放在方向盘上。B-071,E-003。他从手套箱里拿出那台平时出差用的备用笔记本,开机,插入了E-003。
屏幕上弹出一个对话框,要求输入密码。陈远山没说密码是什么。周临渊想了想,输入了一串字符——“7.13”。
密码正确。
加密通讯软件的界面很简单,黑色背景,绿色字体,只有三个功能:文字通讯、文件传输和群组管理。界面上已经有一个人在——用户名叫“PhaseZero”。头像是一片空白。
PhaseZero发来一条消息:“到了?”
周临渊打了两个字:“到了。”
“明天下午三点,城西。我带你看三样东西。”
“什么东西?”
“三年。笔记本。和下一个号码。”
周临渊关掉笔记本,把两个U盘都收进口袋。他发动了车,开出停车场的时候,从后视镜里看了一眼人民医院的大楼。七楼的窗户在阳光下反着光,他分不清哪一扇是陈远山的病房。
他把车开上环线的时候,手机震了一下。宋知意发来的消息:“今晚回来吃饭吗?”
他单手打了一个字:“回。”
然后他又加了一句:“做糖醋排骨吧。突然想吃。”
宋知意回了一个笑脸。
周临渊把手机放到副驾驶座上,握着方向盘汇入车流。云岭市的五月已经开始热了,车里没开空调,窗户开着,风吹进来带着路旁栀子花的香味。他忽然想起昨天晚上洗碗时听到的那句——“观察者效应:观测行为本身会改变被观测系统的状态。”他当时觉得这是一个有趣的科普知识。现在他觉得那是一个预兆。他不再是一个旁观者了。从昨晚九点一刻红球07滚出滚筒的那一刻起,他就已经是这个系统的一部分了。
车在一个红灯前停下来。旁边的车道停着一辆公交车,车身广告是双区□□的——“两元改变命运”。广告上的金色字体在阳光下闪闪发亮。
周临渊看了一眼,踩下油门,驶过了路口。