下午最后一節(jié)課下課,吉時(shí)習(xí)慣性掏出手機(jī),關(guān)掉靜音模式。
“召喚文檢顧問(wèn)?!币孜暮彩昼娗鞍l(fā)來(lái)的微信。
收到召喚的吉時(shí)如同出籠的鳥(niǎo),興奮地朝易文翰飛奔而去。
吉時(shí)興沖沖進(jìn)入易文翰的辦公室,可對(duì)方卻沒(méi)心情接待他,只是一個(gè)眼神示意他先等一下。
吉時(shí)好奇易文翰在忙什么,湊到他身邊,一起去看電腦屏幕。
“這是什么?”吉時(shí)看到的是一份死亡證明,死者是個(gè)七旬老太,死因是病故,時(shí)間是2021年6月28日。
“我在查閱6月28日去世的人,看看有沒(méi)有跟傅熙喆或者鐘敬勛有關(guān)的。至于說(shuō)為什么,”易文翰從抽屜里取出一張紙,遞給吉時(shí),“你看看這個(gè)就知道了。”
吉時(shí)接過(guò)那張紙,這是一張復(fù)印件,上面是支離破碎的筆記本內(nèi)頁(yè)拼圖,組合好之后,顯現(xiàn)出七串號(hào)碼。
“這是,密碼?”吉時(shí)不由得興奮。
易文翰暫停去查閱高朗發(fā)來(lái)的名單資料,向吉時(shí)介紹案情。
吉時(shí)聽(tīng)完,低頭再去看手中的密碼,了然一笑,“搞不好,是我們,哦不,是喬川,他的那本加密筆記給了鐘敬勛靈感,讓他突然鐘愛(ài)密碼學(xué),搞出了這玩意兒。對(duì)了,鐘敬勛什么學(xué)歷什么專業(yè)?”
“你是說(shuō),這密碼是他自己編的,而且是最近才編出來(lái)的?”易文翰倒是沒(méi)想過(guò)這個(gè)問(wèn)題。
“如果他本身不是什么數(shù)學(xué)系密碼學(xué)的專業(yè),那這密碼很可能是他最近,也就是看過(guò)從劉非那里得來(lái)的部分喬川筆記后,心血來(lái)潮,自己編的;而且我覺(jué)得,密碼的難易程度可能跟他的學(xué)歷高低成正比?!奔獣r(shí)摩拳擦掌,做好了破解密碼的準(zhǔn)備。
“初中學(xué)歷,畢業(yè)后跟著他父親一起給傅家打工,先是做保安,然后是司機(jī),給傅滄源做了15年的司機(jī),給傅熙喆做了5年司機(jī)。”易文翰早就把鐘敬勛的個(gè)人背景摸透,張口就來(lái)。
吉時(shí)松了一口氣,“我就是個(gè)本科學(xué)歷,初中老師,這鐘敬勛幸好不是理科高學(xué)歷,否則他編寫(xiě)的密碼我還真沒(méi)信心破譯?!?br/>
“應(yīng)該不難吧,七串密碼中,前八位不用破譯,后面的才是關(guān)鍵。而七串密碼有五串是已知項(xiàng),時(shí)間和人物都對(duì)得上。只要找出這五個(gè)對(duì)應(yīng)項(xiàng),數(shù)字字母和人名或者地點(diǎn)或者死亡方式等等的對(duì)應(yīng)規(guī)律,就能推算出最后一串密碼的密文,從而得知兇手身份?!?br/>
吉時(shí)重點(diǎn)去看七個(gè)時(shí)間,回想了一番,遲疑道:“不對(duì)吧?這倒數(shù)第二個(gè)時(shí)間,跟你之前跟我說(shuō)的紀(jì)瀟瀟的死亡時(shí)間是對(duì)不上的。你不是說(shuō)法醫(yī)進(jìn)一步推斷的死亡時(shí)間是8月2日至3日嗎?這上面是8月4日啊?!?br/>
“你也說(shuō)了,法醫(yī)是推斷死亡時(shí)間,有誤差很正常,又或者是紀(jì)瀟瀟的死亡時(shí)間正好就是8月3日和4日交界的時(shí)候,鐘敬勛過(guò)了零點(diǎn)去查看,發(fā)現(xiàn)被他折磨的紀(jì)瀟瀟已經(jīng)咽氣,于是認(rèn)定紀(jì)瀟瀟死于4日。實(shí)際上,紀(jì)瀟瀟3日就斷氣了?!?br/>
吉時(shí)恍然,“對(duì)喔。這么說(shuō)來(lái)的話,的確就像是你說(shuō)的,前面三個(gè)時(shí)間后面的亂碼對(duì)應(yīng)的是姜力鈞、許菁菁和殷大昌的死,后面四個(gè)時(shí)間除去6月28日和9月9日,剩下的兩個(gè)分別對(duì)應(yīng)錢(qián)益多和紀(jì)瀟瀟。等于說(shuō)有了題目和答案,我要做的就是還原這個(gè)計(jì)算過(guò)程?!?br/>
“沒(méi)錯(cuò),這比只有題目讓你算結(jié)果簡(jiǎn)單多了?!币孜暮矊?duì)于破譯密碼的算法非常有信心。
“說(shuō)得這么容易,你怎么不自己做?”吉時(shí)打趣。
“搶你的樂(lè)趣,我怕友盡啊。”易文翰也跟著打趣。
“好吧,破譯密碼交給我。那你這邊打算怎么查?”
“賈偉杰、范欣和刁珊珊都有不在場(chǎng)證明,所以鐘敬勛這最后一個(gè)目標(biāo)可能是跟罪惡分紅無(wú)關(guān)的人,也可能分蛋糕的還有一個(gè)或幾個(gè)未知人士。我先從6月28日死亡的人里面查,看看有沒(méi)有什么人能夠跟傅家或者鐘敬勛本人有關(guān),從這個(gè)人作為切入口。另外,我打算去一趟鳳棲山?!?br/>
“分局大隊(duì)的人都沒(méi)找到案發(fā)現(xiàn)場(chǎng),你一個(gè)人怎么找?”吉時(shí)覺(jué)得易文翰這是大海撈針。
“分局的人不知道傅家別館,我跟他們的思路不同,我打算以別館和鐘敬勛被發(fā)現(xiàn)的溪澗之間作為重點(diǎn)搜索范圍。”
吉時(shí)一拍額頭,“對(duì)呀,作為傅家的心腹,鐘敬勛對(duì)傅家別館附近的地形了如指掌,既然要把人帶上刪毀尸滅跡,自然要找自己熟悉的地方。我跟你一起去?!?br/>
“你還是專心破譯密碼吧?!币孜暮苍镜拇蛩闶菐Ц呃噬仙健?br/>
“不耽誤,后天周末,一早就去?”吉時(shí)興沖沖,仿佛要上山野游。
正說(shuō)著,一名偵查員拿著文件進(jìn)來(lái)匯報(bào),“易隊(duì),這些是最近一個(gè)月鐘敬勛的各種網(wǎng)絡(luò)賬號(hào)信息。有一點(diǎn)很可疑!”
偵查員把報(bào)告翻開(kāi)到一頁(yè),遞給易文翰,然后介紹:“從半個(gè)月前開(kāi)始,他在網(wǎng)上搜索過(guò)‘密碼學(xué)入門(mén)’,‘怎樣編寫(xiě)密碼’這樣的此條,瀏覽了不少這方面的網(wǎng)頁(yè)?!?br/>
半個(gè)月前,算算時(shí)間不正好就是鐘敬勛和傅熙喆看過(guò)部分喬川筆記前后嗎?易文翰苦笑,還真的被吉時(shí)說(shuō)中了,是喬川給了鐘敬勛靈感。鐘敬勛的這個(gè)密碼應(yīng)該不難,因?yàn)樗乾F(xiàn)學(xué)現(xiàn)賣。
周五一整天,易文翰把尚城及周邊6月28日過(guò)世的205人全部篩了一遍,除去那些舊病的老人,還有死因明確沒(méi)有一點(diǎn)可疑的,還剩47人非正常死亡的值得注意。
易文翰重點(diǎn)查閱這47人的資料,又進(jìn)一步篩出了36人。他有一種強(qiáng)烈的預(yù)感,這36人之中的某一個(gè),就死于殺手鐘敬勛之手。
吉時(shí)的周五,午休和晚間的時(shí)間全都埋首于那七串密碼。他特意要來(lái)了鐘敬勛的搜索記錄,把鐘敬勛上網(wǎng)搜索的有關(guān)密碼學(xué)的網(wǎng)頁(yè)全都看了一遍。
鐘敬勛瀏覽的內(nèi)容主要是經(jīng)典密碼學(xué),這方面的知識(shí)吉時(shí)也很少有涉獵,這正好也是一個(gè)學(xué)習(xí)過(guò)程。
經(jīng)典密碼中最古老的密碼是凱撒密碼,它的原理極為簡(jiǎn)單,就是吧每個(gè)字母沿著字母表往前或者往后移動(dòng)一定的距離。比如前移三位就是把把A變成D,G變成J,M變成P。解密時(shí),只需往回移動(dòng)同樣距離即可。密文和原文看上去完全不同。
從這最簡(jiǎn)單的技術(shù)中,還是可以看出密碼學(xué)的基本要素:原始信息,也就是明文;混淆后的信息,也就是密文;移動(dòng)幾位的數(shù)值,就是密鑰。
但因?yàn)樽帜甘怯邢薜?,只?6個(gè),所以移動(dòng)的數(shù)值也是有限的,破譯密碼的人只要有時(shí)間有耐心,總能破譯成功。
16世紀(jì),維吉尼亞密碼誕生,自1533年該技術(shù)發(fā)明以來(lái),300年內(nèi)無(wú)人破解。其實(shí),它對(duì)凱撒密碼的改進(jìn)并不復(fù)雜。
凱撒密碼中,每個(gè)字母都移動(dòng)相同距離,那么,可不可以每個(gè)字母移動(dòng)不同距離呢?這樣一來(lái),破譯者就算再有時(shí)間和耐心也無(wú)法破譯了,他必須得知道每個(gè)字母相對(duì)的移動(dòng)距離才行。
不過(guò),這個(gè)想法實(shí)現(xiàn)起來(lái)有點(diǎn)困難。畢竟,我們還得告訴收消息的人每個(gè)字母移動(dòng)的距離是多少,傳遞這個(gè)信息也就等于傳遞明文了。因此,維吉尼亞密碼采用了一種簡(jiǎn)化的辦法:設(shè)定一組移動(dòng)值,然后不斷重復(fù),從而通過(guò)一個(gè)相對(duì)小的密鑰加密整個(gè)信息。
這組移動(dòng)值用一個(gè)簡(jiǎn)單好記的單詞表示,單詞中的每個(gè)字母在字母表中的位置就代表它的移動(dòng)值。例如,A代表前移0位(也就是不移動(dòng)),D代表移動(dòng)3位等等。
如果密鑰是LEMON,也就意味著明文的第一個(gè)字母要移動(dòng)11位,第二個(gè)字母要移動(dòng)4位,第三個(gè)字母移動(dòng)12位,以此類推。要點(diǎn)在于,我們可以重復(fù)這種模式,完成所有明文的加密。
接下來(lái)是柵欄加密法,也是一種比較簡(jiǎn)單快捷的加密方法,就是把要被加密的文件按照一上一下的寫(xiě)法寫(xiě)出來(lái),再把第二行的文字排列到第一行的后面。相應(yīng)的,破譯方法就是把文字從中間分開(kāi),分成2行,然后插入。
還有豬筆加密法,屬于替換密碼流,但它不是用一個(gè)字母替代另一個(gè)字母,而是用一個(gè)符號(hào)來(lái)代替一個(gè)字母。
接下來(lái)的密碼越來(lái)越復(fù)雜,但仍舊屬于簡(jiǎn)單類別的,有RSA算法、ECC加密法、四方密碼、替換加密法、波雷費(fèi)密碼、RC5算法、ADFGVX密碼、希爾密碼、.維熱納爾方陣、埃特巴什碼。
網(wǎng)頁(yè)上說(shuō)這些是密碼入門(mén),但文科生吉時(shí)連入門(mén)都入不進(jìn)去。周五的這點(diǎn)時(shí)間,他真正入門(mén)的只有凱撒密碼和維吉尼亞密碼,以及柵欄密碼。
吉時(shí)相信,自己無(wú)法入門(mén)的復(fù)雜密碼,初中學(xué)歷的鐘敬勛也無(wú)法入門(mén)。喬川的加密筆記給了鐘敬勛靈感和興趣,但絕對(duì)沒(méi)法讓鐘敬勛這樣的人深入鉆研學(xué)習(xí)密碼學(xué)。
也就是說(shuō),鐘敬勛的密碼絕對(duì)不會(huì)太復(fù)雜。讓吉時(shí)認(rèn)定這一點(diǎn)還有一個(gè)原因,那就是前面八位的日期鐘敬勛干脆都不加密,他這絕對(duì)就是偷懶。
晚飯后,吉時(shí)使用他已經(jīng)入門(mén),并且可以熟練編寫(xiě)和破譯的凱撒密碼、維吉尼亞密碼和柵欄密碼,去試著破譯日期后面的七串字母和數(shù)字組合的密碼。最后得出的結(jié)論是——鐘敬勛使用的絕對(duì)不是這三種密碼。
難道是后面吉時(shí)沒(méi)法入門(mén)的相對(duì)復(fù)雜密碼?吉時(shí)頭大,他試著去鉆研學(xué)習(xí),足足努力了兩個(gè)小時(shí)的時(shí)間,最后還是放棄。
不可能,鐘敬勛絕對(duì)不可能比自己還聰明,還有耐心,他的密碼一定是簡(jiǎn)單的,是他被啟發(fā)后自創(chuàng)的一種密碼,只要掌握了秘鑰,破譯起來(lái)絕對(duì)輕松,而且恐怕會(huì)簡(jiǎn)單到讓人發(fā)笑的地步。