对不起,你的密码被破解了!
Posted 码农翻身
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了对不起,你的密码被破解了!相关的知识,希望对你有一定的参考价值。
本文是密码战争的下集,上集在此:《三千年的密码战争》,强烈推荐!
所有的这些加密方法都有一个共同的特点:都需要密钥。
密钥经常成为破解密码的突破口
千年以来,有一个问题始终没有解决:发信人和收信人直接如何安全地传递密钥。
最安全、最保险的办法,就是面对面发送,但是成本极高!
时间进入20世纪
政府花费这么大的精力来传递密钥,那普通的商业公司怎么办?
将来有了互联网,通信的需求呈指数级增长,大家都隔着千山万水,互不相识,更不可能面对面传递了。
想安全地传送密钥,那势必得把密钥加密,想要加密,那又得传递密钥,又得加密....
真是这样的吗?
Sun公司的Whitfield Diffie不信这个邪,生于1944年的Diffie非常迷恋数学,长大后又迷上了计算机安全,可以说是个密码学极客。
看看这仙风道骨的样子
Diffie 对密钥发送问题极其感兴趣, 为了找到志同道合的伙伴,他驾车横跨美国,来到加州斯坦福大学,找到了也在研究密钥发送的Martin Hellman教授。
放弃高薪工作,重新做回学生的Diffie 和 Hellman 开始了向密码学巅峰的冲击。
他们俩特别擅长做比喻和联想,想到了一个有趣的小故事,试图打破密钥和加密的无限循环
看看,张大胖的钥匙和何小痩的钥匙一直保持在自己手中,没有发送给对方,也达到了传递信息的效果!
难道密钥发送的千年难题就这么解决了?
No ! 在加密系统中,这种方式是行不通的!
这样的锁在加密世界中根本不存在!
两次加密并不是“平行”的两把锁,而是嵌套的!第二次加密会把箱子和锁一并加密!
加锁是有先后次序的: 张大胖加锁 --> 何小痩加锁 --> 何小痩解锁 --> 张大胖解锁 , 这才是正确的。
此路不通, Diffie 和 Hellman 又想到了一个有趣的小场景
张大胖和何小痩各自有一桶红色颜料
然后他们加入了自己的秘密颜料,和原先的红色颜料混合
然后把混合后的颜料传输给对方,在传输的时候,即使有“坏人”看到了,也不知道原始颜色是啥。
双方收到以后,再加入自己的秘密颜料
现在,张大胖和何小痩得到了“密钥”!
关键的核心就是混合颜料, 这就是交换密钥的灵感!
他们要做的就是找到一个单向的不可逆的函数,可以像混合颜料那样把数字进行“混合”。
这谈何容易?
众里寻他千百度,蓦然回首,那人却在灯火阑珊处。
终于,Hellman 在一个深夜取得了突破
Hellman发现的这个单向函数就是:
Diffie 、Hellman和Merkle在1976年的一次会议上公布了他们的发现
密钥发送的问题似乎解决了?
Hellman 的方案也不是完美无缺,有一点很不爽的是,要想交换密钥,发送消息,两个人必须同时“在线”,都选择了秘密数字才行。
如果只有一方在线, 另外一方没有交互,还是没法生成密钥。
Diffie 为了研究密钥,不但从美国东部跑到西部的斯坦福,还放弃工作,当了一名研究生,收入非常微薄,支撑家庭的是他的妻子玛丽。
他被密钥发送问题折磨得抓狂不已, 巨大的压力之下, 差点儿崩溃。
两个星期以后,Diffie 迎来了属于自己的顿悟时刻。
在传统的密码学中,无论采用何种加密算法,都遵循一个思维定式:加密和解密是对称的、可逆的。
所以密钥一定要在发信人和收信人之间严格保密,千万不能泄露。
但是Deffie的想法完全突破了这个思维定式:一个人可以有两把钥匙!
这两把钥匙有着神奇的特性
这样的话只要一个人把自己的公钥向全世界公布,任何人都可以向他安全地发信了!
根本不需要通信双方必须同时在线,交换密钥。
这绝对是一个革命性的想法!
但是即使是Deffie,也没有找到一个算法来实现这两把神奇的钥匙。
全世界的科学家展开了竞赛,苦苦寻觅这两把钥匙。
其中就有麻省理工大学的三位专家。
Shamir 和Rivest 不断地提出新点子, 数学家Adleman则不断地否定他们。
顿悟的时刻总是不经意地到来,一个节日的夜晚, 三人在一个学生家里庆祝, 喝了很多酒,半夜才各回各家。
Rivest赶紧爬起来,把想法写成文章,天亮时,他顾不上一夜的劳顿,马上就去找Adleman, Shamir讨论。
基于大质数连超级计算机都难以分解的性质, RSA(Rivest, Shamir, Aldeman)算法诞生了。
(注:RSA算法的细节这里不再展示了)
RSA算法实现了现阶段无法破解的公钥和私钥体系,成为现代通信的最基础设施。
几千年的密码战争,编码者终于登上了最高峰。
维吉尼亚密码被认为是无可破解的,但是巴贝奇把它破解了。
Enigma被认为是无懈可击的,但是图灵把它破解了。
RSA现在看来是固若金汤,下一个破解它的是谁呢?
(注:量子计算机的介绍请移步《量子计算机为什么这么牛?》)
以上是关于对不起,你的密码被破解了!的主要内容,如果未能解决你的问题,请参考以下文章