密码Hash函数的分析与设计-王小云

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
密码Hash函数的分析与设计
王 小 云
清华大学高等研究院
报告提纲
Hash函数与密码学
Hash函数的碰撞攻击
Hash函数碰撞攻击引发的安全问题 国内外Hash函数新算法的设计
2
报告提纲
Hash函数与密码学
Hash函数的碰撞攻击
Hash函数碰撞攻击引发的安全问题 国内外Hash函数新算法的设计
3
密码学与信息安全
Web of Science他引94次,Google Scholar引用368次
Xiaoyun Wang, Hongbo Yu, How to Break MD5 and Other Hash Functions, Eurocrypt 2005. 【Best Paper】
Web of Science他引309次,Google Scholar引用1111次
M1 M2
H
Y 生日攻击复杂度
9
Hash函数简介
1010111 1010111 0010100
国际通用Hash 函数算法: MD5 & SHA-1
0010100
11011101
00010101
消息
11011101
00010101
MD5 128 比特
SHA-1 160 比特
MD5 --- R. Rivest:图灵奖得主, RSA第一设计者 SHA-1 ---NIST / NSA:美国国家标准技术研究所
解决不可能差分问题:将不可能差分转化为可能差分, 发现高概率的SHA-0、SHA-1碰撞路线
增加了大量的控 制方程
提出了不破坏大量明文比特方程的比特修改技术
分析70多个含有512个变量的方程,找到50-60个可以用 来明文修改的比特
给出两个明文分组构成碰撞的攻击模型
完成明文特征的对接,实现分割攻击
21
Hash函数碰撞攻击
MD5破解论文获汤姆森路透卓越研究奖(中国)
[2001-2006年中国所有领域共有24篇论文获选]
国际通用Hash函数的破解项目
18
SHA-1的碰撞攻击方法与技术
SHA系列算法数学分析模型
代数模型:推出产生碰撞路线的两个明文差分特征, 明文差分的空间{0,1}512, SHA-0的碰撞路线仅有2条 根据明文差分特征,SHA-1产生碰撞需要70多个明文 方程成立
19
SHA-1碰撞攻击方法与技术
SHA-1不可能差分路线
20
SHA-1碰撞攻击方法与技术
15
MD5碰撞攻击方法与技术
提出控制MD5强雪崩效应的多种技术
引入长比特进位的差分路线(17比特进位)代替不超 过5个比特进位基本原则 通过条件控制解决了大量的长比特进位引起的不可能 差分
16
基本方法:明文修改技术
将概率条件转化成确定条件的两种明文修改技术
基本明文修改,第一圈以1的概率成立 高级明文修改,第二圈高概率成立:多重数学控制技术
collision
三圈Hash函数经明文修改后,M1和M2构成高概率碰撞
17
MD5碰撞攻击方法与技术
多明文分组碰撞思想
提出两个明文分组构成MD5碰撞攻击的一般模式 解决了两个明文分组的差分对接问题,以实现分割攻击
两个明文分组的碰撞 多个明文分组的碰撞
Hash函数的安全性等价于压缩函数的安全性,通常寻找 一个消息分组的碰撞
1976年:美国公布DES标准算法,在新的分析技术推动下,发 展到以AES为代表的对称密码学 (包括流密码)
同年,Diffie与Hellman公钥密码学的提出,公钥加密与数字签 名技术得到发展
基础密码算法
对称加密算法(DES、AES等 ) 公钥密码算法:公钥加密、电子签名,RSA、ECC等 Hash 函数(MD5、SHA-1 等)
14
基本方法:比特追踪法
提出比特进位产生非零比特差分以抵消雪崩效应
22 7 12 17 22 7 12 17 22 7 12 17 22 7
推导出控制雪崩的Hash函数数学特征 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 提出比特追踪法快速寻找攻击路线 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2
系统的消除雪崩数学控制方法 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 建立控制雪崩条件方程
1
1
32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 6 5 4 3 2 1
确定碰撞路线的前提条件 32 31 30 29 28 27 26 25 24 23 22 21 201 18 17 16 15 14 13 12 11 10 9
9
32 31 30 29 28 27 26 25 24 23 22 21 20 19 1 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
Xiaoyun Wang, Xuejia Lai etc, Cryptanalysis of the Hash Functions MD4 and RIPEMD, Eurocrypt 2005 .【Best Paper】
Web of Science他引139次,Google Scholar引用446次
SHA-0
(NIST, ’93)
Wang/Yu‚ 1997 Chabaud/Joux, 1998
RIPEMD
Wang‚ 1998
MD5
(Rivest ‚‘92) Wang/Yu, 2004
HAVAL
Wang‚ 1998 Preneel , 2003
SHA-1
(NIST, ’95) Wang/Yu‚ 2005
信息通讯由单一的点到点通讯 演化为全球化网络通讯 密码算法被广泛用于有线和无 线安全通讯,为全球约1万亿 通讯设备提供安全保障
密码学是信息安全的支撑,是网络通信与数据保密 的重要保障
4
现代密码学
发展历程
古典密码:从两千多年前的Casear密码到二战被破译的德军密 码Enigma
1949年:Communication theory of secrecy systems,Shannon
IV M1 Round 1 IV Round 1 M2
ΔY1
经过基本明文修改 ΔY1以1的概率成立 经过高级明文修改 ΔY2为高概率差分 ΔY3为一事先选定 的高概率差分
M1
Round 2
ΔY2
Round 2
M2
M1
Round 3
ΔY3 ΔH=0
Round 3
M2
明文修改技术其 他应用 原像攻击 Rebound攻击 MAC密钥恢复 攻击
Hash函数碰撞攻击主要论文
Xiaoyun Wang, Yiqun Yin, Hongbo Yu, Finding Collisions in the Full SHA-1, Crypto 2005.【Best Paper】 Web of Science他引296次,Google Scholar引用1178次 Xiaoyun Wang, Hongbo Yu, Yiqun Lisa Yin, Efficient Collision Search Attacks on SHA-0, Crypto 2005.
32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
王小云于1997年用代数分析方法找到SHA-0碰撞路线,复 杂度 258,1998年改进为 245;1998年给出HAVAL-128的 碰撞,复杂度仅为211次运算
12
Dobbertin
Joux
Preneel
国际通用Hash函数的碰撞攻击
Wang‚ 1998 Dobbertin ‚ 1996
MD4
10
报告提纲
Hash函数与密码学
Hash函数的碰撞攻击
Hash函数碰撞攻击引发的安全问题 国内外Hash函数新算法的设计
11
Hash函数碰撞攻击分析结果
1996年Dobbertin给出了MD4 碰撞实例和MD5的伪碰 撞实例 1998年Chabaud 和Joux找到SHA-0碰撞路线,攻击复 杂度是 261 2003年,Rompay 和Preneel等给出HAVAL-128的碰 撞实例
8
Hash函数简介
密码Hash函数H:Y=H(M)
M
H
Y
抗原像攻击:给定任意Hash值Y,恢复消息M 是困难的
Fra Baidu bibliotek
Y
H-1
搜索攻击
M
保护口令M的安全
抗第二原像攻击:给定消息M1 ,计算另一个消息M2 使 H(M1)=H(M2)是困难的 防止伪造电子签名
抗碰撞性:找到不同的消息(M1, M2) 有相同的指纹,即 H(M1)=H(M2)是困难的 防止伪造电子签名
32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
32 31 30 29 28 27 26 25 24 23 22 21 2 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
SSH(远程登陆)
邮件(S/MIME,PGP)
7
Hash函数简介
Hash函数:又称杂凑函数、散列函数、数字指纹等, 将任意长的消息压缩为一个固定长度的摘要
1010111 0010100 11011101 00010101
Hash函数
128、160或 256位的01串
数学表示:Y=H(M) , {0,1}*{0,1}n 计算机中的Hash表,用于存储和查找,源于1953年 IBM的历史性讨论 密码学中的Hash函数称为密码Hash函数,具有特定 的安全属性:1979-1987,Merkle,Davies,Price和 Damgard等
5
Hash函数与密码学
Hash函数是密码学的基本工具
Hash函数
数字签名 数据完整性 检测 可证明安全 密码体制
检测传输中消息是否被篡改 防止伪造电子签名和消息认证码 作为安全组件设计多种密码体制和安全通信协议
6
Hash函数与密码学
Smart card(智能卡)
IPSec(VPN)
SSL通讯协议 https://www.alipay.com/
Xiaoyun Wang, Xuejia Lai etc, Collisions for Hash Functions, http://eprint.iacr.org/2004
Web of Science他引101次,Google Scholar引用378次
22 Web of Science 他引1000余次,Google Scholar引用3000余次
RIPEMD-160
(Dobbertin etc 96)
SHA-2 (NIST, ’02) SHA-3 (NIST, ’12)
13
Hash函数碰撞攻击理论体系(1996-2005)
比特进位 比特追踪法 比特进位 数学特征
多明文分组 碰撞理论
数学特征
比特控制方程 比特追踪
解决不可能 差分问题
明文雪崩控制 明文雪崩控制
8 7 6 5 4 3 2 1
32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
相关文档
最新文档