Chapter 13 数字签名和认证协议

上传人:大米 文档编号:591153573 上传时间:2024-09-16 格式:PPT 页数:26 大小:413.50KB
返回 下载 相关 举报
Chapter 13 数字签名和认证协议_第1页
第1页 / 共26页
Chapter 13 数字签名和认证协议_第2页
第2页 / 共26页
Chapter 13 数字签名和认证协议_第3页
第3页 / 共26页
Chapter 13 数字签名和认证协议_第4页
第4页 / 共26页
Chapter 13 数字签名和认证协议_第5页
第5页 / 共26页
点击查看更多>>
资源描述

《Chapter 13 数字签名和认证协议》由会员分享,可在线阅读,更多相关《Chapter 13 数字签名和认证协议(26页珍藏版)》请在金锄头文库上搜索。

1、Chapter 13 数字签名和认证协议数字签名和认证协议密码编码学与网络安全密码编码学与网络安全密码编码学与网络安全密码编码学与网络安全13.1 数字签名数字签名n消息认证可以保护信息交换不受第三方的攻消息认证可以保护信息交换不受第三方的攻击,但不能处理通信双方自身发生的攻击。击,但不能处理通信双方自身发生的攻击。n数字签名提供了这种能力数字签名提供了这种能力: q验证签名者、签名的日期和时间验证签名者、签名的日期和时间q认证消息内容认证消息内容q可由第三方仲裁,以解决争执。可由第三方仲裁,以解决争执。n因此,因此,数字签名具有认证功能数字签名具有认证功能2024/9/162西安电子科技大学

2、计算机学院数字签名应满足的条件数字签名应满足的条件n签名值必须依赖于所签的消息签名值必须依赖于所签的消息n必须使用对于发送者唯一的信息必须使用对于发送者唯一的信息q以防止伪造和否认以防止伪造和否认n产生签名比较容易产生签名比较容易n识别和验证签名比较容易识别和验证签名比较容易n伪造数字签名在计算上是不可行的。包括伪造数字签名在计算上是不可行的。包括q已知数字签名,伪造新的消息已知数字签名,伪造新的消息q已知消息,伪造数字签名已知消息,伪造数字签名n保存数字签名的拷贝是可行的保存数字签名的拷贝是可行的2024/9/163西安电子科技大学计算机学院直接数字签名直接数字签名n只涉及收发双方只涉及收发

3、双方n假定接收方已知发送方的公钥假定接收方已知发送方的公钥n发送方可以用自己的私钥对整个消息内容或消息发送方可以用自己的私钥对整个消息内容或消息内容的内容的hash值进行加密,完成数字签名。值进行加密,完成数字签名。n可以用接收者的公钥来加密以提供保密性可以用接收者的公钥来加密以提供保密性n先签名后加密,很重要。先签名后加密,很重要。n缺点:安全性依赖于发送方私钥的安全性缺点:安全性依赖于发送方私钥的安全性2024/9/164西安电子科技大学计算机学院仲裁数字签名仲裁数字签名n仲裁者仲裁者Aq验证任何签名的消息验证任何签名的消息q给消息加上日期并发送给接收者给消息加上日期并发送给接收者n需要对

4、仲裁者有合适的信任级别需要对仲裁者有合适的信任级别n即可在私钥体制中实现,又可在公钥体制中实现即可在私钥体制中实现,又可在公钥体制中实现n仲裁者可以或者不可以阅读消息仲裁者可以或者不可以阅读消息2024/9/165西安电子科技大学计算机学院2024/9/166西安电子科技大学计算机学院13.2 认证协议认证协议n用于确认通信的参与者,并交换会话密钥。用于确认通信的参与者,并交换会话密钥。n认证可以是单向的也可以是相互的。认证可以是单向的也可以是相互的。n主密钥应该是主密钥应该是q保密的保密的 保护会话密钥保护会话密钥q有时间性有时间性 防止重放攻击防止重放攻击n发布的协议往往发现有缺陷需要修订

