首页 资讯 正文

《智取威虎山》 《无间道》中的密码学:移位替换

加密二锅头 2019年09月16日 09:07

电影智取威虎山中有一个经典对白。

这就是英雄杨子荣,假装土匪要混入座山雕公司内部,进行的面试对话。公司要的是有从业经验的人,不要小白,所以上来说的就是行业内部的黑话。一句话听不懂答不上来,就拉出去毙了。

 Q3ELEPu1m32NudOq3GFU63tgEMjoU5KMEPT1KFye.png

请快速浏览以下对白。

土匪:蘑菇,你哪路?什么价?(意思是什么人?到哪里去?)

杨子荣:哈!想啥来啥,想吃奶来了妈妈,想娘家的人,孩子他舅舅来了。(意思是找同行)

杨子荣:拜见三爷!

土匪:天王盖地虎!(意思是你好大的胆!敢来气你的祖宗?)

杨子荣:宝塔镇河妖!(意思是要是那样,叫我从山上摔死,掉河里淹死。)

……土匪:嘛哈嘛哈?(意思是以前独干吗?)

杨子荣:正晌午说话,谁还没有家?(意思是许大马棒山上。)

土匪:好叭哒!(意思是内行,是把老手)

以上对白,相信从电影中,大家也看到不少,如果不翻译的话,是听不懂的,为什么?因为这所有的对话是加了密的,这一个圈子都用的是一套密码本,基本原则就是语言的替换。

如果你不知道这套密码本(行业黑话),相信大家不会明白,什么叫“天王盖地虎,宝塔镇河妖”什么叫“嘛哈嘛哈”。这些黑话也是运用了最简单的替换原理,用一些词汇换成了另一些词汇。比如炒币的人说,“看到了乌云盖顶和三只乌鸦”,是另一路行业术语。

开脑洞娱乐一下,去找工作的时候,对方领导有时候会抛出一些行业内部的话,只有行业从业人士才会知道。如果突然对方老板名为座山雕,开口来一句“嘛哈嘛哈”意思就是以前你也是创业单干的吗?这个场景会非常喜感。

以上《智取威虎山》的故事,引出今天所讲的第二代加密法,也被有些人称为为移位法和替代法

 

破解的关键是频率——根据某些词出现的频率,去分析破解到底指的是什么意思。当然,如果有一个密码本拿着你就知道是什么意思了。掌握一套行业黑话秘籍,就好像有了一个密码本,就不用去苦思破解的方法了,直接对着本子就知道对方在说啥。 

移位法更容易理解,我给你说我的账号对应的密码,但是,我不想直接打给你,我给你说384679,别人看到了输入密码就是不对,因为我电话给你说了一个秘密就是我的密码是加了密的,实际上我的密码是:495780. 如果是英文字母,也可以通过不同规则的移位进行加密。只需要单独告知对方自己移位的方法,对方就可以自行破解拿到真实信息。

规则大家想必猜出来了,就是每个数字穿出来的时候都减去了1,如果是0,减去1按照9处理。这相当于移位了。从4移位到了3,从9移位到了8,依次类推。

而土匪黑话更像是替代法,用“蘑菇”这个词来替代“你是谁”,“什么价”替代“要到哪里去”,其实就是字都认得,意思却完全看不明白。

再说一句信息:

La pan btc 这句话混合了汉语拼音和英文缩写指的是“拉盘比特币”

如果a变成x,b变成q,c变成m,用一个字母去替代另一个字母

这句话就变成了,lx pxn qtm.这样你就是看到这些字也没法知道意思,这句话就使用了替代法。

移位和替代在数学发展起来之后就可以利用频率分析法去破解。基本的破解方法十六十七世纪已经被大范围推广。这两年有个消息说,利用人工智能破解古代语言也是一大部分也利用了频率分析法。比如古希腊迈锡尼文明时期文字、克里特文字等等,人工智能在统计相似形状进行类比、评率分析的时候,可以非常迅速,这样给破解古代神奇的语言提供了巨大的便利。下面是线性文字和克里特问题的石板。

igGu2hPu9yxf7FNq96c4gfdnKcqKz9L8ECui41TC.png

CT0KDtKAfMY0hVtfgqxvBAEpre8hl9ZizwosC5Pk.png

