第一百一十一章 編碼方式

深夜的京城內城北面順天府衙,燈火通明。

深夜的京城內城南面千步廊中的兵部衙門,燈火通明。

然而,南面的兵部衙門中,當得知北面順天府衙那邊都有哪些人在挑燈夜戰時,兵部尚書陸綰,卻破天荒沉不住氣丟下了手中的筆。

而後,跟了他十幾年,眼看陸綰從郎中一路擢升到尚書的一個心腹小吏牛頭不對馬嘴地勸解了兩句,竟是被攆出了門,其他人就更不敢說話了。

“他王大頭可以阿貓阿狗全都請到他的順天府衙去幫忙,我這兵部衙門卻幹幹凈凈,容不得外人擅入!”嘴裏說著這義正詞嚴的話,陸尚書心裏卻窩火不已。

之前在致公樓上被張壽點出關鍵,他也不是沒動過把兒子陸三郎提溜了過來解密的打算,可兵部衙門這種要緊地方,就算他這個尚書,也不能隨隨便便把兒子帶進來!結果倒好,就是他這一猶豫,又不曾吩咐家人把陸三郎禁足,居然被王大頭截胡搶先了!

那個不孝子還居然真的會屁顛屁顛去幫王大頭!

他深深吸了一口氣,用冷淡卻又嚴峻的口氣說:“張博士已經把那些密信的關節挑明了,兵部所有最擅長數字和計算的小吏也都匯聚於此。如若在天明之前解出來,那麽所有人都能將功折罪,如果算不出來,我固然要向皇上請罪,你們也人人有過!這次兵部丟臉丟大了!”

兵部衙門需要一次性破解密信十三封,但順天府衙中有個算學水平相當高明的府尹王大頭,因此張壽再加上三個學生,需要解決的密信只有一封。

然而,就是這一封信,之前早到一步的齊良和陸三郎顛過來倒過去看了很多遍,琢磨來琢磨去,卻是一頭霧水。

張壽接手之後,卻先把之前號稱解開的十二封信一並檢視了一遍,最後方才去看最後那封尚未解開的信,隨即就沉思了起來。

大約是因為生怕密信要經過檢查又或者其他,避免引起懷疑,解出來那十二封信的內容全都是平淡的家書。這些密信,靠著字與字之間有無橫線來代表一和零,然後用標點符號加以分隔,於是引入二進制數字,再配合千字文作為密碼本,如此就可以輕松解開。

而最後這一封信,簡簡單單一張紙,幾十個字,卻竟然是完全前言不搭後語,根本就稱不上句子的字,文筆猶如孩童塗鴉,末了還有一行筆跡娟秀的附注,道是孩子照著千字文裏頭的字,胡亂練筆,雖說有些稚氣,但瞧著有趣,所以寄給在軍中的丈夫瞧一瞧。

看到千字文這三個字,張壽頓時微微一笑,心想這恐怕又是一封用了千字文當密碼本的信,只不過編碼方式和之前十二封不同。雖說用了一大堆雜亂無章的字,但如果按照前頭十二封信那些看似復雜,其實簡單的編碼方式,這封密信理論上也復雜不到哪去。

畢竟,就算相對簡單,來往密信都已經出了天大的紕漏,接收方居然會把日子算錯了……

這大概是最烏龍最悲傷的事件,怪不得會導致送信方和收信方雙雙自盡。

如果說這加密很簡單的話,移位密碼的可能性最大。

也就是說,把最初的字替換成一定間隔之後的字。而按照簡單密碼的邏輯來說,這種間隔必定存在某種顯而易見的規律。直接把每個字都替換成同一個間隔之後的字,那是最方便的,但也是最容易破解的,如此說來,移位的公式不妨設定為最簡單的y=ax+b,再復雜……

再復雜的話,那就是更復雜的兩次方程式,但既然移位距離肯定是整數,這個x也絕對是整數,所以其實難不到哪去,先從簡單的開始試算好了。

按照簡單密碼的規律來說,密信上的第一個字是原字對應數字的基礎上間隔a+b位置的那個字,第二個字是原字對應數字的基礎上間隔2a+b的字,第三個字就是3a+b……

因為那封信上總共才幾十個字,字數不多,可但凡是移位,則還要考慮到循環的因素,畢竟千字文對應的數字也就到一千為止,從第九百多個字再移位個兩三百,就要回到千字文的開頭去了。

如今他也只需要驗算前四個數字,說起來計算強度還在可接受範圍之內。

張壽一面想,一面隨手在紙上寫寫畫畫,渾然沒發現那位順天府尹王大頭已經悄然站在了自己身後。他自己都沒注意花費了多少時間,就推算出了那個簡單的加密方程y=2x+3。

可倒過來推算那原文起頭四個字時,他著實好生無語……因為仍然是孔大學士!

看來孔大學士真是此次最倒黴的人啊……

代表移位變量的x=1,2,3……

代表移位結果的y=5,7,9……也就是說,把密信上的這些字,分別往回減去5,7,9,然後去找對應位置的字就行了。