信息安全课件(2010)4-1消息摘要和数字签名

上传人:f****u 文档编号:110573705 上传时间:2019-10-30 格式:PDF 页数:26 大小:286.44KB
返回 下载 相关 举报
信息安全课件(2010)4-1消息摘要和数字签名_第1页
第1页 / 共26页
信息安全课件(2010)4-1消息摘要和数字签名_第2页
第2页 / 共26页
信息安全课件(2010)4-1消息摘要和数字签名_第3页
第3页 / 共26页
信息安全课件(2010)4-1消息摘要和数字签名_第4页
第4页 / 共26页
信息安全课件(2010)4-1消息摘要和数字签名_第5页
第5页 / 共26页
点击查看更多>>
资源描述

《信息安全课件(2010)4-1消息摘要和数字签名》由会员分享,可在线阅读,更多相关《信息安全课件(2010)4-1消息摘要和数字签名(26页珍藏版)》请在金锄头文库上搜索。

1、1 消息摘要和数字签名消息摘要和数字签名 主讲人:裴士辉主讲人:裴士辉 e_mail: shihui_pei 电话:电话:13694302598 消息摘要和消息摘要和hash 函数函数 ?消息摘要消息摘要 ?单向散列函数单向散列函数 ?安全散列标准安全散列标准SHS ?其他的单向散列函数其他的单向散列函数 2 消息摘要消息摘要 ?对任意长度的明文对任意长度的明文m,经由哈希函数,经由哈希函数(杂凑函数杂凑函数)h 产生固定长度的哈希值产生固定长度的哈希值h(m),用来对明文作鉴别,用来对明文作鉴别 (authentication)或数字签名或数字签名(digital signature)。 ?

2、哈希函数值是对明文的一种哈希函数值是对明文的一种“指纹指纹”(finger print)或 是摘要 或 是摘要(digest)。 ?对哈希函数值的数字签名,就是对此明文的数字 签名,可以用来提高数字签名的效率。 对哈希函数值的数字签名,就是对此明文的数字 签名,可以用来提高数字签名的效率。 单向散列函数单向散列函数 x = h (m) 使用在数字签名上的哈希函数必须满足:使用在数字签名上的哈希函数必须满足: ?对任意长度的明文对任意长度的明文m,产生固定长度的哈希值,产生固定长度的哈希值h(m); ?对任意的明文对任意的明文m,哈希函数值,哈希函数值h(m)可由硬件或软件容 易得到; 可由硬件

3、或软件容 易得到; ?对任意哈希函数值对任意哈希函数值x,要找到一个明文,要找到一个明文m与之对应, 即 与之对应, 即x = h(m),在计算上不可行;,在计算上不可行; ?对一个明文对一个明文m1,要找到另一个不同的明文,要找到另一个不同的明文m2,使之具 有相同的哈希值 ,使之具 有相同的哈希值,即即h(m1) = h(m2),在计算上不可行;,在计算上不可行; ?要找到任意一对不同的明文要找到任意一对不同的明文(m1, m2),具有相同的哈 希值,即 ,具有相同的哈 希值,即h(m1) = h(m2),在计算上不可行。,在计算上不可行。 3 安全散列标准安全散列标准SHS ?1995由

4、美国由美国NIST提出,提出,SHS(Secure Hash Standard),算法为,算法为SHA。 ?要求输入小于要求输入小于264位,位, ?输出为输出为160位位(5个寄存器,个寄存器,A, B, C, D, E)。 ?将明文分成若干将明文分成若干512位的定长块,每一块与当前的信 息摘要值结合,产生信息摘要的下一个中间结果,直 到处理完毕。 位的定长块,每一块与当前的信 息摘要值结合,产生信息摘要的下一个中间结果,直 到处理完毕。 SHA的运算过程的运算过程 ?将消息填充为将消息填充为512位的整数倍位的整数倍 ?5个个32位中间变量位中间变量a b c d e,起初值为常数起初值

5、为常数 ?对对5个个32位的寄存器位的寄存器A、B、C、D、E,进行运算进行运算 A B C D E的初值为的初值为0 ?对每一个对每一个512位的消息进行如下处理: 将中间变量 位的消息进行如下处理: 将中间变量a b c d e 赋给赋给A B C D E; 进行主循环 四轮,每轮 ; 进行主循环 四轮,每轮20次次 a=a+A, b=b+B,c=c+C,d=d+D, e=e+e ?最后输出为最后输出为a b c d e 的级联的级联 4 a,b,c,d,e的初值的初值 a=0x67452301 b=0xefcdab89 c=0x98badcfe d=0x10325476 e=0xc3d2

6、e1f0 Ei-1 Di-1 Ci-1 Bi-1 Ai-1 Ei Di Ci Bi Ai 非线性函数非线性函数f 30 5 Ft Wt Kt 5 非线性函数非线性函数F ?Ft(x,y,z)=(x&y)|(x&z)0=t20 ?Ft(x,y,z)=xyz 20=t40 ?Ft(x,y,z)=(xy)|(xz)|(yz) 40=t60 ?Ft(x,y,z)=xyz 60=t80 Kt:常数常数 ?Kt=0x5a827999 0=t20 ?Kt=0x6ed9eda1 20=t40 ?Kt=0x8f1bbcdc 40=t60 ?Kt=0xca62c1d6 60=t80 6 Wt:消息的变形消息的变形

