第6讲-认证协议-ppt课件.pptx
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《第6讲-认证协议-ppt课件.pptx》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 认证 协议 ppt 课件
- 资源描述:
-
1、第6讲 认证协议http:/ 认证协议6.1 认证方式分类6.2 经典认证协议6.3 密钥交换协议6.4 认证密钥交换协议6.5 可否认认证协议6.6 对认证协议的典型攻击6.7 认证协议的设计原则l2lPPT课件课件认证和协议的概念 认证:是一个过程,通过这个过程,一个实体可以向另一个实体证明某种声称的属性。 协议:在两方或相互协作的多方之间进行通信的过程。因此,一个认证过程也是一个认证协议。认证协议是安全协议的一种。什么是认证?什么是协议?什么是认证?什么是协议?l3lPPT课件课件 消息认证(也称数据源认证) 身份认证(或称实体认证) 带认证的密钥建立实体声称实体声称的属性有的属性有哪些
2、呢?哪些呢?l4lPPT课件课件消息认证 目的: 确认消息发送者的身份 确认数据完整性 消息认证与数据完整性区别: 消息认证必然涉及通信,而数据完整性不一定包含通信,该安全服务可用于存储的数据。 消息认证必然涉及确认消息的新鲜性,而数据完整性无此必要,这是因为老数据、重放的旧消息也可能有完善的数据完整性。新鲜的消息指接收者认定的新近发送的消息(收发之间的时间间隔足够小)。l5lPPT课件课件身份认证1、主机主机类型 通信的参与者是在分布式系统中被称为“节点”的计算机或平台。 实例:客户端服务器设置,其中一台主机(客户端)向另一台主机(服务器)请求某些服务。l6lPPT课件课件身份认证2、用户主
3、机类型 用户通过登录系统中某台主机来获得访问该计算机系统。 举例: 通过Telnet登录到某台计算机 通过FTP(file transfer protocol)执行文件传送l7lPPT课件课件身份认证3、进程主机类型 主要用于分布式计算系统远程进程的识别与认证。 一个主机可能会给外部的进程授予不同的接入权限。例如某段“移动代码”或可执行的Java程序都能够到达远程主机并作为远程进程在该主机上运行。 在敏感的应用中,设计认证机制是必需的,也是可能的,这样才能使主机识别外部进程是否友好,从而能够对外部进程赋予合适的接入权限。l8lPPT课件课件身份认证4、成员俱乐部类型 可以把成员拥有俱乐部证书的
4、证明看做是一般化的“用户主机类型”。 俱乐部可以只需要考虑成员证件的有效性,而没有必要知道该成员的进一步信息,如该成员的真实身份。l9lPPT课件课件6.1 认证方式分类(1) 单方认证(2) 双方认证(3) 包含可信第三方的认证认证可以分为那些类别?认证可以分为那些类别?l10lPPT课件课件6.1.1 单方认证协议的两个参与主体A和B中只对其中的一个主体进行认证。(服务器对客户端的认证或)认证机制包括基于交互模式的挑战应答机制(CR)基于对称密码技术的挑战应答机制的单方认证基于非对称密码技术的挑战应答机制的单方认证基于非交互模式的时间戳机制(TS)基于对称加密技术的时间戳机制的单方认证基于
5、非对称加密技术的时间戳机制的单方认证l11lPPT课件课件挑战应答机制 “挑战-应答”机制(Challenge-Response) B期望从A获得一个新消息,首先发给A一个临时值(challenge),并要求后续从A收到的消息(response)包含正确的这个临时值。l12lPPT课件课件基于对称密码技术的挑战应答机制”的单方认证协议1:BobAlice:NB; (挑战)AliceBob:EKAB(M, NB); (应答)Bob解密接收到密文分组并接受(若Bob看到NB)或拒绝(其它情况)。协议2:BobAlice:NB; (挑战) AliceBob:M, MDC (KAB, M, NB);
6、(应答) Bob重构MDC (KAB, M, NB)并接受(若两个MDC相同)或拒绝(其它情况)。l13lPPT课件课件基于非对称密码技术的挑战应答机制的单方认证协议3:BobAlice:NB; (挑战) AliceBob:M, SigA (M, NB); (应答) Bob使用他的一次性随机数NB验证签名并接受(若签名通过验证)或拒绝(其它情况)。l14lPPT课件课件数字时间戳机制 数字时间戳(DTS,Digital Time-stamp ): 是由DTS服务机构提供的安全服务项目,专门用于证明信息的发送时间。 B接受一个新消息仅当该消息包含一个时间戳,该时间戳在B看来,是足够接近B所知道的
7、当前时间;这种方法要求不同参与者之间的时钟需要同步。 由于变化的和不可预见的网络延迟的本性,不能期望分布式时钟保持精确的同步。因此,任何基于时间戳的过程必须采用时间窗的方式来处理:一方面时间窗应足够大以包容网络延迟,另一方面时间窗应足够小以最大限度地减小遭受攻击的机会。l15lPPT课件课件数字时间戳机制 数字时间戳的生成及使用过程l16lPPT课件课件基于对称加密技术的时戳机制的单方认证协议4:AliceBob:EKAB (M, TA); Bob解密接收到的密文分组并接受(若认为TA是有效的)或拒绝(其它情况)。协议5:AliceBob:M, TA, MDC (KAB, M, TA); Bo
8、b重构MDC(KAB, M, TA)并接受(若两个MDC相等且TA是有效的)或拒绝(其它情况)。l17lPPT课件课件基于非对称加密技术的时戳机制的单方认证协议6:AliceBob:SigA (M, TA); Bob验证签名并接受(若签名通过验证且TA是有效的)或拒绝(其它情况)。l18lPPT课件课件6.1.2 双方(向)认证 双方认证是指协议的两个通信实体要互相认证。协议7:前提:A拥有公钥证书CertA,B拥有公钥证书CertB;目标:A和B完成双方认证(对身份的确认)。协议步骤:BA:RB; (表示认证请求的功能码)AB:CertA, RA|RB|B|SigA(RA|RB|B);BA:
9、CertB, RB|RA|A|SigB(RB|RA|A).-l19lPPT课件课件6.1.2 双方认证对协议7的攻击协议8:Wiener攻击(加拿大人攻击):前提:除了原协议的前提外,Malice也拥有证书CertM。 Malice(“B”)A:RB; (冒充B)AMalice(“B”):CertA, RA|RB|B|SigA(RA|RB|B); 1) Malice(“A”)B:RA; (冒充A) 2) BMalice(“A”):CertB, RB|RA|A| SigB(RB | RA|A); Malice(“B”)A:CertB, RB|RA|A| SigB(RB | RA|A).结果是得到
10、了结果是得到了A和和B的信任的信任协议协议7:前提:前提:A拥有公钥证书拥有公钥证书CertA,B拥有公钥证书拥有公钥证书CertB;目标:目标:A和和B完成双方认证完成双方认证(对身份的确认对身份的确认)。协议步骤:协议步骤:BA:RB; (表示认证请表示认证请求的功能码求的功能码)AB:CertA, RA|RB|B|SigA(RA|RB|B);BA:CertB, RB|RA|A|SigB(RB|RA|A).-l20lPPT课件课件6.1.3 包含可信第三方的认证Woo-Lam协议:前提:Trent作为可信第三方(TTP),Alice和Trent共享对称密钥KAT,Bob和Trent共享对称
11、密钥KBT;目标:即使Alice和Bob开始互不相识,Alice仍然能够向Bob证明自己。 AliceBob:Alice;【我是Alice】 BobAlice:NB; 【你证明一下吧】 AliceBob:NBKAT; 【你可以去验证,Trent可以证明】 BobTrent:Alice, NBKATKBT; 【问Trent,X说她是Alice】 TrentBob:NBKBT; 【你如果看到NB,那就是了】 Bob使用密钥KBT解密密文分组,如果解密后正确地返回Bob的一次性随机数,Bob就接受此次运行,否则拒绝。协议依赖TTP的可信性。l21lPPT课件课件6.1.3 包含可信第三方的认证Aba
12、di和Needham对上述Woo-Lam协议的攻击(并行攻击!) Malice(“Alice”)Bob:Alice; 【冒充Alice对Bob,我是Alice】 1. MaliceBob:Malice; 【同时执行Malice本身的认证协议我是Malice】 BobMalice(“Alice”):NB; 【Bob执行Woo-Lam认证过程,证明给我 】 2. BobMalice:NB; 【Bob执行Woo-lam认证过程,证明给我】 Malice(“Alice”)Bob:NBKMT; 【执行Woo-lam,注意NB,你问TTP?】 3. MaliceBob:NBKMT; 【并行执行Woo-la
13、m,注意NB不是NB】 BobTrent:Alice, NBKMTKBT; 【Bob问Trent关于Alice的身份】 4. BobTrent:Malice, NBKMTKBT; 【Bob问Trent关于Malice的身份】 TrentBob:“垃圾”KBT; 【按照协议执行,Nb被破坏了】(产生“垃圾”是因为Trent使用KAT对密文组NBKMT进行了解密) 5. TrentBob:NBKBT; 【按照协议,Nb返回了,Alice的身份被确认】 Bob拒绝和Malice的运行;(因为解密后返回的是“垃圾”而不是一次性随机数NB) 6. Bob接受“和Alice的运行”,但实际上是和Malic
14、e的运行。(因为解密返回的NB是正确的)l22lPPT课件课件6.2 经典认证协议 6.2.1 Needham-Schroeder对称密钥认证协议6.2.2 Needham-Schroeder公钥认证协议6.2.3 Otway-Rees认证协议6.2.4 Yahalom协议6.2.5 Andrew RPC(Remote Procedure Call)认证协议6.2.6 Wide-Mouth Frog协议l23lPPT课件课件6.2.1 NEEDHAM-SCHROEDER对称密钥认证协议 基于“挑战-应答”机制 目的: 在通信双方之间分配会话密钥,使协议发起者能够检查会话密钥的新鲜性 是认证和密
15、钥建立协议中最著名的协议l24lPPT课件课件6.2.1 NEEDHAM-SCHROEDER对称密钥认证协议 l25lPPT课件课件NEEDHAM-SCHROEDER对称密钥认证协议前提:Alice和Trent共享密钥KAT;Bob和Trent共享密钥KBT;目标:Alice和Bob希望建立一个新的共享密钥K。 Alice随机生成一次性随机数NA, 向Trent发送:Alice,Bob,NA; 【我要和Bob通信】 Trent随机生成K,向Alice发送:Bob, K, NA, Alice, KKBTKAT; 【给你们分配好了密钥】 Alice解密NA,验证她的nonce(表示仅使用一次的数字
16、),验证Bob的身份并发给Bob:Trent,Alice, KKBT; Bob解密并验证Alice的身份,生成随机数NB,向Alice发送:我是Bob! NBK; Alice向Bob发送:我是Alice! NB-1K.l26lPPT课件课件DENNING和SACCO对NEEDHAM-SCHROEDER对称密钥认证协议的攻击协议漏洞的原协议漏洞的原因是什么?因是什么?l27lPPT课件课件DENNING和SACCO对NEEDHAM-SCHROEDER对称密钥认证协议的改进利用时间戳代替利用时间戳代替挑战号,可以解挑战号,可以解决消息新鲜性的决消息新鲜性的漏洞。漏洞。l28lPPT课件课件6.2.
17、2 NEEDHAM-SCHROEDER公钥认证协议 目的: 使通信双方安全地交换两方彼此独立的秘密。 这与其它大多数公钥认证协议不同,它们的目的是通信双方安全地交换共享密钥。l29lPPT课件课件6.2.2 NEEDHAM-SCHROEDER公钥认证协议TrentTrent,我要和,我要和BobBob通信,通信,psps:AliceAlice给你给你BobBob的公钥的公钥你好,我是你好,我是AliceAliceTrentTrent,我要和,我要和BobBob通信,通信,psps:AliceAlice给你给你AliceAlice的公钥的公钥AliceAlice,你好,我是,你好,我是BobBo
18、b,这是你给我发的挑战,这是你给我发的挑战NaNa你好,我是你好,我是alicealice,这是你给我发的挑战,这是你给我发的挑战NbNbl30lPPT课件课件6.2.2 NEEDHAM-SCHROEDER公钥认证协议前提:假定Alice Bob Trent的密钥对分别为 (KA,KA-1) , (KB,KB-1),(KT, KT-1)目标:Alice和Bob建立一个新的共享密钥。Alice向Trent发送:Alice,Bob;Trent向Alice发送:Bob, KB KT-1;Alice验证Trent对Bob, KB的签字,随机生成她的nonce NA,并向Bob发送:Alice, NAK
19、B;Bob解密并验证Alice的身份,向Trent发送:Bob,Alice;Trent向Bob发送:Alice, KA KT-1;Bob验证Trent对Alice, KA的签字,随机生成他的nonce NB,并向Alice发送:NA, NBKA;Alice解密并向Bob发送:NBKB.l31lPPT课件课件LOWE对NEEDHAM-SCHROEDER公钥认证协议的攻击l32lPPT课件课件LOWE对NEEDHAM-SCHROEDER公钥认证协议的攻击 假设在这个系统中Malice是一个合法的主体,因此其他主体可能要和Malice建立标准会话。这个攻击过程中包括两次同时运行该协议。 第一次是Al
20、ice和Malice之间的运行(-、-、-步),结果是Alice和Malice建立了一个合法的会话。第二次是Malice假冒Alice和Bob之间的运行(-、-、-步),结果是Malice假冒Alice和Bob建立了一个假的会话。 我们分析以上攻击,Malice成功攻击的关键步骤是Alice无意地为他解密了Bob的nonce NB。当一个主体无意地为攻击者执行了一个密码运算时,该主体就被用作预言机(oracle)或提供了预言机服务(Oracle service)。因此密码算法和协议应该设计成即使用户为攻击者提供了预言服务也是安全的。l33lPPT课件课件修补NEEDHAM-SCHROEDER公
21、钥认证协议l34lPPT课件课件6.2.3 OTWAY-REES认证协议 目的: 用于在通信双方之间分配会话密钥。 特点: 简单实用,不需要应用复杂的同步时钟机制。l35lPPT课件课件6.2.3 OTWAY-REES认证协议前提:Trent作为可信第三方(TTP),Alice和Trent共享对称密钥KAT,Bob和 Trent共享对称密钥KBT;目标:Alice和Bob协商密钥KAB进行下一次会话。 Alice向Bob发送:M,Alice,Bob,NA,M,Alice,BobKAT; 【发起通信,请验证】 Bob向Trent发送:M,Alice,Bob,NA,M,Alice,BobKAT,N
22、B,M,Alice,BobKBT; 【验证一下Alice是不是Alice,我是Bob】 Trent解密并向Bob发送:M,NA, KABKAT,NB, KABKBT;【验证了你是bob,她是Alice,并且给你们分配了密钥】 Bob向Alice发送:M,NA,KABKAT.【我们通过了验证,把密钥给你】l36lPPT课件课件针对OTWAY-REES协议的“类型缺陷”型攻击“类型缺陷”型攻击的特点是利用认证协议实现时的固定格式对协议进行攻击。只是检测长度的合法性。假定在Otway-Rees认证协议中,M的长度是64比特,Alice和Bob的长度各为32比特,KAB的长度为128比特。攻击过程如下
23、(冒充Bob): 1. Alice向Malice(“Bob”)发送:M,Alice,Bob,NA, M, Alice, BobKAT; 【发给Bob的消息被Malice劫持 】 2. Malic向Trent发送:M, Alice, Malic, NA, M, Alice, BobKAT,NB, M, Alice, MalicKMT; 【红色的信息是否能验证通过是攻击成功的前提】 3. Trent解密并向Malic发送:M,NA, KABKAT,NB, KABKMT; 【你们验证通过给你们密钥】 4. Malice(“Bob”)向Alice发送:M,NA,KABKAT. 【你验证通过了,给你密钥
24、】l37lPPT课件课件针对OTWAY-REES协议的“类型缺陷”型攻击攻击者还可以冒充可信第三方Trent攻击Otway-Rees协议。攻击过程如下: 2. Bob向Malice(“Trent”)发送:M,Alice,Bob, NA, M, Alice, BobKAT,NB, M, Alice, BobKBT; 【发给Trent的信息被劫持】 3. Malice(“Trent”)向Bob发送:M,NA, M, Alice, BobKAT,NB, M, Alice, BobKBT; 【利用手头上的密文进行攻击】 4. Bob向Alice发送:M,NA, M, Alice, BobKAT.【现在
25、的密钥是什么?】Alice向Bob发送:M,Alice,Bob,NA,M,Alice,BobKAT;Bob向Trent发送:M,Alice,Bob,NA,M,Alice,BobKAT,NB,M,Alice,BobKBT; Trent解密并向Bob发送:M,NA, KABKAT,NB, KABKBT;Bob向Alice发送:M,NA,KABKAT.l38lPPT课件课件6.2.4 YAHALOM协议前提:Trent作为可信第三方(TTP),Alice和Trent共享对称密钥KAT,Bob和Trent共享对称密钥KBT;目标:Alice和Bob之间建立会话密钥KAB。 Alice向Bob发送:Al
展开阅读全文