天涯小站 2.0

 找回密码
 注册
搜索
天涯小站 2.0 首页 拾萃 科技网络 查看内容

炉匠:科普一下网络绑票背后的技术(二)

2015-2-1 06:08 AM| 发布者: 星光| 查看: 960| 评论: 9|原作者: 炉匠

摘要: v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} w\:* {behavior:url(#default#VML);} .shape {behavior:url(#default#VML);} Normal 0 false false fals ...

下面是本文的第二部分。这部分很多人写过了,所以我再写不会有新意,写着好烦那。不过我还是希望尽量简单地几句话讲清原理。我把上期的文字又修饰一遍,意思还是原来的,大家不用去重读。我不过是留个网上备份吧。

---------------

看到这儿您一定会说,既然加密用随机数那么简单,那为什么上面你还要讲一大通什么逆运算啦,质数啊什么的,直接用随机数位移加密不就行了吗?

红灯记的故事

可是这里还有个细节:您的随机数密钥必须要只给收信人,如果泄露给外人,你的密码就没秘密了。而利用数学硬难题的加密方法可以公开传送密钥。传送密钥的危险在样板戏里演过,就是红灯记里李玉和把密电码藏在粥底下的故事,需要抛头颅洒热血的。这个密电码就是一本写着一串串随机数的书,发信者和收信者每封电报用一页。只要随机数密电码不重复使用,从理论上讲这种加密手法是不可破解的。问题来了。战争中指挥部要和那么多战斗单位联系,如果用不重复的随机秘密本,实际操作有问题。一个折中的办法就是利用很长,很少重复的数字串来加密,密级低的通讯用重复较多的密钥,密级高的通讯用重复很少的密钥。可是这个问题带来的问题就是同一信息有可能出现在密级低和密级高的电报中。敌方从密级低的电报入手,破译后再攻密级高的。这种破译技术的一个传奇故事就是国军的密码破译家导致山本五十六的行程暴露,被美机埋伏击落。

密码机之迷

            密码本传递的麻烦重复使用的问题使人研究更先进的技术,用机器产生重复程度低的密钥。于是就有人研究了机械计算机的方法。二次世界大战中德国的密码机“迷”(Enigma)就是这类机械计算机的典型.

1920年代德国工程师阿瑟 舍尔碧乌斯(Arthur Scherbius)开发 出一种机械的字母位移方法。原理非常简单,就是用一个轮子上有26个接点,把它们以一定方式俩俩连接起来,比如15217314….下图是他的专利附图,其左上角(Fig 2)就是这种连接的示意。

有了这样的连接,你输进第一个接点的电流就会从第五点流出,第二个接点的电流就移到17位出…. 这样如果把26个接点对应26个字母,就成了一个机械的位移密码钥。可是一个轮子只能做一次位移,太容易被破解。如果再加几个轮子,破解难度就越来越高了。所以军用的Enigma有三个轮子。德国人脑子灵,让每个轮子通过电流两次,这样三个轮子就起到六个轮子的转换作用。下图就是这种机器的原理,有三个转换轮,加最左边一个“反射”轮,使输入码经过七次位移。

 


 可以看到,经过七次位移,A进去会出来一个G。而只要把右边轮子移一格,A进去就出来一个C。 所以根据每个轮子起始位置的不同,Enigma可以变换出非常很多的密码型式。军用的Enigma机器加上其他一些输入连接键盘,一共有158,962,555,217,826,360,000 种密码变换型式

Enigma的照片,在实用的时候,先转动上面的三个齿轮设定好一种密码型式,比如图中的ABY,还有反射盘的4,定为今天使用的密钥。这时在键盘上按一个键(如A),上面的灯盘上就会显示出一个加密后的字母,(如Y.另外每按一个键转换一个明码字符那三个轮子都会自动进一格, 明码的位移数就会再变一下。 如此你打进AAAAAAA….., 出来就是YCFQRTS…..。如果换另一个密码型式,如EIN, 按入AAAAA…出来就可能是BGYET…. 看起来几乎没有任何规律。德国人很自信地说,这种密码是不可破解的,“即使敌人获取了一台机器,它仍旧能够保证其加密系统的保密性。”

可是看起来没规律的事其实总有规律的。 15万万亿种变换型式放进现代计算机,用不了多长时间就能破译了。可是令人尊敬的是破解Enigma之迷的时候还没有现代的数字计算机。主要靠的是一些聪明的头脑。

BBC做了一个记录片,很好看: http://www.bbc.co.uk/history/topics/enigma

(待续)

发表评论

最新评论

引用 2015-2-10 08:02 PM
老巫: 文字很好,我的异议是插图和文字可能不吻合。插图里那个像是4轮,不是正文里说的3轮。你可以对比下图,那里明确说了是四轮。不过不知道reflector在哪里,我也不 ...
Reflector 是最右边的轮子。我和你的图几乎一样,都是三个轮子加一个reflector
引用 2015-2-10 02:10 PM
炉匠: 文字上改了改,是否明白些?
文字很好,我的异议是插图和文字可能不吻合。插图里那个像是4轮,不是正文里说的3轮。你可以对比下图,那里明确说了是四轮。不过不知道reflector在哪里,我也不能肯定,所以你不必在意。

http://en.wikipedia.org/wiki/Enigma_rotor_details#mediaviewer/File:Bletchley_Park_Naval_Enigma_IMG_3604.JPG
引用 2015-2-10 01:08 PM
老巫: 漫人也看出了,前面示意图是三个轮子,下面的实物图好像是四个轮子。实物图里第一个轮子显示的大概是A,不是数字4。它应该不是reflector。

这个图里的机器和文 ...
文字上改了改,是否明白些?
引用 2015-2-10 01:07 PM
二楼: 这个科普很高端——对我而言,上一篇就看懂,还是喜欢看蚂蚁的路径问题科普
这个我也不懂,一边学一边科普。
引用 2015-2-3 08:46 PM
这个科普很高端——对我而言,上一篇就看懂,还是喜欢看蚂蚁的路径问题科普
引用 2015-2-2 01:34 PM
漫人也看出了,前面示意图是三个轮子,下面的实物图好像是四个轮子。实物图里第一个轮子显示的大概是A,不是数字4。它应该不是reflector。

这个图里的机器和文章里的很像,所附的说明明确说是四个轮子:

http://en.wikipedia.org/wiki/Enigma_rotor_details#mediaviewer/File:Bletchley_Park_Naval_Enigma_IMG_3604.JPG

以前只是听说图灵破译,不清楚Enigma是怎么回事。这次先读了炉匠,然后读wiki里一系列文章,估计看电影没问题了。炉匠科普功劳大大的。:)
引用 2015-2-2 10:04 AM
星光: 老狐狸,你看了今年获奥斯卡提名的新电影《The Imitation Game》了吗?就是讲二战时英国怎样破译德国那不可能破译的密码机的。

很有意思,值得一看。男主角演得 ...
没看呢。等旧了免费看吧。
引用 2015-2-2 09:09 AM
老狐狸,你看了今年获奥斯卡提名的新电影《The Imitation Game》了吗?就是讲二战时英国怎样破译德国那不可能破译的密码机的。

很有意思,值得一看。男主角演得也很好。
引用 2015-2-1 11:26 PM
文中没讲清楚,反射盘其实是最左边的那个,所以设置是4ABY。你先说ABY再说4,我找了半天反射盘,开头以为是AABY,看了上面的示意图才明白。

有意思的是德文里还有三个Umlaut,在这里没有出现。再就是这个键盘,不是我们今天用的QWERTY标准键盘。德文的键盘Y和Z位置互换,但这里P在左下角,Y的左边,L右下角,M的右边。

查看全部评论(9)

手机版|天涯小站

GMT-5, 2026-6-29 05:28 PM

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

返回顶部