第5章协议安全技术课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《第5章协议安全技术课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 协议 安全技术 课件
- 资源描述:
-
1、第第 5 章章协协 议议 安安 全全 技技 术术一一. .协议安全基础协议安全基础 1 .1 . 安 全安 全协议的概协议的概念念安全协议与安全协议与信息安全信息安全何谓安全协议何谓安全协议 ? 我们从一个有关安全协议的经典例子入手来介绍安全协议的基本念。在这个例子中,有两个用户Alice(简称A)和Bob,他们通过某种方式获得了对方可行的公钥。Alice希望和希望和Bob实现在不安全网络环境中的安全通信实现在不安全网络环境中的安全通信。 所谓安全通信,首先Alice要知道她所通信的对象一定是Bob。同样,Bob也要确信他所通信的对象是Alice。这种对通信实体身份的确认就是所谓的身份认证(身
2、份认证(Identification Authentication),因此Alice和Bob之间安全通信的第一个目标就是实现双向认证第一个目标就是实现双向认证。其次,还需确保通信过程中消息的机密性,即除了Alice和Bob之外,不应该有第三方知道他们正在交换的消息的内容。解决消息机密性最有效的方法就是加密。但是,由于Alice和Bob除了知道对方的公钥(即和)之外,并无其它有关机密的任何信息。当然,他们可以通过用对方的公钥来加密消息的方式来提供消息的机密性。但是,一来公钥加密算法加密速度慢,有可能影响通信性能,二来包含公钥的密文积累过多,可能造成密钥失窃的情况。为此,他们约定采用对称采用对称加
3、密算法(如加密算法(如DES)来实现消息的机密性)来实现消息的机密性。 但是,如何获得称加密算法所需要的加密和解密密钥又成为了一但是,如何获得称加密算法所需要的加密和解密密钥又成为了一个问题。简单的方法是,该密钥可以由个问题。简单的方法是,该密钥可以由Alice在本地生成后传给在本地生成后传给Bob,但是由于二人相隔千里,无法面对面交换,而其它方式(如电子邮但是由于二人相隔千里,无法面对面交换,而其它方式(如电子邮件、电话等)均不是理想和安全的交换方式。为此,他们希望通过件、电话等)均不是理想和安全的交换方式。为此,他们希望通过某种方式,能够在已知对方公钥的基础之上,提供加密密钥交换的某种方式
4、,能够在已知对方公钥的基础之上,提供加密密钥交换的功能。此即为安全通信的功能。此即为安全通信的第二个目标:在第二个目标:在Alice和和Bob之间实现共享之间实现共享秘密(分别记为和)的安全交换秘密(分别记为和)的安全交换。获得共享秘密和后,对称加密算。获得共享秘密和后,对称加密算法所需要的密钥可以通过某种约定的方式由和来生成。法所需要的密钥可以通过某种约定的方式由和来生成。 当然,当然,Alice和和Bob希望在网络上通过交换消息来实现。一个称之希望在网络上通过交换消息来实现。一个称之为为Needham-Schroeder公钥认证协议(简称公钥认证协议(简称NSPK协议)的安全协议可协议)的
5、安全协议可以用来实现以用来实现Alice和和Bob的目标。其的目标。其描述如协议描述如协议4-1-1所示。所示。NSPKNSPK协协议议协议主体就是协议的参与者(或用户)。其中圆括号中的数字表示消息的协议主体就是协议的参与者(或用户)。其中圆括号中的数字表示消息的顺序;符号顺序;符号“”表示消息的流向:表示消息的流向:M”表示表示Alice向向Bob发送消息发送消息M;MK表示用密钥表示用密钥k对消息对消息M进行加密;进行加密;A是是Alice的身份,的身份,Na和和Nb是新鲜的一次性是新鲜的一次性随机数。所谓新鲜的一次性随机数(随机数。所谓新鲜的一次性随机数(Nonce)或一次性随机数是指该
6、随机数)或一次性随机数是指该随机数在产生时间上很新,且用完后即被丢弃,不会重用。在产生时间上很新,且用完后即被丢弃,不会重用。 上述上述NSPK就是一个典型的安全协议(就是一个典型的安全协议(Security Protocol)。通过对)。通过对NSPK协议协议的分析,可得到如下结论:的分析,可得到如下结论:(1)NSPK是一个协议是一个协议定义定义5-1-1 协议(协议(Protocol):是两个或两个以上参与者之间为完成某项特殊任):是两个或两个以上参与者之间为完成某项特殊任务而采取的一系列步骤。务而采取的一系列步骤。NSPK本质上看就是一个网络协议,它必须具备网络协议的三要素。本质上看就
7、是一个网络协议,它必须具备网络协议的三要素。 (2)NSPK中用到了密码技术中用到了密码技术综合上述两个特点,可以得到安全协议的定义:综合上述两个特点,可以得到安全协议的定义:定义定义5-1-2 安全协议(安全协议(Security Protocol):是):是在消息交换和处理过程中使用了在消息交换和处理过程中使用了若干密码算法的协议若干密码算法的协议。安全协议的内涵是,安全协议是一个协议;安全协议的内涵是,安全协议是一个协议;安全协议必定涉及密码算法;安全安全协议必定涉及密码算法;安全协议目标是在密码算法的基础之上为网络安全提供一个解决方案协议目标是在密码算法的基础之上为网络安全提供一个解决
8、方案。 2 .安全协议的分类安全协议的分类(1)密钥交换协议)密钥交换协议密钥交换协议可分为两种情况:密钥交换协议可分为两种情况:密钥传输和密钥协商密钥传输和密钥协商。在密钥传输中,需交换的共享密钥其中的一个协议主在密钥传输中,需交换的共享密钥其中的一个协议主体生成,通过密钥交换协议传递给其它协议主体。而体生成,通过密钥交换协议传递给其它协议主体。而在密钥协商协议中,需交换的共享密钥不是有协议主在密钥协商协议中,需交换的共享密钥不是有协议主体单方面生成,而是协议主体在交换一个或多个共享体单方面生成,而是协议主体在交换一个或多个共享秘密信息之后,将这些秘密信息输入一个预定函数而秘密信息之后,将这
9、些秘密信息输入一个预定函数而得到。协议得到。协议5-1-2是一个典型的密钥传输协议的例子,是一个典型的密钥传输协议的例子,而协议而协议5-1-3则是一个密钥协商协议。则是一个密钥协商协议。协议协议5-1-25-1-2由由4 4条消息组成,需要交换的共享密钥由条消息组成,需要交换的共享密钥由BobBob生成,通生成,通过协议传递给过协议传递给AliceAlice。协议过程中用到了对称密码算法和认证,。协议过程中用到了对称密码算法和认证,使用一次性随机数的目的是为了防范重放攻击。使用一次性随机数的目的是为了防范重放攻击。Diffie-Hellman密钥交换协议是基于有限域中计算离散对数的困难性问题
10、之上密钥交换协议是基于有限域中计算离散对数的困难性问题之上的。离的。离散对数问题是指对任意正整数散对数问题是指对任意正整数x,计算,计算gx (mod p)是容易的;但是已知是容易的;但是已知g、Y、p和求和求x,使使Y=gx (mod p)是计算上几乎不可能的是计算上几乎不可能的 。协议。协议5-1-3由由3条消息组成,其中条消息组成,其中xa和和xb分别分别为为 Alice和和Bob选择的随机数。在消息交换之后,选择的随机数。在消息交换之后,Alice计算计算 。同理,。同理,Bob计算计算 ,因此实现了共享,因此实现了共享密钥(或秘密)的交换。密钥(或秘密)的交换。()baabxxx x
11、abkgg()ababxxx xabkgg 协议协议5-1-4和协议和协议5-1-5分别为基于公钥体制的单向和双向认证协议。分别为基于公钥体制的单向和双向认证协议。需要注意的是,双向认证协议一般不能等同于两个单向认证协议的简需要注意的是,双向认证协议一般不能等同于两个单向认证协议的简单叠加。单叠加。 认证协议按照哪些实体的身份需要进行认证可分为单向认证协议和双向认认证协议按照哪些实体的身份需要进行认证可分为单向认证协议和双向认证协议。在前者中,仅有一个实体的身份得以认证,而在后者中,两个实体的证协议。在前者中,仅有一个实体的身份得以认证,而在后者中,两个实体的身份均得到认证。认证协议一般需要使
12、用密码算法。身份均得到认证。认证协议一般需要使用密码算法。协议5-1-5由3条消息组成,其中、和是可选内容。协议的认证过程读者可结合有关知识自行分析。 协议协议5-1-6是是DH协议的一个改进版本,不仅实现了双向认证,而且实现了双向密协议的一个改进版本,不仅实现了双向认证,而且实现了双向密钥确认,因而属于认证与密钥交换协议。协议钥确认,因而属于认证与密钥交换协议。协议5-1-6由由3条消息组成,其中条消息组成,其中 。 由于采用了签名机制来保证消息的真实性,因此可以抵御由于采用了签名机制来保证消息的真实性,因此可以抵御许多针对许多针对DH协议的攻击。协议的攻击。 (m od)abx xabkg
13、p(3) 认证与密钥交换协议认证与密钥交换协议 与其它类型的安全协议相比,电子商务协议具有显著的特与其它类型的安全协议相比,电子商务协议具有显著的特殊性。在电子商务安全协议中,协议主体往往是交易的双方和殊性。在电子商务安全协议中,协议主体往往是交易的双方和金融机构,因此远比一般安全协议复杂。此外,除了一般协议金融机构,因此远比一般安全协议复杂。此外,除了一般协议中要求的机密性、完整性和不可抵赖性之外,电子商务安全协中要求的机密性、完整性和不可抵赖性之外,电子商务安全协议还特别强调公平性(议还特别强调公平性(Fairness)和匿名性()和匿名性(Anonymity)。前)。前者指协议应该保证交
14、易双方都不能通过损害对方的利益而得到者指协议应该保证交易双方都不能通过损害对方的利益而得到不应该得到的利益,后者指交易双方的身份应该尽量不为他人不应该得到的利益,后者指交易双方的身份应该尽量不为他人所知(有时甚至要求交易双方和金融机构也不能知道交易方的所知(有时甚至要求交易双方和金融机构也不能知道交易方的信息)。安全电子交易(信息)。安全电子交易(SET协议)是一个典型的电子商务安协议)是一个典型的电子商务安全协议,有关电子商务安全协议及全协议,有关电子商务安全协议及SET协议的有关内容可参照协议的有关内容可参照本书的其它章节。本书的其它章节。(4)电子商务安全协议)电子商务安全协议(1)仲裁
15、协议)仲裁协议 仲裁协议需要借助于一个称之为仲裁者的可信第三方(仲裁协议需要借助于一个称之为仲裁者的可信第三方(Trusted Third Party)来完成消息交换。可信意味着仲裁者在协议过程中并无既得利益,且于协)来完成消息交换。可信意味着仲裁者在协议过程中并无既得利益,且于协 议中的其它任何主体之间无厉害关系,因此协议主体也乐于信赖该仲裁者议中的其它任何主体之间无厉害关系,因此协议主体也乐于信赖该仲裁者 。在仲裁者的帮助下,协议主体之间完成协议过程。在仲裁者的帮助下,协议主体之间完成协议过程。2 .按照是否需要可信第三方分类按照是否需要可信第三方分类 仲裁协议原理示意图裁决协议原理示意图
16、如图裁决协议原理示意图如图5-1-3所示。所示。由图由图5-1-3可知,裁可知,裁决者决者Trent并不参与并不参与Alice和和Bob之间的交之间的交易,仅当易,仅当Bob没有收没有收到书款提交裁决请到书款提交裁决请求时,求时,Trent才参与才参与协议。如果交易顺协议。如果交易顺利完成,利完成,Trent在协在协议中无需承担任何议中无需承担任何工作,其负担大为工作,其负担大为减轻。减轻。(3)自动执行协议)自动执行协议自动执行协议不需要任何第三方(如仲裁者和裁决者)自动执行协议不需要任何第三方(如仲裁者和裁决者)的参与,在协议主体之间完成协议过程。由于自动执的参与,在协议主体之间完成协议过
17、程。由于自动执行协议本身就保证了协议的安全性(如机密性、公平性行协议本身就保证了协议的安全性(如机密性、公平性等),因此不需要仲裁者来协助完成协议,也不需要等),因此不需要仲裁者来协助完成协议,也不需要裁决者来解决争端,因此是比较好的一种安全协议。但裁决者来解决争端,因此是比较好的一种安全协议。但是,设计一个安全的自动执行协议具有很高的难度,是,设计一个安全的自动执行协议具有很高的难度,目前属于安全协议研究的热点问题。以上述目前属于安全协议研究的热点问题。以上述Alice向向Bob购书为例,要设计一个无仲裁者和裁决者的自动执行购书为例,要设计一个无仲裁者和裁决者的自动执行协议无疑是极为困难的事
18、情。协议无疑是极为困难的事情。1 .安全协议缺陷与安全协议模型安全协议缺陷与安全协议模型二二.协议安全的缺陷协议安全的缺陷 在实际应用中,要设计一个安全的协议是极为困在实际应用中,要设计一个安全的协议是极为困难的。以著名的难的。以著名的DH协议(协议协议(协议5-1-3)为例,由)为例,由于存在针对该协议的于存在针对该协议的“中间人攻击中间人攻击”,因此,因此DH协协议就不是一个绝对安全的协议。所谓中间人攻击,议就不是一个绝对安全的协议。所谓中间人攻击,就是攻击者作为第三者,插入到协议主体就是攻击者作为第三者,插入到协议主体Alice和和Bob的通信过程的中间,对对消息进行处理,从的通信过程的
19、中间,对对消息进行处理,从而破坏协议的正常执行。而破坏协议的正常执行。DH协议的中间人攻击如协议的中间人攻击如攻击攻击5-2-1所示。所示。在攻击在攻击5-2-1中,中,Malice作为作为中间人,截获中间人,截获Alice发送给发送给Bob的的gx,并用自己计算的,并用自己计算的 替代替代 后以后以Alice的名义转发的名义转发给给Bob。而。而Bob并不知晓中间并不知晓中间人人Malice的存在,因此以为的存在,因此以为是是Alice向自己发起密钥交换向自己发起密钥交换请求,因此发送自己的请求,因此发送自己的 给给Alice。Malice在此截获在此截获 ,用用 替代替代 后以后以Bob的
20、的名义转发给名义转发给Alice。按照协议。按照协议规则,规则,Alice和和Bob在协议终在协议终止后计算所得共享密钥分别止后计算所得共享密钥分别为为 和和 ,二人并不,二人并不知晓所共享的密钥是否相同,知晓所共享的密钥是否相同,且已为且已为Malice所拥有。所拥有。zxgaxgbxgbxgzxgbxgazx xgbzx xg 而作为中间人的而作为中间人的Malice,则同时获得了,则同时获得了Alice和和Bob所拥有的两个密钥所拥有的两个密钥(即和)。在随后的通信中,当(即和)。在随后的通信中,当Alice用加密消息时,用加密消息时,Malice可以用相同的可以用相同的解密,得到消息的
21、明文,并对该明文消息用加密后转发给解密,得到消息的明文,并对该明文消息用加密后转发给Bob。后者可以用。后者可以用自己拥有的解密,因此不能感知任何错误或异常。同样,对于自己拥有的解密,因此不能感知任何错误或异常。同样,对于Bob发送给发送给Alice的加密消息,的加密消息,Malice可以采用密钥实施欺骗功能。可以采用密钥实施欺骗功能。 因此,了解安全协议常见问题及其产生原因,有助于设计和验证协议因此,了解安全协议常见问题及其产生原因,有助于设计和验证协议的安全性。导致协议不安全的根本原因在于协议所运行环境的复杂性。该的安全性。导致协议不安全的根本原因在于协议所运行环境的复杂性。该复杂性的典型
22、代表是存在协议攻击者。协议攻击者(复杂性的典型代表是存在协议攻击者。协议攻击者(Protocol Attacker,以,以下简称攻击者)是指了解安全协议,并利用一定的方式对安全协议的过程下简称攻击者)是指了解安全协议,并利用一定的方式对安全协议的过程进行破坏,从而导致安全协议预定目标不能正常实现的通信实体。攻击者进行破坏,从而导致安全协议预定目标不能正常实现的通信实体。攻击者可以是协议的主体,也可以是协议主体之外的其它主体(如可以是协议的主体,也可以是协议主体之外的其它主体(如DH协议中的中协议中的中间人)。因此,攻击者可能存在与协议运行过程中,也可能存在于协议运间人)。因此,攻击者可能存在与
23、协议运行过程中,也可能存在于协议运行的环境中。图行的环境中。图5-2-1是攻击者与协议及其协议运行环境的关系示意图。是攻击者与协议及其协议运行环境的关系示意图。图5-2-1是攻击者与协议及其协议运行环境的关系示意图。是攻击者与协议及其协议运行环境的关系示意图。攻击者有被动和主动之分。被动攻击者通过窃听并截获协议消息。而主动攻击者有被动和主动之分。被动攻击者通过窃听并截获协议消息。而主动攻击者不仅可以截获消息,而且可以对其进行修改,甚至于它还可以伪装攻击者不仅可以截获消息,而且可以对其进行修改,甚至于它还可以伪装成协议主体与其它诚实协议主体通信。在考虑协议安全时,需要对攻击者成协议主体与其它诚实
24、协议主体通信。在考虑协议安全时,需要对攻击者的能力进行定义,即必须对攻击者进行建模,获得攻击者模型(的能力进行定义,即必须对攻击者进行建模,获得攻击者模型(attacker model或或adversary model)。一般而言,绝对安全的协议是极难设计和构)。一般而言,绝对安全的协议是极难设计和构造的,因此所谓协议的安全性,一般为在假定攻击者模型下,证明协议是造的,因此所谓协议的安全性,一般为在假定攻击者模型下,证明协议是安全的。为此,攻击者模型在协议安全分析占有举足轻重的地位和作用。安全的。为此,攻击者模型在协议安全分析占有举足轻重的地位和作用。(1)截获并延迟消息的发送;)截获并延迟消
25、息的发送;(2)截获并重新发送消息到任意接收者;)截获并重新发送消息到任意接收者;(3)截获并修改消息,并可转发给任意接收者;)截获并修改消息,并可转发给任意接收者;(4)可以产生新的消息(包括新鲜的消息)。)可以产生新的消息(包括新鲜的消息)。(5)可以对消息进行分离;)可以对消息进行分离;(6)可以对多个消息进行组合;)可以对多个消息进行组合;(7)知道密钥后可解密消息和重新加密消息;)知道密钥后可解密消息和重新加密消息;(8)可以查看和掌握协议相关的公用信息;)可以查看和掌握协议相关的公用信息;在众多攻击者模型中,在众多攻击者模型中,Dolev-Yao模型是公认较好的模型之一。在模型是公
展开阅读全文