5、发布的协议往往发现有缺陷需要修订2024/9/167西安电子科技大学计算机学院13.2.1 相互认证相互认证n当有效的签名消息被拷贝,之后又重新被发送当有效的签名消息被拷贝,之后又重新被发送q简单重放简单重放q可检测的重放可检测的重放q不可检测的重放不可检测的重放q不加修改的逆向重放(对称密码)不加修改的逆向重放(对称密码)n解决办法包括:解决办法包括:q序列号序列号 (通常不可行通常不可行)q时间戳时间戳(需要同步时钟需要同步时钟)q随机数随机数/响应响应 (目前的常用方法目前的常用方法)重放攻击重放攻击2024/9/168西安电子科技大学计算机学院对称加密方法对称加密方法n如前所述,需要两

6、层密钥。如前所述,需要两层密钥。n可信的可信的KDC, Key Distribution Centerq每个用户与每个用户与KDC共享一个主密钥共享一个主密钥qKDC产生通信方之间所用的会话密钥产生通信方之间所用的会话密钥q主密钥用于分发会话密钥主密钥用于分发会话密钥2024/9/169西安电子科技大学计算机学院Needham-Schroeder 协议协议n有第三方参与的密钥分发协议有第三方参与的密钥分发协议nKDC作为作为AB会话的中介会话的中介n协议协议:1. A - KDC: IDA | IDB | N12. KDC - A: EKa Ks | IDB | N1 | EKb Ks | I

7、DA 3. A - B: EKb Ks | IDA4. B - A: EKsN25. A - B: EKs f (N2) 2024/9/1610西安电子科技大学计算机学院Needham-Schroeder 协议协议n用于安全地分发用于安全地分发AB之间通信所用的会话密钥之间通信所用的会话密钥n存在重放攻击的风险,如果一个过时的会话密钥被存在重放攻击的风险,如果一个过时的会话密钥被掌握掌握q则消息则消息3可以被重放以欺骗可以被重放以欺骗B使用旧会话密钥,使使用旧会话密钥,使B遭到破坏遭到破坏n解决的办法解决的办法:q时间戳时间戳 (Denning 81)q使用一个额外的临时会话号使用一个额外的临

8、时会话号 (Neuman 93)2024/9/1611西安电子科技大学计算机学院公钥加密方法公钥加密方法n需要确保彼此的公钥提前已经获知需要确保彼此的公钥提前已经获知n采用一个中心认证服务器采用一个中心认证服务器Authentication Server (AS)n用时间戳或临时交互号的变形协议用时间戳或临时交互号的变形协议2024/9/1612西安电子科技大学计算机学院Denning AS 协议协议nDenning 81 协议描述如下协议描述如下:1. A - AS: IDA | IDB2. AS - A: EPRasIDA|PUa|T | EPRasIDB|PUb|T 3. A - B:

9、EPRasIDA|PUa|T | EPRasIDB|PUb|T | EPUbEPRasKs|T n会话密钥由会话密钥由A选择,所以不存在会话密钥被选择,所以不存在会话密钥被AS泄密的危险泄密的危险n时间戳可用于防止重放攻击,但需要时钟同步。时间戳可用于防止重放攻击,但需要时钟同步。q改用临时交互号改用临时交互号2024/9/1613西安电子科技大学计算机学院13.2.2 单向认证单向认证n当收发双方不能在同一时间在线时当收发双方不能在同一时间在线时 (eg. email)n有明确的头信息以被邮件系统转发有明确的头信息以被邮件系统转发n希望对内容进行保护和认证希望对内容进行保护和认证2024/9

10、/1614西安电子科技大学计算机学院对称加密方法对称加密方法n可以变化对可以变化对KDC的使用,但是不能使用临时交互号的使用,但是不能使用临时交互号:1. A-KDC: IDA | IDB | N12. KDC - A: EKaKs | IDB | N1 | EKbKs|IDA 3. A - B: EKbKs|IDA | EKsMn不能抗重放攻击不能抗重放攻击q可以引入时间戳到信息中但可以引入时间戳到信息中但email的处理中存在大量的处理中存在大量延时,使得时间戳用途有限。延时,使得时间戳用途有限。2024/9/1615西安电子科技大学计算机学院公钥加密方法公钥加密方法n已经讨论过一些公钥加