7、 ?消息:消息:512bit,16个个32bit字字 M0M15 ?Wt: 32bit字字 0=t=15 Wt=Mt 16=t=79 Wt=(Wt-3Wt-8Wt-14Wt-16)1 其他的单向散列函数其他的单向散列函数 ?RIPEMD-160 欧洲欧洲RIPE项目的结果项目的结果 RIPEMD为为128位 更新后成为 位 更新后成为RIPEMD-160 基础是基础是MD5 ?MD5 Ron Rivest于于1990年提出年提出MD4 1992年年, MD5 (RFC 1321) developed by Ron Rivest at MIT MD5把数据分成把数据分成512-bit块块 MD5

8、的的hash值是值是128-bit 在最近数年之前在最近数年之前,MD5是最主要的是最主要的hash算法 现行美国标准 算法 现行美国标准SHA-1以以MD5的前身的前身MD4为基础为基础 7 王小云对王小云对MD5的攻击的攻击 ?方法: 差分攻击 模整数减法 异或运算 方法: 差分攻击 模整数减法 异或运算 王小云对王小云对MD5的攻击的攻击 ?目的:寻找如下条件的消息:目的:寻找如下条件的消息: (a, b, c, d) = MD5(a0, b0, c0, d0,M0), (a, b, c, d) = MD5(a0, b0, c0, d0,M0 ), MD5(a, b, c, d,M1)

9、= MD5(a, b, c, d,M1 ) ?2005年的攻击结果 找到 年的攻击结果 找到(M0,M0 )需要需要 239次次MD5操作操作, IBM P690上需要 时间 上需要 时间15分到分到1小时 找到 小时 找到 (M1,M1)需要需要 232次次MD5操作操作, IBM P690上需要 时间 上需要 时间5分到分到15分分 8 The Story of Alice and her Boss Caesars View At the day Alice is supposed to leave, Caesar writes a letter of recommendation for

10、 Alice - on paper. The same day, she asks Caesar to digitally sign the letter. For his convenience she presents an electronic copy of the document. Caesar opens the document - it looks exactly like the original document. So he signs the document. Months later, Caesar discovers that there has been a

11、breach of secrecy with his French affair files. Will he ever find out who tricked him and how? The Story of Alice and her Boss Alices View Being an intern, Alice does not have any access to secret documents. Not enough for her . . tricky Alice decides to fool Caesar. Because Caesar is still relying

12、on the widely used MD5 hash function, she implements the attack from Wang and Yu How to break MD5 and other hash functions. Eurocrypt 2005 to find MD5 collisions. When she receives her letter of recommendation (on paper), she prepares two postscript files with the same MD5 hash: One to display the l

13、etter of recommendation, and a second one, an order from Caesar to grant Alice some kind of a security clearance. 9 10 The Story of Alice and her Boss a25f7f0b 29ee0b39 68c86073 8533a4b9 a25f7f0b 29ee0b39 68c86073 8533a4b9 Hash() 签名算法签名算法 消息消息 To Bob 消息消息 To Bob 数字签名数字签名 To Bob 数字签名数字签名 To Bob 消息摘要消

14、息摘要 消息摘要消息摘要 Alice 私钥私钥 发送方:发送方: Alice 用用RSA算法进行数字签名算法进行数字签名 11 Hash() 验证算法验证算法 消息消息From Alice 消息消息From Alice 数字签名数字签名 From Alice 数字签名数字签名 From Alice 消息摘要消息摘要 消息摘要消息摘要 Alice 公钥公钥 消息摘要消息摘要 消息摘要消息摘要 ?= 用用RSA算法进行身份验证算法进行身份验证 数字签名标准数字签名标准 ?公布于公布于1994年年5月月19日的联邦记录上,日的联邦记录上, ?并于并于1994年年12月月1日采纳为标准日采纳为标准DS

15、S ?DSS为为EIGamal签名方案的改进。签名方案的改进。 12 DSA的参数的参数 ?参数参数 p: 512位到位到1024位的素数(可有一组用户共享)位的素数(可有一组用户共享) q: 160位长,位长,p-1的素因子的素因子 (可有一组用户共享可有一组用户共享) g=h(p-1)/q mod p, 其中其中h是一整数是一整数,1h(p-1) ?公开密钥公开密钥 y=gxmod p (一个(一个p位的数)位的数) ?私人密钥:私人密钥: x&.N5. 0040: 0A 63 35 2E 78 E6 42 AF 4C 62 AC DA 8B 63 FF 86 .c5.x.B.Lb.c 0050: 7D 0B F1 63 F9 84 4D 02 0D 68 20 F2 56 2E D6 C8 .cMh .V. 0060: ED C8 F0 CF 7B 6F 38 2F 2D 4E EF EC 49 BF E1 35 .o8/-NI5 0070: 30 47 E7 64 C0 35 BD D8 8F 1E 13 BE 00 79 5B 89 0G.d.5.y. 25 26 验证已签名的证书验证已签名的证书 使用使用Ca的公钥验证已签名的证书 编译并运行程序 的公钥验证已签名的证书 编译并运行程序CheckCertSign.java 下次课再见!下次课再见!

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号