当前位置: 首页 > news >正文

王小云:十年破译五部顶级密码

<!--正文内容开始-->

<!-- 正文内部文字导航 : begin -->

  她十年内破译 五部顶级密码

  -她,比《暗算》里的“黄依依”还要聪明

  -她说,破译密码的那10年是她生活最轻松的10年

  -她很爱美,曾走进伦敦最贵的百货公司买鞋

  -她热爱生活,拿手菜烧排骨是学生们公认的美食

  本报记者施剑松报道 在刚刚举行的“中国青年女科学家奖”的颁奖典礼上,由18位来自中科院和中国工程院的院士组成的评审委员会,将奖项授予了 清华大学和山东大学的双聘教授王小云,以表彰她在密码分析领域里的杰出贡献。王小云,是一位现实中的女解码高手。

  她破译了美国政府使用的密码

  MD5密码算法,运算量达到2的80次方。即使采用现在最快的巨型计算机,也要运算100万年以上才能破解。但王小云和她的研究小组用普通的个人电脑,几分钟内就可以找到有效结果。

  SHA-1密码算法,由美国专门制定密码算法的标准机构———美国国家标准技术研究院与美国国家安全局设计,早在1994年就被推荐给美国政府和金融系统采用,是美国政府目前应用最广泛的密码算法。2005年初,王小云和她的研究小组宣布,成功破解SHA-1。

  《崩溃!密码学的危机》,美国《新科学家》杂志用这样富有惊耸的标题概括王小云里程碑式的成就。因为王小云的出现,美国国家标准与技术研究院宣 布,美国政府5年内将不再使用SHA-1,取而代之的是更为先进的新算法,微软、Sun和Atmel等知名公司也纷纷发表各自的应对之策。

  “她具有一种破译密码的直觉”

  王小云个子不高、短发、戴着厚镜片的金边眼镜。一说话,口音里带着淳朴的山东腔。有10年的时间,她走在山东大学的校园里,能认出她的人很少。在记者采访前,她已经有半年没有接受过采访,

  就是她,两年前,在美国加州圣芭芭拉召开的国际密码大会上主动要求发言,宣布她及她的研究小组已经成功破解了MD5、HAVAL-128、 MD4和RIPEMD四大国际著名密码算法。当她公布到第三个成果的时候,会场上已经是掌声四起。她的发言结束后,会场里爆发的掌声经久不息。而为了这一 天,王小云已经默默工作了10年。几个月后,她又破译了更难的SHA-1。

  王小云从事的是Hash函数的研究。目前在世界上应用最广泛的两大密码算法MD5和SHA-1就是Hash函数中最重要的两种。MD5是由国际 著名密码学家、麻省理工大学的RonaldRivest教授于1991年设计的;SHA-1背后更是有美国国家安全局的背景。两大算法是目前国际电子签名 及许多其他密码应用领域的关键技术,广泛应用于金融、证券等电子商务领域。其中SHA-1更是被认为是现代网络安全不可动摇的基石。

  在王小云开始Hash函数研究之初,虽然也有一些密码学家尝试去破译它,但是都没有突破性的成果。因此,15年来Hash函数研究成为不少密码学家心目中最无望攻克的领域。但王小云不相信,她想知道,Hash函数真像看上去的那么牢不可破吗?

  王小云破解密码的方法与众不同。虽然现在是信息时代,密码分析离不开电脑,但对王小云来说,电脑只是自己破解密码的辅助手段。更多的时候,她是用手算。手工设计破解途径。

  图灵奖获得者姚期智评价她说:“她具有一种直觉,能从成千上万的可能性中挑出最好的路径。”

  “破译密码后我去外面吃了一顿饭”

  当王小云带领她的团队终结MD5后,《华盛顿时报》随后发表报道称,中国解码专家开发的新解码技术,可以“攻击白宫”。王小云说,在公众的理解 上,密码分析者很像黑客,但我们的工作与黑客是有明显区别的。她说:“黑客破解密码是恶意的,希望盗取密码算法保护的信息获得利益。而密码分析科学家的工 作则是评估一种密码算法的安全性,寻找更安全的密码算法。”

  与电视剧里《暗算》里的高手不同,王小云的工作更准确地说是“明算”。王小云说:“与黑客的隐蔽攻击不同,全世界的密码分析学家是在一个公开的平台上工作。密码算法设计的函数方法和密码分析的理论都是公开的。”

  她说:“在破解了SHA-1的那天,我去外面吃了一顿饭。心里有些兴奋,因为自己是第一个知道一个世界级秘密的人。”

  “破解一种先进的密码需要10年”

  看过电影《U-571》的人一定记得,美军为了获得德国潜艇使用的密码,不惜用一艘潜艇伪装成德国潜艇去盗取一艘受伤德国潜艇上的解码机和密码 本。王小云说,真实的情况绝不是电影里描述的那样。她说:“盟军当年为了破解德军使用的英格曼密码,动用了大批数学家,其中包括图灵,现在数学界中的崇高 荣誉‘图灵奖’就是以这个数学家的名字命名的。”“这一批数学家前后经历了10年的时间最后才破解了英格曼密码。”

  王小云说,一般而言,一种先进的密码被设计出来后,要破解需要10年左右的时间,而设计一种新的密码大约需要8年的时间。密码学就是在这种不断 的创立和破解中发展的。王小云是从1994年开始破解MD5和SHA-1的,到她2004年成功破解恰恰经过了10年。她说,从现在开始世界密码学界已经 开始了新密码的设计工作,预计到2012年新一代安全密码将产生。

  “99%的人在这个领域里永远也不会成功”

  破解密码,在电视剧里,这个职业充满了紧张与刺激。王小云说,现实中的密码破解工作远没有那么戏剧性。她说:“事实上这个领域里的科学 家,99%的人永远也不会取得成功。”在破解密码算法RIPEMD的过程中,为了找到最后的破解方法,王小云曾经先后尝试了30多条破解路线。王小云回忆 说,经常是破解进行到深夜,一条破解路线在最后的关键两步被证明是不可能的,只好第二天从零开始再找下一种破解方法。如此坚持了3个月,才成功破解。

  王小云说:“现在看来,当初选择这个研究领域是有很大风险的,可能永远不会取得实质性的成果。但我对这个问题有兴趣。”

  生活里的王小云

  破译密码的10年是我过得最轻松的10年

  10年破解世界5大著名密码,很多人会想,这个科学家一定是一个生活非常刻苦的人。但出人意料,王小云说:“那10年是我感觉过得很轻松的10年。”

  高考失败才当了数学家

  现在王小云已经是世界公认的密码分析高手,但其实王小云最初的梦想是当一个物理学家,高考出了意外才成了数学家。在高中时,王小云一直就是学校的物理状元。“考试没考好,才报了数学专业。”说起这段往事,她摇摇头,仿佛有点不甘心地说:“意外!”

  进入大学后,王小云不死心。她曾经用一年的时间重新进入物理学研究领域。但一年下来,她发现,她已经不能在物理领域取得突破了。此后才安心地在 密码学领域探索,而且在这个别人认为无望的领域一钻就是10年。10年里,有一次她跟丈夫打赌说,有一天,你用GOOGLE搜索王小云,一定能有上千条记 录。而现在,在GOOGLE输入“王小云”3个字,得到的记录已经超过40000条。

  破解密码的同时生了一个

  女儿还养了一阳台的花

  在破解密码的10年中,王小云生了一个女儿,还养了一阳台的花。王小云说:“我的科研就是抱孩子抱出来、做家务做出来、养花养出来的。”她 说,“那段时间,我抱着孩子、做着家务的间隙,各种密码可能的破解路径就在我脑中盘旋,一有想法我就会立即记到电脑里。到现在我还怀念那10年的生活,那 时候,我会在一段时间里拼命工作,感觉累了,就休息一段时间。”

  事实上,王小云是一个非常注重生活细节的人。她很爱美,曾经走进号称伦敦最昂贵的百货公司里买上一双鞋。她们家的午饭,只要她在家就从不像现代 都市人那样简单。她最拿手的是烧排骨,浇上醋、小火蒸、大火烧……有一套完整程序。烧出来的排骨口味独到,是实验室里所有研究生公认的美食。

  拖地是王小云的一个嗜好

  去过她家的人说,她家的地板特别干净。拖地是王小云的一个嗜好。工作累了,她会去拖地;闲下来了,她也忍不住要去拖地,所以她家的地板总是一尘不染。在她家的阳台上,一年四季都有鲜花,君子兰、鹤望兰、杜鹃花……

  记出租车号是生活中

  与数字的唯一联系

  作为世界级密码分析专家,王小云的生活与数字却没有多少联系,更没有像《暗算》里黄依依那样用密码向意中人表白。在生活中她唯一与数字有关的习惯竟然是记出租车号。

  原来,王小云的课题组中有超过一半都是女博士生。工作晚了,没有公交车,王小云总要送学生们打车回家。为了保证学生们的安全,她总要记住学生们 乘坐出租车的车号,等学生到家了,给她发回平安短信,她才把记住的出租车号从脑子里删除。一次,王小云自己乘出租车,她用手机把出租车号发给一个朋友。朋 友以为她要自己接站,查遍了当天的航班和火车车次都没找到那个号码,最后才知道原来是出租车号。是王小云怕遭遇坏人留下的“线索”。

  王小云教授简介

  1966年生于山东诸城,1983年至1993年就读于山东大学数学系,先后获得学士、硕士和博士学位,1993年毕业后留校任教。2005年 6月受聘为清华大学高等研究中心“杨振宁讲座教授”,现为清华大学“长江学者特聘教授”。本月,她获得由全国妇联、中国联合国教科文组织全国委员会、中国 科协和欧莱雅(中国)有限公司创立的,被誉为女性诺贝尔奖的中国青年女科学家奖。

