标签:安全
谷歌攻破网络安全算法解读
给所有朋友(不管你懂不懂信息安全,只要你希望了解)普及一下谷歌攻破SHA-1到底发生了什么。
(冯立超@瀚博资讯 原创,转载请注明)
当你发布一篇文章时,如何证明这篇文章没有被篡改过?:
计算机用一种算法(哈希算法,如SHA),对整篇文章的内容进行运算,得到一个简短的数字串(哈希值),再对该数字串加密,连同文章一起发给对方(这就叫数字签名)。
对方收到这篇文章以后,再对它进行同样的运算,并比对该数字串,若一致,则证明该文章没被篡改过。(当然这些都是由计算机自动完成,你不需要参与)。
哈希算法确保同一篇文章每次计算都得到同样的值,而不同文章得到同一个值的概率极低。(1/9,223,372,036,854,775,808)
关键是,数学上保证了不能通过该哈希值反向推算出文章内容。(这个函数没有反函数。所以你可以把x带入函数算出y,但你没有办法根据y的值算出x。还记得这个概念吗?)
所以,对方再次计算的哈希值如果和你随文章发来的哈希值一致,就可以证明这篇文章没有被篡改过。
谷歌科学家这次干的事,就是设法找到一个方法,可以方便地生成和一篇文章哈希值一样的另一篇文章。
办法有两个,一个是从数学上找到哈希算法的问题,这个我们可以确认行不通,数学上已证明没问题。
第二种方法叫暴力破解,就是我试 我试 我试啊试啊试,总会找到另一个文章有同样的哈希值。这个从理论上是可行的,但从实践中,要试算千万年,只争早夕远远不够。
谷歌这次干的事,就是找到了一些规律和算法,同时借助云计算的能力,使得原来以为千万年才能破解的事,朝夕之间攻破。(比暴力破解快十万倍)
为确保信息安全,具体的细节算法谷歌要到90天以后才公布,以便信息安全领域可以做出应对。
谷歌公布此次技术的文档中文译稿请参见http://mp.weixin.qq.com/s/07pyiX6LAZxasKRYkBz6KA。
说明:
1. 哈希算法从数学上本身没问题,所以谷歌给出的应对方案也只是建议由SHA-1提升至更复杂的SHA-256等。
2.这是我(冯立超@瀚博资讯)在高铁上打发时间写给朋友圈的科普文,为保证所有会用微信的朋友都能读懂,不确保技术及术语严谨性。
3.文中以“一篇文章”举例,其实可以是任何信息,比如网页、银行往来信息、身份证银行卡芯片等等。
4.拇指打字辛苦,转载请注明出处:)
标签:安全
原文地址:http://hiweb.blog.51cto.com/3355462/1906921