数字签名和认证协议

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

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

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

2、24/7/202数字签名应满足的条件数字签名应满足的条件n签名值必须依赖于所签的消息签名值必须依赖于所签的消息n必须使用对于发送者唯一的信息必须使用对于发送者唯一的信息n以防止伪造和否认以防止伪造和否认n产生签名比较容易产生签名比较容易n识别和验证签名比较容易识别和验证签名比较容易n伪造数字签名在计算上是不可行的。包括伪造数字签名在计算上是不可行的。包括n数字签名,伪造新的消息数字签名,伪造新的消息n消息,伪造数字签名消息,伪造数字签名n保存数字签名的拷贝是可行的保存数字签名的拷贝是可行的2024/7/203直接数字签名直接数字签名n只涉及收发双方只涉及收发双方n假定接收方发送方的公钥假定接收

3、方发送方的公钥n发送方可以用自己的私钥对整个消息内容或消息发送方可以用自己的私钥对整个消息内容或消息内容的内容的hash值进行加密,完成数字签名。值进行加密,完成数字签名。n可以用接收者的公钥来加密以提供保密性可以用接收者的公钥来加密以提供保密性n先签名后加密,很重要。先签名后加密,很重要。n缺点:平安性依赖于发送方私钥的平安性缺点:平安性依赖于发送方私钥的平安性2024/7/204仲裁数字签名仲裁数字签名n仲裁者仲裁者An验证任何签名的消息验证任何签名的消息n给消息加上日期并发送给接收者给消息加上日期并发送给接收者n需要对仲裁者有适宜的信任级别需要对仲裁者有适宜的信任级别n即可在私钥体制中实

4、现,又可在公钥体制中实现即可在私钥体制中实现,又可在公钥体制中实现n仲裁者可以或者不可以阅读消息仲裁者可以或者不可以阅读消息2024/7/2052024/7/20613.2 认证协议认证协议n用于确认通信的参与者,并交换会话密钥。用于确认通信的参与者,并交换会话密钥。n认证可以是单向的也可以是相互的。认证可以是单向的也可以是相互的。n主密钥应该是主密钥应该是q保密的保密的 保护会话密钥保护会话密钥q有时间性有时间性 防止重放攻击防止重放攻击n发布的协议往往发现有缺陷需要修订发布的协议往往发现有缺陷需要修订2024/7/20713.2.1 相互认证相互认证n当有效的签名消息被拷贝,之后又重新被发

5、送当有效的签名消息被拷贝,之后又重新被发送n简单重放简单重放n可检测的重放可检测的重放n不可检测的重放不可检测的重放n不加修改的逆向重放对称密码不加修改的逆向重放对称密码n解决方法包括:解决方法包括:n序列号序列号 (通常不可行通常不可行)n时间戳时间戳(需要同步时钟需要同步时钟)n随机数随机数/响应响应 (目前的常用方法目前的常用方法)重放攻击重放攻击2024/7/208对称加密方法对称加密方法n如前所述,需要两层密钥。如前所述,需要两层密钥。n可信的可信的KDC, Key Distribution Centerq每个用户与每个用户与KDC共享一个主密钥共享一个主密钥qKDC产生通信方之间所

6、用的会话密钥产生通信方之间所用的会话密钥q主密钥用于分发会话密钥主密钥用于分发会话密钥2024/7/209Needham-Schroeder 协议协议n有第三方参与的密钥分发协议有第三方参与的密钥分发协议nKDC作为作为AB会话的中介会话的中介n协议协议:1. A - KDC: IDA | IDB | N12. KDC - A: EKa Ks | IDB | N1 | EKb Ks | IDA 3. A - B: EKb Ks | IDA4. B - A: EKsN25. A - B: EKs f (N2) 2024/7/2010Needham-Schroeder 协议协议n用于平安地分发用于

7、平安地分发AB之间通信所用的会话密钥之间通信所用的会话密钥n存在重放攻击的风险,如果一个过时的会话密钥被存在重放攻击的风险,如果一个过时的会话密钥被掌握掌握n那么消息那么消息3可以被重放以欺骗可以被重放以欺骗B使用旧会话密钥,使使用旧会话密钥,使B遭到破坏遭到破坏n解决的方法解决的方法:n时间戳时间戳 (Denning 81)n使用一个额外的临时会话号使用一个额外的临时会话号 (Neuman 93)2024/7/2011公钥加密方法公钥加密方法n需要确保彼此的公钥提前已经获知需要确保彼此的公钥提前已经获知n采用一个中心认证效劳器采用一个中心认证效劳器Authentication Server

