第2章 恐怖如斯
密码的破译老实说是一个非常复杂又很有难度的工作,要求破译者对语言学和数学有一定的研究。
对江沫来说,这件事情可以很难,也可能非常容易,具体还要看能不能找到加密者的加密思路,或者研究出密文的加密规律。
毕竟数学什么的,江沫还是很擅长的,毕竟这是他在地球上吃饭的玩意儿。
地球上的密文破译思路对这个世界不一定有效,但是可以作为借鉴,都尝试一番,理论上来说,世界的底层数学逻辑应该是相通的。
实在不行,还可以尝试用自己的电脑来硬算,进行暴力破解,没办法,有的时候简单粗暴的路子反而可能大力出奇迹。
当然,即使最后对方加密技术技高一筹,江沫没能破解出来,也没有什么实质上的损失,所以放松心态,尽力就行。
接下来就是需要发挥聪明才智、见证什么是真正的技术的时刻了。
这些书信并没有使用什么奇怪的符号系统,用的还是通用语中的那些字母符号,所有标点符号也没有什么改变,所以,这些密码信件应该是用的字母替换的方法进行加密,地球上对这种加密方式一般称之为恺撒密码。
所谓的字母替换,就是将明文中的字母用其他字母代替的加密方式,比如说abc用xyz代替之类的,替换规则可以有规律,也可以是没有规律的,关键还得看加密者的选择。
理论上来讲,如果想要暴力破解的话,可以用各种可能的密码表组合来试着解密这些信件。
26个字母可能的排列组合有4.03*10^26个多,假设地球上60亿人每一秒试验一种可能的密码表的话,那也要21亿年才能试完所有的组合。
更何况,这个世界的通用语有35个字母,所有的密码表排列组合数就更是数量级增长了。
硬算肯定是可以的,不过对想要快速完成任务,改变被分配边疆命运的江沫来说,时间上肯定有点来不及。
即使自己的电脑是amd yes,这个时候也并不怎么够看。
只能通过取巧的方式来破译密码了。
暴力破解什么的,不够优雅。
先假设这些密文只使用了一次字母替换加密,那么可以直接统计一下每个字母在密文中出现的频率,再与正常语料中字母出现频率进行对比,大概率就能够通过字母出现的频率规律来反推出字母替换的规则。
然后再把替换的字母代回原文,就可以把密文解码成明文了。
频率统计是地球上对付字母替换类加密方式的常规破译方法,原理就是一种语言中不同字母的使用频率是不同的,在大数据的规模,字母频率常常会呈现出一个较为稳定的分布规律,简单粗暴好理解,用程序算起来也不复杂,很容易就可以写好程序。
So easy!
但实际上往往还要考虑发音和成词规律,也不是那么简单,不过思路就是这么个思路,按这个思路来准没错就是。
似乎是对自己的加密技术非常自信,这些书信写的又臭又长,这不是作死是什么,阅后即焚懂不懂?一字千金懂不懂?生怕别人没法总结规律?
在脑海中编好程序,将自己以前看过的通用语书籍和说过的话作为语料,然后分别统计语料和密文中的字母分布规律,很快,江沫就得到了字母频率对照表。
然后又在程序中添加了几行代码,将替换的字母再替换回去,于是江沫眼前的仿佛乱码的密文信件直接就转换了模样,变成了江沫可以理解的语句。(实际情况肯定没这么简单,这里为了情节紧凑一点,就简化一些)
信件大体上的意思还是能看出来的,有一些单词中明显存在一些字母错误,这些也是不可避免的,字母频率并不是万能的,有时候一些字母频率很接近,或者因为语言习惯用法的不同,就会导致频率的不匹配。
不过这些都是小问题了,既然大方向正确,那只需要对这些细节进行一定的修改,替换一下也就可以了。
很快,江沫就找到了那些疑似错误替换的字母,并把他们修正。
就这?这就解出来了?我还没用多线程什么的呢。
您们这加密方法有点弱啊,还以为要花很长时间呢。
话说您们都琢磨出了字母替换了,就不能勤快一点,多替换几次?
使用多张密码表对明文进行字母替换,就可以消弭掉字母频率的规律,让解密工作的难度再上一个台阶。
当然这个替换也不能是整体替换,因为整体替换就相当于没有替换,你换了多少次本质还是一样的,和替换一次没有区别,还是不能逃脱频率法解密的魔爪。
想要消弭字母频率规律,那就得用多排密码表进行字母替换,比如第一个字母用第一张密码表替换,第二个字母用第二张密码表替换,以此类推。
不过江沫觉得也不能怪对方水平差,毕竟在这个武力至上的世界,人们都去追求绝对的武力去了,统计学什么的,能吃么,我一个大火球能烧掉整个城市的时候,什么阴谋诡计对我来说都不存在。
这也让江沫觉得自己现在上学的魔法学校就像地球上的技术学校一样,只教你怎么应用,然后就是让你大量的练习,提升技能熟练度。
目前接触到的所有施法者都和地球上的高级技工本质上没有什么区别,只是擅长的东西不太一样,包括江沫自己。
这也是江沫迫切想要前往更高级的魔法学校进修的原因,魔法这么好玩的事情,你们居然只是满足于用它们来鲨人?不应该研究一下魔法的本质,魔法产生的原因这类更有意思的问题么,这些问题搞定,您还担心自己武力值不够?
你们这,舍本逐末了啊。
“我应该已经解出来了。”
赛琳娜似乎完全没有什么思路,正在无聊的看着乱码一般的各种信件发呆,似乎想要从中寻找规律,但那小鸡啄米一样一点一点的小脑瓜子显示她已经处在要睡着的边缘了,要不是胸垫在桌上,起到了支撑作用,江沫怀疑她脑袋要磕桌上了。
“什么,解出来了?!这才多久?你吃了魔力药水么?”
所谓的吃了魔力药水,在这个世界大致意思就等同于地球上你吃了兴奋剂么之类的感慨,形容人很牛掰的意思。
“就这,还需要吃魔力药水?”
“……”
******
一间巨大的装饰华丽的房间中,摆着一张巨大的圆桌,坐在圆桌边的人个个衣着华丽、浑身贵气,一看画风就和江沫这样的吊丝不一样,充满了人上人的感觉。
这些人要么是贵族、要么是高级法师,总之各个不凡,为首的那个据赛琳娜说,是她老爹。
怪不得赛琳娜说如果江沫想要尝试破译密文的话,可以找她老爸帮忙推荐,这,监考是自己人啊。
不过现在,这些人都像小学生一样听着江沫讲解着自己对这些加密信件的破译方法和过程,虽然这些小学生各个武力值爆表。
江沫首先讲解了替换加密的原理,然后用统计学方法计算了字母替换解密的难度。
当江沫开始用公式计算普通的字母替换有多少种组合方式,为什么难破解的时候,江沫已经看到一些人眼神开始飘忽了。
呵,学渣!
当江沫讲述自己如何通过语言学和统计学的规律,找到密文和明文之间的对应关系,然后通过元音、辅音字母之间的位置关系和一些通用语中的成词规则解出整个密码的时候。
这些人的眼睛都亮了,仿佛他们第一次发现人类的智慧是这么的优雅。
这就让江沫有点绝望了,你们这都可以算的上一个国家最厉害的一批人了,你们的数学水平都这么差,这让我怎么相信这个世界的魔法研究水平。
不会要让我来挑魔法研究的大梁吧。
要不你们还是另请高明吧。