认证理论数字签名与认证协议教学文案

上传人:yulij****0329 文档编号:139298678 上传时间:2020-07-21 格式:PPT 页数:41 大小:358KB
返回 下载 相关 举报
认证理论数字签名与认证协议教学文案_第1页
第1页 / 共41页
认证理论数字签名与认证协议教学文案_第2页
第2页 / 共41页
认证理论数字签名与认证协议教学文案_第3页
第3页 / 共41页
认证理论数字签名与认证协议教学文案_第4页
第4页 / 共41页
认证理论数字签名与认证协议教学文案_第5页
第5页 / 共41页
点击查看更多>>
资源描述

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

1、第13章 认证理论 (数字签名与认证协议),13.1基本概念,数字签名是认证的重要工具 为什么需要数字签名: 报文认证用以保护双方之间的数据交换不被第三方侵犯;但它并不保证双方自身的相互欺骗。假定A发送一个认证的信息给B,双方之间的争议可能有多种形式: B伪造一个不同的消息,但声称是从A收到的。 A可以否认发过该消息,B无法证明A确实发了该消息。,数字签名应满足的要求,收方能确认或证实发方的签字,但不能伪造; 发方发出签名后的消息,就不能否认所签消息; 收方对已收到的消息不能否认; 第三者可以确认收发双方之间的消息传送,但不能伪造这一过程,数字签名应具有的性质,必须能够验证签名者及其签名的日期

2、时间; 必须能够认证被签名消息的内容; 签名必须能够由第三方验证,以解决争议;,注:数字签名功能包含了认证的功能。,13.2两类数字签名函数,直接数字签名 仅涉及通信双方 有效性依赖发方密钥的安全性 仲裁数字签名 使用第三方认证,13.2.1直接数字签名(DDS),(1) AB: EKRaM 提供了认证与签名: 只有A具有KRa进行加密; 传输中无法被篡改; 需要某些格式信息/冗余度; 任何第三方可以用KUa 验证签名,(1) AB: EKUb EKRa(M) 提供了保密(KUb)、认证与签名(KRa):,13.2.1直接数字签名(cont.),(2) AB: M|EKRaH(M) 提供认证及

3、数字签名 - H(M) 受到密码算法的保护; - 只有 A 能够生成 EKRaH(M),(2) AB: EKM|EKRaH(M) 提供保密性、认证和数字签名。,13.2.1直接数字签名的缺点,验证模式依赖于发送方的保密密钥; 发送方要抵赖发送某一消息时,可能会声称其私有密钥丢失或被窃,从而他人伪造了他的签名。 通常需要采用与私有密钥安全性相关的行政管理控制手段来制止或至少是削弱这种情况,但威胁在某种程度上依然存在。 改进的方式例如可以要求被签名的信息包含一个时间戳(日期与时间),并要求将已暴露的密钥报告给一个授权中心。 如X的私有密钥确实在时间T被窃取,敌方可以伪造X的签名并附上早于或等于时间

4、T的时间戳。,13.2.2仲裁数字签名,引入仲裁者。 通常的做法是所有从发送方X到接收方Y的签名消息首先送到仲裁者A,A将消息及其签名进行一系列测试,以检查其来源和内容,然后将消息加上日期并与已被仲裁者验证通过的指示一起发给Y。 仲裁者在这一类签名模式中扮演敏感和关键的角色。 所有的参与者必须极大地相信这一仲裁机制工作正常。(trusted system),仲裁数字签名技术(1),单密钥加密方式,仲裁者可以看见消息 (1) XA:M|EKxaIDx| H(M) (2) AY:EKayIDx| M | EKxaIDx| H(M) | T X与A之间共享密钥Kxa,Y与A之间共享密钥Kay X:准