相关文章:

  • LeetCode -- Factorial Trailing Zeroes
  • LeetCode -- Gas Station
  • 山东大学王小云教授成功破解MD5
  • LeetCode -- Implement Trie (Prefix Tree)
  • 2009年的3G上网卡市场,华为将会领跑
  • LeetCode -- Kth Smallest Element in a BST
  • SQL2005CLR函数扩展-环比计算
  • LeetCode -- Majority Element
  • LeetCode -- Max Points on a Line
  • ArcGIS Server Java ADF 案例教程 17
  • LeetCode -- Maximal Square
  • ArcGIS Server Java ADF 案例教程 18
  • LeetCode -- Summary Ranges
  • ArcGIS Server Java ADF 案例教程 19
  • ArcGIS Server Java ADF 案例教程 20
  • Android优雅地处理按钮重复点击
  • CentOS 7 防火墙操作
  • conda常用的命令
  • golang 发送GET和POST示例
  • JavaScript HTML DOM
  • magento 货币换算
  • Node 版本管理
  • Object.assign方法不能实现深复制
  • pdf文件如何在线转换为jpg图片
  • Shadow DOM 内部构造及如何构建独立组件
  • underscore源码剖析之整体架构
  • VirtualBox 安装过程中出现 Running VMs found 错误的解决过程
  • vue2.0项目引入element-ui
  • Vue2.x学习三:事件处理生命周期钩子
  • 互联网大裁员:Java程序员失工作,焉知不能进ali?
  • 欢迎参加第二届中国游戏开发者大会
  • 基于webpack 的 vue 多页架构
  • 解析 Webpack中import、require、按需加载的执行过程
  • 聊聊hikari连接池的leakDetectionThreshold
  • 区块链技术特点之去中心化特性
  • 如何解决微信端直接跳WAP端
  • 时间复杂度与空间复杂度分析
  • 算法---两个栈实现一个队列
  • 吴恩达Deep Learning课程练习题参考答案——R语言版
  • 一个项目push到多个远程Git仓库
  • ​如何防止网络攻击?
  • #{} 和 ${}区别
  • #《AI中文版》V3 第 1 章 概述
  • #define与typedef区别
  • (12)目标检测_SSD基于pytorch搭建代码
  • (6)添加vue-cookie
  • (Python) SOAP Web Service (HTTP POST)
  • (Redis使用系列) Springboot 使用redis实现接口幂等性拦截 十一
  • (附源码)springboot车辆管理系统 毕业设计 031034
  • (附源码)springboot家庭财务分析系统 毕业设计641323
  • (六)什么是Vite——热更新时vite、webpack做了什么
  • (七)MySQL是如何将LRU链表的使用性能优化到极致的?
  • (亲测)设​置​m​y​e​c​l​i​p​s​e​打​开​默​认​工​作​空​间...
  • (图)IntelliTrace Tools 跟踪云端程序
  • (转)Android中使用ormlite实现持久化(一)--HelloOrmLite