好了,参观石碑到此为止,再看下去估计要睡着了。

 下面讲一种非常酷的东西叫做:摩尔斯码,基本上用的也是移位替换法在电影《无间道》中有精彩的演绎。

 NMZSIDNWN2iMh0dMigzUOpilUTRutBXjOQg1XZLh.png警察卧底梁朝伟同学站在铁窗前,手指轻轻敲击窃听器或者一个小传输器,然后警察局的黄Sir收到“滴答,滴滴答,滴滴答答”一串声音后,就知道了交货地点。

 这个时候,刘德华(饰演刘建明)同学作为黑社会的卧底,拿起耳机听到异样,同时打开软件分析这玩意儿是否有规律(类似频率分析)。然后,发现这就是摩尔斯码,他于是发出了信息,也就是经典台词“有内鬼,终止交易”

7XjIvq1PmTABwpypZoQkrFLcer6xlcwdMj91Cltt.pngKHCa2T06110ymDaSTNhw6TQmugKRAMavWpptG8Xc.png

在后面的故事中,黄Sir被黑社会打死后,留下的带血的手机落到刘建明的手上,刘建明在手机上发现了一个陌生号码,打过去,不敢说话,因为想知道谁是这个卧底,怕打草惊蛇,于是他打过去,继续用手指敲击手机,发出长短不一的滴答滴答声。

FFulSAjHjHJQhFxMs1KVvGB8pOc9fgDmVImiN8zD.png

陈永仁警官,接收到信息,知道对方说的是什么,心中盘算这哥们儿是谁,为啥拿着黄Sir的手机,为啥给自己打电话,于是有了后续的故事……“我想做个好人”……不夸张的讲,没有摩尔斯码的演绎,《无间道》这部电影的精彩度会大幅降低。

剧中人物所使用的就是摩尔斯码,本质就是移位替换法,一张图你就明白了。

Il9rBmZ5zSIlsoYpvMBCv5TZbiT8swFW4Ubpd2Uy.png

点和线就可以通过敲击出滴答声音表示出来,从而接收到信号的人直接转化成文字。用点和线去替换字母和数字。替换和移位法,公元前三千年就出现了,摩尔斯码是公元后1837年发明的,由于非常好用,普通人经过不长时间的训练就可以使用,电影动漫中也有非常多的体现,比如,电影《风声》中女主在送出去的衣服上封上点和线传递信息(这次没有用声音),比如动漫《钢之炼金术士FA》第49集中被困在土牢中的人造人小孩儿,拿着木棍敲头盔,把声音传出去,让同伙来救他,都是摩尔斯码的运用不知道当时看动漫的朋友有没有注意到这一点呢?XPbBHkpphUHnKnvLsHNUNxD8a9O8YzyYv47lRlrq.png

 

密码学和人类科技的发展一样,刚开始是很缓慢的,如果从公元前三千年开始算起,到现在5000年,现在已经走过了4500年,也就是90%的时间走过了,还都是非常简单的加密法,而且基本上这两代方法,一直在用了这么长时间,也没什么大的进步

数学的发展,会使这种替代和移位,通过概率判断(也就是上文说的频率分析)进行破解,移位法和替代法,并不那么牢靠了,于是就需要出现一种新的方法,把这个概率分析的概率给打乱给消化掉,让你看信息的时候看不到规律,无法对某个字的出现进行频率分析。第一次世界大战和第二次世界大战的密码学故事,很快就要展开了。

下一篇文章,我就会讲这样一个方法。

本文所讲的摩尔斯码在电影电视剧中广泛应用,因为再复杂的加密方法,很难直观去理解了,所以拍电影的时候用的就少了(当然,还有个因素是加密和解密的效率问题,后续会讲到)

 

未来一段时间密码学的分析和讲解,我会把电影电视剧不能够直观表达的加密法,用最直观的方法告诉大家,直到比特币的加密法,以及所谓的匿名币怎么匿名的,安全性加密性,大家一路走过来,相信对项目会有自己的独立判断。看这一类项目的时候,也会知道,谁违背的密码学的基本原理,谁是大忽悠,谁在认真的忽悠,谁可能在说实话。

 

江湖一杯酒,加密二锅头。我们下期见。

欢迎私聊。