11、密认证的论题已经讨论过一些公钥加密认证的论题n若关心保密性,则若关心保密性,则:A - B: EPUbKs | EKsMq被加密的会话密钥和消息内容被加密的会话密钥和消息内容n若需要用数字证书提供数字签名,则若需要用数字证书提供数字签名,则:A - B: M | EPRaH(M) | EPRasT|IDA|PUa q消息,签名,证书消息,签名,证书2024/9/1616西安电子科技大学计算机学院13.2.2 数字签名标准数字签名标准Digital Signature Standard (DSS)n美国政府的签名方案美国政府的签名方案n由由NIST 和和NSA,在,在20世纪世纪90年代设计年代

12、设计n1991年,作为年,作为FIPS-186发布发布n1993, 1996 ,2000进行了修改进行了修改n采用采用SHA hash算法算法 nDSS 是标准是标准 DSA 算法。算法。nFIPS 186-2 (2000) 包括可选的包括可选的 RSA 和椭圆曲线签名和椭圆曲线签名算法算法2024/9/1617西安电子科技大学计算机学院Digital Signature Algorithm (DSA)n产生产生320 bit的签名值的签名值n可以提供可以提供512-1024 bit 的安全性的安全性n比比RSA小且快小且快n仅是一个数字签名方案(不能用于加密)仅是一个数字签名方案(不能用于加

13、密)n安全性依赖于计算里算对数的困难性安全性依赖于计算里算对数的困难性n是是ElGamal 和和Schnorr 方案的变体方案的变体2024/9/1618西安电子科技大学计算机学院Digital Signature Algorithm (DSA)2024/9/1619西安电子科技大学计算机学院DSA 密钥的生成密钥的生成n全局公钥全局公钥 (p, q, g): q选择选择q, 位长为位长为160 bit q选择一个大的素数选择一个大的素数 p = 2L n其中其中 L= 512 to 1024 bits 且且L 是是64的倍数的倍数nq 是是 (p-1)的素因子的素因子q选择选择 g = h(

14、p-1)/q n其中其中 h 1 n用户选择私钥并计算对应的公钥用户选择私钥并计算对应的公钥: q随机选择私钥随机选择私钥 0xq q计算公钥计算公钥 y = gx (mod p) 2024/9/1620西安电子科技大学计算机学院DSA 签名的生成签名的生成n为了对消息为了对消息M进行签名,发送者进行签名,发送者:q产生一个随机签名密钥产生一个随机签名密钥k, kq q注意注意 k 必须是一个随机数,用后就扔掉,不再使用。必须是一个随机数,用后就扔掉,不再使用。n计算签名对计算签名对: r = ( gk ( mod p ) ) (mod q) s = ( k-1.H( M ) + x.r) (

15、mod q) n和消息和消息M一同发送签名值一同发送签名值( r, s )2024/9/1621西安电子科技大学计算机学院DSA 数字签名的验证数字签名的验证n已经收到消息已经收到消息M 和签名值和签名值 (r,s) n为了验证签名为了验证签名, 接收者计算接收者计算: w = s-1(mod q) u1= (H(M).w)(mod q) u2= (r.w)(mod q) v = (gu1.yu2(mod p) (mod q) n如果如果 v = r 则签名正确则签名正确n证明(略)证明(略)2024/9/1622西安电子科技大学计算机学院2024/9/1623西安电子科技大学计算机学院2024/9/1624西安电子科技大学计算机学院小小 结结q数字签名数字签名q认证协议认证协议n相互认证相互认证n单方认证单方认证qDSA及其及其DSS2024/9/1625西安电子科技大学计算机学院第第13章作业章作业n习题:第习题:第13.7,13.10题题2024/9/1626西安电子科技大学计算机学院

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业/管理/HR > 劳务/用工合同

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