2011年4月16日,青岛科技大学L推理社举行了“瓦缸美食杯”校园寻宝活动,场面异常火爆。然而非常可惜,有不少参赛队止步于预赛——密码推理。下面让我们来简单了解一下两种常用密码。 “恺撒密码”据传是古罗马恺撒大帝用来保护重要军情的加密系统。它是一种替代密码,通过将字母按顺序推后起3位起到加密作用,如将字母A换作字母D,将字母B换作字母E。据说恺撒是率先使用加密函的古代将领之一,因此这种加密方法被称为恺撒密码。 假如有这样一条指令: RETURN TO ROME 用恺撒密码加密后就成为: UHWXUA WR URPH 如果这份指令被敌方截获,也将不会泄密,因为字面上看不出任何意义。 这种加密方法还可以依据移位的不同产生新的变化,如将每个字母左19位,就产生这样一个明密对照表: 明:A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 密:T U V W X Y Z A B C D E F G H I J K L M N O P Q R S 在这个加密表下,明文与密文的对照关系就变成: 明文:THE FAULT, DEAR BRUTUS, LIES NOT IN OUR STARS BUT IN OURSELVES. 密文:MAX YTNEM, WXTK UKNMNL, EBXL GHM BG HNK LMTKL UNM BG HNKLXEOXL. 很明显,这种密码的密度是很低的,只需简单地统计字频就可以破译。 下面我们来介绍另一种密码——栅栏密码。 所谓栅栏密码,就是把要加密的明文分成N个一组,然后把每组的第i个字连起来,形成一段无规律的话。 一般比较常见的是2栏的棚栏密码。 比如明文:THERE IS A CIPHER 去掉空格后变为:THEREISACIPHER 两个一组,得到:TH ER EI SA CI PH ER 先取出第一个字母:TEESCPE 再取出第二个字母:HRIAIHR 连在一起就是:TEESCPEHRIAIHR 这样就得到我们需要的密码了! 而解密的时候,我们先吧密文从中间分开,变为两行: T E E S C P E H R I A I H R 再按上下上下的顺序组合起来: THEREISACIPHER 分出空格,就可以得到原文了: THERE IS A CIPHER 但是有些人就偏不把密码作出2栏,比如: 明文:THERE IS A CIPHER 七个一组:THEREIS ACIPHER 抽取字母:TA HC EI RP EH IE SR 组合得到密码:TAHCEIRPEHIESR 那么这时候就无法再按照2栏的方法来解了... 不过棚栏密码本身有一个潜规则,就是组成棚栏的字母一般不会太多(一般不超过30个,也就是一、两句话)。这样,我们可以通过分析密码的字母数来解出密码。 比如:TAHCEIRPEHIESR 一共有14个字母,可能是2栏或者7栏。 尝试2栏...失败。 尝试7栏...成功。 然而当棚栏和拼音相结合后,诞生出一种新思路。 比如在正道学院网络版的开篇flash中出现过这样一个棚栏: QGBKSYSHJIEUEIIIIAN 总共19个字母,貌似不符合棚栏的规则。其实这是因为出现了一个叫做捆绑的手法: Q G B K S Y SH J I E U E I I I IAN 如此,上面是声母,下面是韵母。声母中的sh和韵母中的ian都是被作者当为一个字符使用。 在校园寻宝初赛第二关中涉及到的手机密码,则是通过手机按键的方式进行的一种加密。如: 明文:Z 密文:94 大家看出来了么?呵呵,其实,用手机发短信,按“9”键4下,就可以打出Z这个字母了。 |
评论