8、(AS)n用时间戳或临时交互号的变形协议用时间戳或临时交互号的变形协议2024/7/2012Denning AS 协议协议nDenning 81 协议描述如下协议描述如下:1. A - AS: IDA | IDB2. AS - A: EPRasIDA|PUa|T | EPRasIDB|PUb|T 3. A - B: EPRasIDA|PUa|T | EPRasIDB|PUb|T | EPUbEPRasKs|T n会话密钥由会话密钥由A选择,所以不存在会话密钥被选择,所以不存在会话密钥被AS泄密的危险泄密的危险n时间戳可用于防止重放攻击,但需要时钟同步。时间戳可用于防止重放攻击,但需要时钟同步。

9、q改用临时交互号改用临时交互号2024/7/201313.2.2 单向认证单向认证n当收发双方不能在同一时间在线时当收发双方不能在同一时间在线时 (eg. email)n有明确的头信息以被邮件系统转发有明确的头信息以被邮件系统转发n希望对内容进行保护和认证希望对内容进行保护和认证2024/7/2014对称加密方法对称加密方法n可以变化对可以变化对KDC的使用,但是不能使用临时交互号的使用,但是不能使用临时交互号:1. A-KDC: IDA | IDB | N12. KDC - A: EKaKs | IDB | N1 | EKbKs|IDA 3. A - B: EKbKs|IDA | EKsMn

10、不能抗重放攻击不能抗重放攻击q可以引入时间戳到信息中但可以引入时间戳到信息中但email的处理中存在大量的处理中存在大量延时,使得时间戳用途有限。延时,使得时间戳用途有限。2024/7/2015公钥加密方法公钥加密方法n已经讨论过一些公钥加密认证的论题已经讨论过一些公钥加密认证的论题n假设关心保密性,那么假设关心保密性,那么:nA - B: EPUbKs | EKsMn被加密的会话密钥和消息内容被加密的会话密钥和消息内容n假设需要用数字证书提供数字签名,那么假设需要用数字证书提供数字签名,那么:nA - B: M | EPRaH(M) | EPRasT|IDA|PUa n消息,签名,证书消息,

11、签名,证书2024/7/201613.2.2 数字签名标准数字签名标准Digital Signature Standard (DSS)n美国政府的签名方案美国政府的签名方案n由由NIST 和和NSA,在,在20世纪世纪90年代设计年代设计n1991年,作为年,作为FIPS-186发布发布n1993, 1996 ,2000进行了修改进行了修改n采用采用SHA hash算法算法 nDSS 是标准是标准 DSA 算法。算法。nFIPS 186-2 (2000) 包括可选的包括可选的 RSA 和椭圆曲线签名和椭圆曲线签名算法算法2024/7/2017Digital Signature Algorith

12、m (DSA)n产生产生320 bit的签名值的签名值n可以提供可以提供512-1024 bit 的平安性的平安性n比比RSA小且快小且快n仅是一个数字签名方案不能用于加密仅是一个数字签名方案不能用于加密n平安性依赖于计算里算对数的困难性平安性依赖于计算里算对数的困难性n是是ElGamal 和和Schnorr 方案的变体方案的变体2024/7/2018Digital Signature Algorithm (DSA)2024/7/2019DSA 密钥的生成密钥的生成n全局公钥全局公钥 (p, q, g): q选择选择q, 位长为位长为160 bit q选择一个大的素数选择一个大的素数 p =

13、2L n其中其中 L= 512 to 1024 bits 且且L 是是64的倍数的倍数nq 是是 (p-1)的素因子的素因子q选择选择 g = h(p-1)/q n其中其中 h 1 n用户选择私钥并计算对应的公钥用户选择私钥并计算对应的公钥: q随机选择私钥随机选择私钥 0xq q计算公钥计算公钥 y = gx (mod p) 2024/7/2020DSA 签名的生成签名的生成n为了对消息为了对消息M进行签名,发送者进行签名,发送者:q产生一个随机签名密钥产生一个随机签名密钥k, kq q注意注意 k 必须是一个随机数,用后就扔掉,不再使用。必须是一个随机数,用后就扔掉,不再使用。n计算签名对

14、计算签名对: r = ( gk ( mod p ) ) (mod q) s = ( k-1.H( M ) + x.r) (mod q) n和消息和消息M一同发送签名值一同发送签名值( r, s )2024/7/2021DSA 数字签名的验证数字签名的验证n已经收到消息已经收到消息M 和签名值和签名值 (r,s) n为了验证签名为了验证签名, 接收者计算接收者计算: nw = s-1(mod q) nu1= (H(M).w)(mod q) nu2= (r.w)(mod q) nv = (gu1.yu2(mod p) (mod q) n如果如果 v = r 那么签名正确那么签名正确n证明略证明略2024/7/20222024/7/20232024/7/2024小小 结结q数字签名数字签名q认证协议认证协议n相互认证相互认证n单方认证单方认证qDSA及其及其DSS2024/7/2025第第13章作业章作业n习题:第习题:第13.7,13.10题题2024/7/2026

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

最新文档


当前位置:首页 > 办公文档 > 模板/表格 > 财务表格

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