5、备消息M,计算其Hash值H(M),用X的标识符IDx 和Hash值构成签名,并将消息及签名经Kxa加密后发送给A;,仲裁数字签名技术(1),A:解密签名,用H(M)验证消息M,然后将IDx,M,签名,和时间戳一起经Kay加密后发送给Y;Y:解密A发来的信息,并可将M和签名保存起来。 解决纠纷: Y:向A发送 EKayIDx| M | EKxaIDx| H(M) A:用Kay恢复IDx,M,和签名( EKxaIDx| H(M)),然后用Kxa解密签名并验证Hash值.,仲裁数字签名技术(2),单密钥加密方式,仲裁者不可以看见消息 (1) XA: IDx | EKxyM|EKxaIDx| H(E

6、KxyM) (2) AY:EKayIDx|EKxyM | EKxaIDx| H(EKxyM) | T,仲裁数字签名技术(2),在这种情况下,X与Y之间共享密钥Kxy, X:将标识符IDx ,密文 EKxyM,以及对IDx和密文消息的散列码用 Kxa加密后形成签名发送给A。 A:解密签名,用散列码验证消息,这时A只能验证消息的密文而不能读取其内容。然后A将来自X的所有信息加上时间戳并用Kay加密后发送给Y。,注意:,(1)和(2) 存在一个共性问题: A和发送方联手可以否认签名的信息; A和接收方联手可以伪造发送方的签名; 在这种模式下Y不能直接验证X的签名,Y认为A的消息已认证,只因为它来自A

7、。因此,双方都需要高度相信A: X必须信任A没有暴露Kxa,并且没有生成错误的签名EKxaIDx| H(M) 。 Y必须信任A仅当散列值正确并且签名确实是X产生的情况下才发送的 EKayIDx| M | EKxaIDx| H(M) | T 。双方都必须信任A处理争议是公正的。只要A遵循上述要求,则X相信没有人可以伪造其签名;Y相信X不能否认其签名。上述情况还隐含着A可以看到X给Y的所有信息,因而所有的窃听者也能看到。,仲裁数字签名技术(3),双密钥加密方式,仲裁者不可以看见消息 (1) XA: IDx|EKRxIDx|EKUy (EKRxM) (2) AY: EKRaIDx| EKUyEKRx

8、M | T X:对消息M双重加密:首先用X的私有密钥KRx,然后用Y的公开密钥KUy。形成一个签名的、保密的消息。然后将该信息以及X的标识符一起用KRx签名后与IDx 一起发送给A。这种内部、双重加密的消息对A以及对除Y以外的其它人都是安全的。,仲裁数字签名技术(3),A:检查X的公开/私有密钥对是否仍然有效,如 果是,则认证消息。并将包含IDx、双重加密的 消息和时间戳构成的消息用KRa签名后发送给Y 本模式比上述两个模式具有以下好处: 1、在通信之前各方之间无须共享任何信息,从而避免了联手作弊; 2、即使KRx 暴露,只要KRa 未暴露,不会有错误标定日期的消息被发送; 3、从X发送给Y的

9、消息的内容对A和任何其他人是保密的。,13.3 RSA签名方案,1. 密钥的生成(同加密系统) 公钥Pk=e,n;私钥Sk=d,n。 2. 签名过程 (用d,n)明文:Mn 密文:S=Md(mod n). 3. 验证过程 (用e,n) 给定M,S,Ver(M,S)为真,当且仅当,M=Se(mod n),13.4 EIGamal签名方案,该方案是特别为签名的目的而设计的。1985年提出,很大程度上为Diffie-Hellman密钥交换算法的推广和变形。这个方案的改进已被美国NIST(国家标准和技术研究所)采纳作为数字签名标准。方案的安全性依赖于求离散对数的困难性。,13.4 EIGamal签名方

10、案,签名方案 *公钥:p:素数, gp(p,g可由一组用户共享) y=gx (mod p) *私钥:xp *签名:k:随机选取,与p-1互素, a(签名)=g k mod p b(签名)满足 M = (xa+kb) mod ( p-1) (即有:b = ( M- xa)k-1 mod (p-1) ) *验证:如果 ya ab (mod p ) = gM (mod p),则签名有效。,13.5 数字签名标准,DSS (Digital Signature Standard)签名标准是1991年8月由美国NIST公布,1994年5月19日的正式公布,并于1994年12月1日采纳为美国联帮信息处理标准

11、。DSS为EIGamal和Schnorr签名方案的改进,其使用的算法记为DSA(Digital Signature Algorithm)。此算法由D. W. Kravitz设计。DSS使用了SHA,安全性是基于求离散对数的困难性。,13.5 DSA算法描述,全局公钥(p,q,g) p为5121024bit的大素数, q是(q1)的素因子,为160比特的素数, g:=h(p-1)/q mod p, 且11 用户私钥x:x为0xq内的随机数 用户公钥y:y=gx mod p,13.5 DSA算法描述(Cont.),用户每个消息用的秘密随机数k:0kq; 签名过程:对报文M,签名为(r,s) r =

