写点什么

中国密码女天才,破解美国运算 100 万年才可能解开的密码

  • 2019-09-12
  • 本文字数:2498 字

    阅读完需:约 8 分钟

中国密码女天才,破解美国运算100万年才可能解开的密码

王小云,中国密码学第一人。她不仅成功破解了五大国际著名密码算法——MD5、HAVAL-128、MD4 、RIPEMD 和 SHA-1,而且在密码学中做出开创性贡献,荣获 2019 未来科学大奖。



近日,有“中国版诺贝尔奖”之称的第四届“未来科学大奖”公布获奖名单。其中,清华大学教授王小云荣获“数学与计算机科学奖”。未来科学大奖开设四年来,她是首位女性得主,获得 100 万美元奖金。


未来科学大奖成立于 2016 年,是中国大陆首个非官方、非营利、民间发起的科学奖项,关注原创性的基础科学研究,奖励在大中华区做出杰出科技成果的科学家(不限国籍)。目前,未来科学大奖设置“生命科学”、“物质科学”和“数学与计算机科学”三大奖项,单项奖金 100 万美金。


王小云的获奖理由是:


奖励她在密码学中的开创性贡献,她的创新性密码学分析方法揭示了被广泛使用的密码哈希函数的弱点,促使了新一代密码哈希函数标准。


在互联网世界,信息安全是一切的基础。而信息安全的基础之一就是密码学。简单来说,密码学是研究编制密码和破译密码的技术科学。


基于数学难题保障其安全性的现代密码学是 1976 年开始发展起来的新兴学科。现代密码学分为公钥密钥与对称密码两个分支。密码学可以保障网络信息的机密性、合法性、不可抵赖性以及完整性。除了机密性外,其它的三个属性大都需要 Hash 函数保驾护航。



随着密码学的发展,它被应用于许多方面,比如身份认证、密码管理器等。当前,备受关注的比特币、区块链技术,都有大量密码学知识的应用。


据悉,一种先进的密码被设计出来后,要破解需要 10 年左右时间,而设计一种新的密码大约需要 8 年时间。一种密码算法,一旦被人破译,这种算法就会从应用中淘汰,因为它不再安全可靠。为保证安全性,人们会采用一种未破译且更安全的密码算法。

破解 5 大国际加密算法

2004 年 8 月,在美国加州圣巴巴拉召开的国际密码大会(简称“美密会”)上,王小云“石破天惊”,她宣布自己和研究团队成功破解四个国际著名密码算法MD5、HAVAL-128、MD4RIPEMD 。消息一经宣布,引起巨大轰动。


一位国际科研工作者 Arjen K. Lenstra 这样描述当时场面,“从上世纪九十年代初起,我参加过几乎所有在国际上最重要的密码学会议,但我从没有经历过像 2004 年美密会上的盛况:当王小云教授报告结束后,大家几乎不敢相信她的惊人成就,会场起立给王教授,报以长久而热烈的掌声,人们拥向讲台向她表示衷心的祝贺,她带去的报告材料被一抢而光,那的确是个令人难以忘怀的时刻。”

攻克号称全球最安全的密码—MD5

值得注意的是,这四个国际著名密码算法中,MD5 被称为“密码学家们心目中最无望攻克的领域”。


MD5 是由美国标准技术局颁布的算法,全球计算机网络大量使用,运算量达到 2 的 80 次方,即使采用现在最快的巨型计算机,也要运算 100 万年以上才可能破解。


许多顶尖密码学家尝试破译 MD5,他们在这个难题上摸索了 15 年之久,都没有取得突破性成果。


王小云提出的密码哈希函数的碰撞攻击理论,即模差分比特分析法,成功破解 MD5 哈希函数算法。


当年大会总结报告上写道:我们该怎么办?MD5 被重创了,它即将从应用中淘汰。


鉴于王小云成功破解 MD5,美国国家标准与技术研究院宣布,美国政府 5 年内不再使用 MD5。

SHA-1 密码算法迎来末日

虽然 MD5 被破解,但是 SHA-1 仍然被美国视为是安全可靠的。事实上,SHA-1 也到了末日。


据了解,SHA-1 是一种由美国国家标准技术研究院(NIST)和美国国家安全局(NSA)设计的密码散列函数,它被视为计算机安全系统的基石。


仅在 MD5 被破解 5 个月后,即 2005 年 2 月,在美国召开的国际信息安全 RSA 研讨会上,王小云又宣布成功破译 SHA-1,而且只用了 2 个多月,再次引起轰动。


更厉害的是,王小云破解密码的方法与众不同。在大家都借助电脑破解密码时,她破译密码大部分是手算。两个国际最安全的密码,竟然大部分是手算的。


因此,美国国家标准技术研究院宣布,美国政府五年内不再使用 SHA-1。



一直以来,MD5 和 SHA-1 被公认为国际最先进、应用范围最广的两大重要算法。现在,这两大算法均被破解,证明电子签名在现实中的安全性难以完全保证。


对于自己的工作,王小云认为,“在公众理解上,密码分析者很像黑客,但我们的工作与黑客是有明显区别的。黑客是盗取密码保护的信息以获取利益,而密码分析家从事的是基础理论研究,是为了评估密码算法的安全性,找到其漏洞,以设计出更安全的密码算法。”


