2020年夏,旅芝国首都,拉维港 “玉汗人特别狡猾,其情报局又人才济济,想骗过他们很不容易。”勒夫看了看频频点头的凯兹,转过身继续向沙姆隆二世汇报:
“我和凯兹商量之后,结合他这个标准理工男的特点,制定了一个引诱玉汗人上钩的计划。”
“如果我们把凯兹派到国外,与他的特长和工作性质明显不符,很难不被怀疑。但在拉维港,若是面对面被策反,简直是天方夜谭。所以,我们希望引诱玉汗人通过互联网策反凯兹。”勒夫继续分析道:
“凯兹是‘铜墙’导弹防御系统的核心设计师之一,我们相信他一定在玉汗人的关注名单之中。最近凯兹被处分,玉汗人也一定注意到了。”
“你们是想让玉汗人在暗网上,主动联系凯兹?”沙姆隆二世问道。
“是的,我是个程序员,也是一个科学爱好者,我匿名在暗网上活动,但有意让有心人可以破解并追踪到我家的 IP地址。”凯兹胸有成竹地说道。
“我们计划让凯兹上一个程序员们做脑力体操的论坛。由凯兹主动发布烧脑的帖子,相信跟帖中一定会有玉汗国特工。”勒夫说道。
“嗯,然后你们在跟帖中选择聊天对象,再通过聊天找到目标?”
三人互望着,笑了。
所谓的暗网,不是指某一个具体的网站,而是对可匿名又很难追踪的网络的统称。
通常资深玩家都是网络高手,甚至是黑客级别的骨灰级玩家。
见不得光的黄赌毒、买凶买枪当然会首选暗网。
但上暗网的也不全是坏人,很多工作压力大、社恐的程序员就很喜欢在其间发布一些烧脑的问题,等待高手破解。
勒夫看着凯兹熟练地敲击着键盘,定义他的住所 IP地址为底层之后,做了层层加密处理。
凯兹转来转去之后,终于打开了对话框,输入了他的网名:
“log(n)-费马检验的四重奏”。
凯兹悠闲地从椅子上站起来,走到窗口开窗透气。
勒夫一脸不解,问道:
“你怎么光输入名字,不出谜题呢?这怎么引人上钩呀?”
凯兹神秘地笑了,说:
“我的网名就是谜题,等着吧。”
玉汗国高原城 哈米德叫来了巴希尔和罗珊娜,布置了任务:
“旅芝国‘铜墙’防御系统的核心设计者之一凯兹,因错被罚,很可能心存不满。情报中心发现他今天登陆了一个暗网,你们通过匿名身份,跟他聊聊,试探一下。”
“‘铜墙’系统核心设计者?旅芝人受再大的委屈,也不可能投靠我们吧?”巴希尔摇着头表示怀疑。
“我也觉得不可能,但是,旅芝国技术特工上暗网本身就不正常,我们可不是那么好骗的,边聊边分析吧。”罗珊娜点头赞同巴希尔的意见,接着对哈米德说:
“老爸,把网址链接和他的网名、聊天记录给我们吧。”
“没有聊天记录,只有一个网名,log(n)-费马检验的四重奏。”哈米德忍不住笑着说道。
“有意思,巴希尔,这是你的强项,应该是一个关于数论的谜题吧?”罗珊娜对巴希尔眨了一下眼睛,充满期待地看着他。
巴希尔边思考,边给罗珊娜讲解。
费马是著名的业余数学家,他被全世界记住和熟悉,主要是因为看似简单的费马大定理,困扰了数学界将近300年,直到1995年才被证明。
而费马小定理虽然没有那么高的知名度,但其对于数论和密码学的贡献是毫不逊色的,可以说是研究素数的基础。
所有的素数都满足费马小定理,但反过来,满足费马小定理的整数却不一定是素数,这些不是素数的整数被称为伪素数。
现代密码学离不开素数,密码编制者可以任意使用两个很大的已知素数A和B,可以很容易得到乘积C。
发送密码的人只需发出C,就是我们熟悉的所谓“公钥”。
截获C的任何人想要知道A或B,除非有密码本,否则,就需要用非常大的计算量,进行困难的整数分解。
当C足够大时(比如2^1024),整数分解需要数月甚至数年的计算时间,也就达到了保密的目的。
为了确保A和B是素数(否则,分解难度会指数级减小),素数判定问题就成为数论和密码学研究的一个紧迫的课题。
使用计算机检验一个大整数n是否是素数,有很多种方法。无论哪一种方法的目标都是尽可能缩短检验时间。
密码学中使用的整数n特别大,即使用计算机,计算次数也不能与n相关(位数会挤爆内存),最多只能与log(n)相关。
2002年,三位数学家证明了在多项式时间log^12(n)之内,后来优化为log^7.5(n),可以对任意整数n进行确定性的素性检验。
该检验方法以三位数学家的姓氏首字母命名为AKS检验法。
遗憾的是该检验方法消耗的计算机内存过大,无法上机实用。只能停留在论文层面。
目前,应用于军事、通讯、金融的密码,底层的素性检验程序使用的是概率检验法。
比较流行的算法是基于米勒-拉宾检验的复合算法。
由于费马伪素数数量太多了,不能仅使用费马小定理进行素性检验用于加密。
巴希尔的介绍让哈米德昏昏欲睡,他连忙收住话头,指着那个奇怪的网名说:
“作为数论研究,有些数学爱好者仍然利用费马检验,探寻整数的极为有趣的性质。比如我曾经看到过一个有意思的猜想。”巴希尔接着说:
“对任意整数n从二进制到log(n)向下取整进位制,进行费马检验,能够通过检验的伪素数除卡迈克尔数之外,必有n=(a+1)(2a+1)的形式。”
“有爱好者在互联网发帖,公布了2^64以内的47个伪素数,均满足上述猜想。”
“其中最小的n=242017633321201=11000401×22000801。”
“这47个数的两个因子都是素数吗?”罗珊娜好奇地问道。
“你说到关键了,按照猜想,a+1可以是素数也可以是合数。如果我没记错,其中46个数都只有两个素因子,只有一个n的 a+1是三因子合数,2a+1是个素数,这个n是由四个素因子组成的合数。”
罗珊娜终于听明白了,问道:
“四重奏指的是四个素因子?对于小于2^64所有整数进行费马检验,进位制从2至log (n),能通过检验的非卡迈克尔数的伪素数只有一个四因子合数。这个满足条件的最小的四因子合数到底是哪个数呀?”
巴希尔打开自己的电脑,从收藏夹中找到了包含47个数的表格,把那个唯一的四因子伪素数抄在了黑板上:
n=168562580058457201=103×307×9181×580624801
其中, a+1=103×307×9181=290312401。
“这就是log(n)-费马检验的四重奏!”巴希尔得意地说道。
哈米德赞许地看着巴希尔问道:
“你们给那个凯兹回复的内容就是这四个数字,对吧?”
巴希尔点头表示认可,罗珊娜若有所思地说道:
“回复这四个数字仅仅是解开了他出的谜题,为了使聊天进行下去,我们也需要起一个自带谜题的网名,考考他。”
“这个有意思。”巴希尔将网名输入栏空着,在下面输入了聊天内容:
“103,307,9181,580624801”
巴希尔将键盘推给了罗珊娜,顽皮地做了一个请的动作。罗珊娜想了想,在网名栏中输入:
“O(√n ln(n))-黎曼猜想的三和弦。”