12、 (gk mod p) mod q s = (k-1(H(M) + xr) ) mod q 验证: w s-1 mod q a = ( H(M)w ) mod q b = rw mod q v = ( ( ga yb) mod p) mod q Ver(M,r,s) 真 iff v = r,13.6其它签名技术简介,不可否认签名 Chaum和Van Antwerprn 1989年提出 该签名的特征是:验证签名者必须与签名者合作。验证签名是通过询问-应答协议来完成。这个协议可防止签名者Bob否认他以前做的签名 一个不可否认的签名方案有三个部分组成: 签名算法、验证协议、否认协议 不可否认的签名的

13、本质是无签名者合作不能验证签名,从而防止复制和散布其签名文件的可能,适应于电子出版系统知识产权的保护。,13.6其它签名技术简介(Cont.),盲签名 Chaum在1983年提出。 需要某人对文件签名,但又不想签名者知道文件内容,称为盲签名。 适应于电子选举、数字货币协议中。 群签名 群签名是群体密码学中的课题,1991由Chaum和van Heyst提出。 特点:1 只有群体成员才能代表群体签名;2 可用公钥验证签名,但不知是谁签的名;3 争议发生时可由群体成员或可信第三方确认签名者。,13.7认证协议,双方认证 (mutual authentication) 单向认证 (one-way a

14、uthentication),双边认证协议,最常用的协议,该协议使得通信各方互相认证鉴别各自的身份,然后交换会话密钥。 基于认证的密钥交换核心问题有两个: 保密性 时效性 为了防止伪装和防止暴露会话密钥,基本认证与会话密 码信息必须以保密形式通信。这就要求预先存在保密或 公开密钥供实现加密使用。第二个问题也很重要,因为 涉及防止消息重放攻击。,消息重放:最坏情况下可能导致向敌人暴露会话密钥,或成功地冒充 其他人;至少也可以干扰系统的正常运行,处理不好将导致系统瘫 痪。,常见的消息重放 攻击形式有: 1、简单重放:攻击者简单复制一条消息,以后在重新发送它; 2、可被日志记录的重放:攻击者可以在一

15、个合法有效的时间 窗内重放一个带时间戳的消息; 3、不能被检测到的重放:这种情况可能出现,原因是原始信 息已经被拦截,无法到达目的地,而只有重放的信息到达目 的地。 4、反向重放,不做修改。向消息发送者重放。当采用传统对称 加密方式时,这种攻击是可能的。因为消息发送者不能简单 地识别发送的消息和收到的消息在内容上的区别。,对付重放攻击的一种方法是在认证交换中使用一个序列号来给每一 个消息报文编号。仅当收到的消息序数顺序合法时才接受之。但 这种方法的困难是要求双方必须保持上次消息的序号。,两种更为一般的方法是: 1、时间戳:A接受一个新消息仅当该消息包含一个时间戳,该时间戳在A看来,是足够接近A

16、所知道的当前时间;这种方法要求不同参与者之间的时钟需要同步。 2、挑战/应答方式。(Challenge/Response)A期望从B获得一个新消息,首先发给B一个临时值(challenge),并要求后续从B收到的消息(response)包含正确的这个临时值。,时间戳方法似乎不能用于面向连接的应用,因为该技术固有的困难: (1) 某些协议需要在各种处理器时钟中维持同步。该协议必须既要容错以对付网络出错,又要安全以对付重放攻击。 (2) 由于某一方的时钟机制故障可能导致临时失去同步,这将增大攻击成功的机会。 (3) 由于变化的和不可预见的网络延迟的本性,不能期望分布式时钟保持精确的同步。因此,任何基于时间戳的过程必须采用时间窗的方式来处理:一方面时间窗应足够大以包容网络延迟,另一方面时间窗应足够小以最大限度地减小遭受攻击的机会。,挑战问/应答方法不适应非连接性的应用,因为它要求在传输开始之前先有握手的额外开销,这就抵消了无连接通信的主要特点。 安全的时间服务器用以实现时钟同步可能

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

当前位置:首页 > 中学教育 > 教学课件 > 高中课件

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