2007 年,在王小云带领下,科学家们为我国设计了第一个哈希函数算法标准 SM3,经过国内外顶尖密码专家评估,它的安全性极高。她还主持设计了国家密码算法标准 Hash 函数 SM3,该算法在我国金融、交通、电力、社保、教育等重要领域得到广泛使用。


附:著名密码算法介绍:


MD4——MD4 是麻省理工学院教授 Ronald Rivest 于 1990 年设计的一种信息摘要算法。它是一种用来测试信息完整性的密码散列函数的实行。其摘要长度为 128 位,一般 128 位长的 MD4 散列被表示为 32 位的十六进制数字。这个算法影响了后来的算法如 MD5、SHA 家族和 RIPEMD 等。


MD5——MD5 信息摘要算法,英文 MD5 Message-Digest Algorithm,一种被广泛使用的密码散列函数,可以产生出一个 128 位(16 字节)的散列值(hash value),用于确保信息传输完整一致。MD5 由美国密码学家罗纳德·李维斯特(Ronald Linn Rivest)设计,于 1992 年公开,用以取代 MD4 算法。


RIPEMD——RACE Integrity Primitives Evaluation Message Digest,中文即 RACE 原始完整性校验消息摘要,是 Hans Dobbertin 等 3 人在 Md4、Md5 的基础上,于 1996 年提出来的。算法共有 4 个标准 128、160、256 和 320,其对应输出长度分别为 16 字节、20 字节、32 字节和 40 字节。


SHA-1——SHA-1,全称 Secure Hash Algorithm 1,中文名即安全散列算法 1。它是一种密码散列函数,由美国国家安全局设计,并由美国国家标准技术研究所(NIST)发布为联邦数据处理标准(FIPS)。SHA-1 可以生成一个被称为消息摘要的 160 位(20 字节)散列值,散列值通常的呈现形式为 40 个十六进制数。


相关链接:


刚刚,奖金711万!"中国宝妈"破解美国运算100万年才可能解开的密码!


未来科学大奖产生第一位女性得主,其他是谁?


2019-09-12 14:066317

评论 1 条评论

发布
用户头像
是找出不同报文同hash值吧,破解这词在这用是不是不太合适?
2019-09-12 15:23
回复
没有更多了
发现更多内容

易观千帆 | 2022年7月宁波市手机银行应用活跃人数榜单

易观分析

手机银行 宁波

一名中年码农转型成远程工作及远程全栈教学创业者的故事

pincman

node.js typescript react.js 远程工作 nestjs

[教你做小游戏] 只用几行原生JS,写一个函数,播放音效、播放BGM、切换BGM

HullQin

CSS JavaScript html 前端 9月月更

leetcode 21. Merge Two Sorted Lists 合并两个有序链表(简单)

okokabcd

LeetCode 数据结构与算法

【大话C语言】分支与循环语句

Albert Edison

C语言 开发语言 for循环 if语句 9月月更

微服务为什么需要混沌工程

穿过生命散发芬芳

混沌工程 9月月更

为什么这么多品牌迫切想要改变Logo?

Jackpop

高颜值!程序员专属浏览器

Jackpop

【数独 2】候选数法解数独谜题-挖掘更深的信息-C++实现

清风莫追

9月月更

云原生(三十四) | Kubernetes篇之平台存储系统实战

Lansonli

云原生 9月月更

分享一套自己制作的Nestjs实战教程

pincman

node.js typescript nestjs

Java进阶(三)Java安全通信:HTTPS与SSL应用配置

No Silver Bullet

https SSL证书 9月月更

C++学习------cctype头文件的作用与源码学习

桑榆

c++ 9月月更

学 Go,最常用的技能是什么?打日志

梦想橡皮擦

Python 9月月更

2022-09-02:以下go语言代码输出什么?A:9;B:11;C:编译错误;D:不确定

福大大架构师每日一题

golang 福大大 选择题

Ribbon源码分析之@LoadBalanced与LoadBalancerClient

急需上岸的小谢

9月月更

金融网络安全体系建设

阿泽🧸

9月月更 安全体系建设

线上问题如何复盘

老张

线上故障 问题复盘

中国智能网联汽车信息安全分析2022案例征集

易观分析

汽车 案例征集 智联网

iview提供的控件tree

zxhtom

9月月更

远程TS全栈学习+远程全职工作+远程高质量外包=3R教室

pincman

node.js typescript react.js 远程工作 nestjs

如何正确理解Java领域中的锁机制,我们一般需要掌握哪些理论知识?

PivotalCloud

开源IM项目OpenIM单聊及万人群压测报告

Geek_1ef48b

【Web前端】怎样用记事本写一个简单的网页-html

清风莫追

9月月更

易观之星 | “2022年度用户推荐数字应用”投票通道开启

易观分析

易观

上车上车,快速搞懂Redis 过期策略和内存淘汰策略

知识浅谈

redis 过期策略 9月月更

计网复习一,计算机网络原理概述

前端小刘不怕牛牛

计算机网络 计算机基础 HTTP 9月月更

Java进阶(二)文件读操作

No Silver Bullet

Java 9月月更 文件读操作

SpringCloud 配置中心(Nacos)的简单使用

nacos SpringCloud 配置中心 9月月更

k8s自定义controller三部曲之二:自动生成代码

程序员欣宸

Kubernetes k8s 9月月更

二维容器进行图的DFS搜索和BFS搜索-C++STL模板

清风莫追

c++ 算法 9月日更 9月月更

中国密码女天才,破解美国运算100万年才可能解开的密码_安全_万佳_InfoQ精选文章