“恩尼格玛密码机,对吧?我看德维特本子上有这玩意。”宋河说。
“对,不过在讲复杂密码之前,先讲俩简单的,这样可以按密码学历史进程给你讲。”
相晓桐起身,从枕头旁拿起德维特密码本,迅速翻页。
“你看这一页,注意每个字母大小。”相晓桐翻开一页递过来。
宋河认真端详,哦了一声,“个别字母写的略大一点!”
“针刺加密法的变式,最早是古希腊伊尼厄斯提出来,写一段无关紧要的话,在特定字母下方用针刺一个小洞,收信人把带小洞的字母连起来,就能得到信息。”相晓桐解释。
宋河把略大的字母连起来读,果然就是明文。
“十九世纪,大不列颠的邮件系统很贵,每封信邮费是1英里1先令,普通老百姓压根付不起。但有个漏洞,递送报纸免费,当时的大不列颠民众就用针在报纸上找字母刺,拿到邮局去,一分钱不花完成投递。”
“咱们古代有一个类似手段,折痕密码法,把一张纸先横竖对折几下,展开,在折痕交界处写情报,写完之后再前后拓展一些诗词或者无意义的话,把关键字淹没。”
宋河点头表示懂了,他翻翻德维特密码本,发现针刺密码法记在恩尼格玛密码后面。
看来德维特并非按从易到难顺序写,很难说哪页的密码难,哪页的密码简单。
“往后翻一页。”相晓桐说,“一战汉斯国用的ADFGVX密码,替代法和移位法综合,两层加密,有一个钥匙单词,把要传递的明文一行行写在钥匙单词底下,然后把钥匙单词调整成字母表顺序,底下跟着变,明文形成密文。”
宋河抓过一张打草纸,“我试试,你看是不是这样?假设钥匙词是春眠不觉晓!”
【钥匙:春眠不觉晓】
【情报:敌军五万人】
“然后春开头是c,眠m,不b,觉j,晓x,按照字母顺序排就是……不春觉眠晓!”宋河快速写。
【钥匙排序:不春觉眠晓】
【最终密文:五敌万军人】
“对,你这是第二步加密,第一步类似于维吉尼亚密码,有一个密码表,比如敌军五万人,可能会在第一步的密码表里加密成,然后按你这流程二次加密就变成,收到信的人再根据钥匙词和手里的密码表去解。”
宋河想了想,“我有个问题,为什么叫ADFGVX密码?”
“这一串字母分别是密码表的列名,至于为什么选它们做列名,是因为当时用无线电了,无线电里面这几个字母的点线相似性最低,能降低发报员误操作风险。”相晓桐解释。
“密码特征和传播技术息息相关。”宋河恍然。
“对,你悟出了很重要的一点,记住这一点,后面会用到。”相晓桐肯定道,“ADFGVX密码也不安全,高卢有个叫乔治·邦梵的密码专家,以暴瘦三十斤的代价把它破解了。”
宋河认真看看密码本,“确实容易破解。”