版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、12 TCP/IP是一组通信协议的缩写是一组通信协议的缩写 ISO/OSI模型及其与模型及其与TCP/IP的关系的关系3 互联网上每个接口必须有一个唯一的互联网地址互联网上每个接口必须有一个唯一的互联网地址(IP地地址址),长,长32bit,层次结构层次结构 32bit写成写成4个十进制数,点分十进制表示法个十进制数,点分十进制表示法4 当应用程序用当应用程序用TCP/IP传送数据时,数据送入协议栈,传送数据时,数据送入协议栈,通过各层,直到被当作一串比特流送入网络。通过各层,直到被当作一串比特流送入网络。5 6 7 初始化连接初始化连接:三次握手,确保双方做好传输准备,:三次握手,确保双方做
2、好传输准备,统一序列号。统一序列号。SYN, SEQ = x主机 BSYN, ACK, SEQ = y, ACK= x 1ACK, SEQ = x + 1, ACK = y 1确认确认主机 A连接请求89 TCP假定只要接受到的数据包含有正确的序列号假定只要接受到的数据包含有正确的序列号就认为数据是可以接受的。一旦连接建立,服务就认为数据是可以接受的。一旦连接建立,服务器无法确定进入的数据包是否来自真实的机器。器无法确定进入的数据包是否来自真实的机器。10在发送在发送IPIP数据包之前,对数据包之前,对IPIP包的一些重要部分进包的一些重要部分进行加密和验证计算,由接收端对这部分进行解密行加密
3、和验证计算,由接收端对这部分进行解密和验证,从而实现安全传输的目的。和验证,从而实现安全传输的目的。IPSecIPSec实现了网络层的加密和认证,它在网络体实现了网络层的加密和认证,它在网络体系结构中提供了一种端到端的安全解决方案。系结构中提供了一种端到端的安全解决方案。 11IPSecIPSec提供三种不同的形式来保护通过公有或私提供三种不同的形式来保护通过公有或私有有IPIP网络传送的私有数据。网络传送的私有数据。(1)(1)认证:通过认证可以确定所接受的数据与所认证:通过认证可以确定所接受的数据与所发送的数据是否一致,同时可以确定申请发送者发送的数据是否一致,同时可以确定申请发送者在实际
4、上是真实的,还是伪装的发送者;在实际上是真实的,还是伪装的发送者;(2)(2)数据完整性验证:通过验证,保证数据在从数据完整性验证:通过验证,保证数据在从发送者到接收者的传送过程中没有被修改;发送者到接收者的传送过程中没有被修改;(3)(3)保密:使相应的接收者能获取发送的真正内保密:使相应的接收者能获取发送的真正内容,而无关的接收者无法获知数据的真正内容。容,而无关的接收者无法获知数据的真正内容。12IPSec由三个基本要素来提供以上三种保护形式由三个基本要素来提供以上三种保护形式验证头验证头(AH)封装安全载荷封装安全载荷(ESP)互联网密钥管理协议互联网密钥管理协议(IKMP)。 认证协
5、议头和安全加载封装是一套协议中两个不认证协议头和安全加载封装是一套协议中两个不同的机制。所以,它们可以被单独使用,也可以同的机制。所以,它们可以被单独使用,也可以被组合起来使用,可以满足不同的安全要求。被组合起来使用,可以满足不同的安全要求。13帧头帧头应用数据应用数据应用数据应用数据应用数据应用数据应用数据应用数据TCP头头TCP头头TCP头头IP头头IP头头应用层应用层传输层传输层网络层网络层数据链路层数据链路层没有没有IPSec的数据封装的数据封装 14应用层应用层传输层传输层网络层网络层IPSec封装封装数 据 链 路数 据 链 路层层帧头帧头IPSec头头应用数据应用数据应用数据应用
6、数据应用数据应用数据应用数据应用数据TCP头头TCP头头TCP头头IP头头IP头头应用数据应用数据TCP头头IP头头IPSec头头IPSecn尾尾IPSec尾尾有有IPSecIPSec数据封装数据封装15体系结构体系结构安全封装载荷安全封装载荷(ESP)协议协议(ESP)协议协议认证头认证头(AH)协议协议认证算法认证算法加密算法加密算法解释域解释域DOI密钥管理密钥管理16各个模块的功能是:各个模块的功能是:体系结构:覆盖了定义体系结构:覆盖了定义IPSecIPSec技术的一般性概念、安全需求、技术的一般性概念、安全需求、定义和机制定义和机制安全封装载荷安全封装载荷( (ESP)ESP):是
7、插入是插入IPIP数据包内的一个协议头,具有数据包内的一个协议头,具有为为IPIP数据包提供机密性、数据完整性、数据源认证和抗重传数据包提供机密性、数据完整性、数据源认证和抗重传攻击等功能。攻击等功能。认证头认证头( (AH)AH):是插入是插入IPIP数据包内的一个协议头,具有为数据包内的一个协议头,具有为IPIP数数据包提供数据完整性、数据源认证和抗重传攻击等功能。据包提供数据完整性、数据源认证和抗重传攻击等功能。加密算法:一组文档描述了怎样将不同的加密算法用于加密算法:一组文档描述了怎样将不同的加密算法用于ESPESP。认证算法:一组文档描述了怎样将不同的认证算法用于认证算法:一组文档描
8、述了怎样将不同的认证算法用于AHAH和和ESPESP可选的鉴别选项。可选的鉴别选项。密钥管理:描述密钥管理机制的文档。密钥管理:描述密钥管理机制的文档。解释域解释域DOIDOI:包含了其他文档需要的为了彼此间相互联系的一包含了其他文档需要的为了彼此间相互联系的一些值。这些值包括经过检验的加密和认证算法的标识以及操些值。这些值包括经过检验的加密和认证算法的标识以及操作参数,例如密钥的生存期。作参数,例如密钥的生存期。17服务类型服务类型AHAHESP(ESP(只加只加密密) )ESP(ESP(加密并加密并认证认证) )访问控制访问控制Y YY YY Y无连接完整性无连接完整性Y YN NY Y数
9、据源的鉴别数据源的鉴别Y YN NY Y拒绝重放攻击拒绝重放攻击Y YY YY Y保密性保密性N NY YY Y有限的通信流保有限的通信流保密性密性N NY YY Y181 1IPSecIPSec传输模式主要对传输模式主要对IPIP包的部分信息提供安全包的部分信息提供安全保护,即对保护,即对IPIP数据包的上层协议数据提供安全保数据包的上层协议数据提供安全保护。护。当采用当采用AHAH传输模式时,主要为传输模式时,主要为IPIP数据包提供认证数据包提供认证保护;而采用保护;而采用ESPESP传输模式时,主要对传输模式时,主要对IPIP数据包的数据包的上层信息提供加密和认证双重保护。这是一种端上
10、层信息提供加密和认证双重保护。这是一种端到端的安全,到端的安全,IPSecIPSec在端点执行加密认证、处理,在端点执行加密认证、处理,在安全通道上传输,因此主机必须配置在安全通道上传输,因此主机必须配置IPSecIPSec。19首部首部有效载荷有效载荷IP 数据报数据报 传输网络传输网络首部首部有效载荷有效载荷IP 数据报数据报 20IPSecIPSec隧道模式对整个隧道模式对整个IPIP数据包提供保护。其基数据包提供保护。其基本原理是构造新的本原理是构造新的IPIP数据包数据包当采用当采用AHAH遂道模式时,主要为整个遂道模式时,主要为整个IPIP数据包提数据包提供认证保护供认证保护( (
11、可变字段除外可变字段除外) );当采用;当采用ESPESP遂道模遂道模式模式时,主要为整个式模式时,主要为整个IPIP数据包提供加密和认证数据包提供加密和认证双重保护。双重保护。这时,对这时,对IPSecIPSec的处理是在安全网关执行的,因的处理是在安全网关执行的,因此两端主机不必知道此两端主机不必知道IPSecIPSec协议的存在。协议的存在。21首部首部有 效 载有 效 载荷荷首部首部有 效 载有 效 载荷荷首部首部有 效 载有 效 载荷荷内部内部IP数据报数据报外首部外首部(新首部新首部)传输网传输网络络首部首部有 效 载有 效 载荷荷内部内部IP数据报数据报内部内部IP数据报数据报内
12、部内部IP数据报数据报 安全网关安全网关安全网关安全网关外首部外首部(新首部新首部)22为为IPIP数据包提供数据完整性、数据源认证和抗重数据包提供数据完整性、数据源认证和抗重传攻击等功能。传攻击等功能。数据完整性是通过消息认证码产生的校验值来保证数据完整性是通过消息认证码产生的校验值来保证的;的;数据源认证是通过在数据包中包含一个将要被认证数据源认证是通过在数据包中包含一个将要被认证的共享秘密或密钥来保证的;的共享秘密或密钥来保证的;抗重传攻击是通过使用了一个经认证的序列号来实抗重传攻击是通过使用了一个经认证的序列号来实现的。现的。23AHAH为为IPIP数据包提供了数据完整性和认证服务。数
13、据包提供了数据完整性和认证服务。注意注意AHAH并不提供保密性保护,因此当数据通过一并不提供保密性保护,因此当数据通过一个网络的时候仍然可以被看到。个网络的时候仍然可以被看到。下一个首部下一个首部载荷长度载荷长度保留保留安全参数索引安全参数索引( (SPI)SPI)序列号序列号认证数据认证数据ICV(ICV(长度可变长度可变) )24ICVICV是消息认证码是消息认证码( (message authentication codemessage authentication code,MAC)MAC)的一种截断版本,它是用的一种截断版本,它是用MACMAC算法计算的。算法计算的。只使用前只使用前
14、9696bitbit。ICVICV使用下面的域来计算:使用下面的域来计算:在传输中不变化的在传输中不变化的IPIP头域,或者其值在到达使用该头域,或者其值在到达使用该AHAH关联的关联的端点时可以预测的端点时可以预测的IPIP头域。头域。AHAH首部,为了在源和目的地进行计算,必须将认证数据域置首部,为了在源和目的地进行计算,必须将认证数据域置为为0 0。所有的上层协议数据,假定它们在传输中不变化所有的上层协议数据,假定它们在传输中不变化( (例如例如TCPTCP报报文段或隧道方式的一个内部文段或隧道方式的一个内部IPIP分组分组) )。25重放攻击指的是攻击者获得了认证分组的副本,并重放攻击
15、指的是攻击者获得了认证分组的副本,并且以后将它传输到它的目的地址。收到了重复的认且以后将它传输到它的目的地址。收到了重复的认证证IPIP分组可能会以某种方式中断服务或者出现其他分组可能会以某种方式中断服务或者出现其他一些意想不到的后果。序号字段是设计用来阻挡这一些意想不到的后果。序号字段是设计用来阻挡这种攻击的。种攻击的。IPSecIPSec数据包专门使用了一个序列号,以及一个数据包专门使用了一个序列号,以及一个“滑动滑动”的接收窗口。的接收窗口。因为因为IPIP是无连接、不可靠的服务,协议不能保证分是无连接、不可靠的服务,协议不能保证分组的按序交付,也不能保证所有的分组都会被交付,组的按序交
16、付,也不能保证所有的分组都会被交付,因此,因此,IPSecIPSec认证文档规定接收者应该实现大小为认证文档规定接收者应该实现大小为W W的接收窗口。的接收窗口。2627窗口最左端对应于窗口起始位置的序列号,窗口的右边界则窗口最左端对应于窗口起始位置的序列号,窗口的右边界则代表目前已经收到的合法分组的最高序号。对于任何已经正代表目前已经收到的合法分组的最高序号。对于任何已经正确接收的确接收的( (即经过了正确鉴别的即经过了正确鉴别的) )其序号处于其序号处于N-W+1N-W+1到到N N范围之范围之间的分组,窗口的相应插槽被标记。当收到一个分组时,按间的分组,窗口的相应插槽被标记。当收到一个分
17、组时,按照如下步骤进行进入处理:照如下步骤进行进入处理: 如果收到的分组落在窗口之内并且是新的,就进如果收到的分组落在窗口之内并且是新的,就进行行MACMAC检查。如果分组被鉴别,就对窗口的相应插槽做检查。如果分组被鉴别,就对窗口的相应插槽做标记。标记。 如果收到的分组落在窗口的右边并且是新的,就如果收到的分组落在窗口的右边并且是新的,就进行进行MACMAC检查。如果分组被检查。如果分组被鉴别鉴别,那么窗口就向前走,那么窗口就向前走,使得该序号成为窗口的右边界,并对窗口的相应插槽使得该序号成为窗口的右边界,并对窗口的相应插槽做标记。做标记。 如果收到的分组落在窗口的左边,或者鉴别失败,如果收到
18、的分组落在窗口的左边,或者鉴别失败,就丢弃该分组。就丢弃该分组。28AHAH服务可以以两种方式来使用:传输服务可以以两种方式来使用:传输( (transport)transport)模式和隧道模式和隧道( (tunnel)tunnel)模式。模式。AHAH的实际位置决定于的实际位置决定于使用何种模式以及使用何种模式以及AHAH是应用于一个是应用于一个IPv4IPv4还是一个还是一个IPv6IPv6数据包。数据包。29原始的原始的IP头头(任何选项任何选项)TCP数据数据原始的原始的IP头头(任何选项任何选项)TCP数据数据AH(载荷载荷长度长度, SPI, 序序号号, MAC)标准标准IPv4
19、数据报数据报 传输模式下的传输模式下的IPv4IPv4认证范围:所有不变的域认证范围:所有不变的域30原始的原始的IP头头(任何选项任何选项)TCP数据数据扩展项头扩展项头(如果有如果有)标准的标准的IPv6数据报数据报 传输模式下的传输模式下的IPv6 原始的原始的IP头头(任何选项任何选项)目的目的选项选项数据数据逐跃点、目的逐跃点、目的、路由、分段、路由、分段TCPA H ( 载 荷载 荷 长 度长 度 , SPI, 序号序号, MAC)认证范围:所有不变的域认证范围:所有不变的域31原始的原始的IP头头(任何选项任何选项)TCP数据数据AH(载荷载荷长度长度, SPI, 序号序号, M
20、AC)新的新的IP头头(任何选项任何选项) 隧道模式下的隧道模式下的IPv4 隧道模式下的隧道模式下的IPv6 认证范围:所有不变的域认证范围:所有不变的域新的新的IP头头(任何选项任何选项)扩展项头扩展项头(如果有如果有)数据数据扩展项头扩展项头(如果有如果有)TCPAH(载荷载荷长度长度, SPI, 序号序号, MAC)认证范围:所有不变的域认证范围:所有不变的域32ESPESP主要支持主要支持IPIP数据包的机密性,它将需要保护数据包的机密性,它将需要保护的用户数据进行加密后再封装到新的的用户数据进行加密后再封装到新的IPIP数据包中。数据包中。另外另外ESPESP也可提供认证服务,但与
21、也可提供认证服务,但与AHAH相比,二者的相比,二者的认证范围不同,认证范围不同,ESPESP只认证只认证ESPESP头之后的信息,比头之后的信息,比AHAH认证的范围要小。认证的范围要小。33 34ESPESP服务对有效载荷数据、填充、填充长度和下服务对有效载荷数据、填充、填充长度和下一个首部字段加密。下面是一些已定义的算法:一个首部字段加密。下面是一些已定义的算法:l l 三密钥三重三密钥三重DESDESl l RC5RC5l l IDEAIDEAl l CASTCASTl l BlowfishBlowfishl l 三密钥三重三密钥三重IDEAIDEA35ESP尾尾TCP数据数据ESP头
22、头(SPI,序序列号列号)源源IP头头E S P 认认证证ESP尾尾TCP数据数据ESP头头(SPI,序列号序列号)源源IP头头E S P认证认证目 的目 的选项选项逐跃点、目逐跃点、目的、路由、的、路由、分段分段传输模式下的传输模式下的IPv4 ESP 传输模式下的传输模式下的IPv6 ESP 被加密的被加密的 被加密的被加密的 被认证的被认证的 被认证的被认证的 36传输方式的操作总结如下:传输方式的操作总结如下:在源站,由在源站,由ESPESP尾部加上整个传输级的报文段组成的尾部加上整个传输级的报文段组成的数据块被加密,这个数据块的明文被其密文所代替,以数据块被加密,这个数据块的明文被其
23、密文所代替,以形成用于传输的形成用于传输的IPIP分组。如果认证选项被选中,还要加分组。如果认证选项被选中,还要加上认证。上认证。然后分组被路由到目的站。每个中间路由器都要检查然后分组被路由到目的站。每个中间路由器都要检查和处理和处理IPIP首部加上任何明文的首部加上任何明文的IPIP扩展首部,但是不需要扩展首部,但是不需要检查密文。检查密文。目的结点检查和处理目的结点检查和处理IPIP首部加上任何明文的首部加上任何明文的IPIP扩展首扩展首部。然后,在部。然后,在ESPESP首部的首部的SPISPI基础上目的结点对分组的其基础上目的结点对分组的其他部分进行解密以恢复明文的传输层报文段。他部分
24、进行解密以恢复明文的传输层报文段。传输方式操作为使用它的任何应用程序提供了机密性,传输方式操作为使用它的任何应用程序提供了机密性,因此避免了在每一个单独的应用程序中实现机密性,这因此避免了在每一个单独的应用程序中实现机密性,这种方式的操作也是相当有效的,几乎没有增加种方式的操作也是相当有效的,几乎没有增加IPIP分组的分组的总长度。总长度。37ESP尾尾TCP数据数据ESP头头(SPI,序列号序列号)原原IP头头ESP认认证证新新IP头头ESP尾尾TCP数据数据ESP头头(SPI,序列号序列号)原原IP头头E S P认证认证新新IP头头原扩原扩展头展头新扩新扩展头展头隧道模式下的隧道模式下的I
25、Pv4 ESP 隧道模式下的隧道模式下的IPv6 ESP 被加密的被加密的 被认证的被认证的 被加密的被加密的 被认证的被认证的 38 当利用当利用IPSecIPSec进行通信时,采用哪种认证算法、进行通信时,采用哪种认证算法、加密算法以及采用什么密钥都是事先协商好的。加密算法以及采用什么密钥都是事先协商好的。一旦通信双方取得一致后,在通信期间将共享一旦通信双方取得一致后,在通信期间将共享这些安全参数信息来进行安全信息传输。这些安全参数信息来进行安全信息传输。 为了使通信双方的认证算法、加密算法保持一为了使通信双方的认证算法、加密算法保持一致,相互间建立的联系被称为安全关联致,相互间建立的联系
26、被称为安全关联(Security Association,SA)。 也就是在使用也就是在使用AHAH或或ESPESP之前,先要从源主机到目之前,先要从源主机到目的主机建立一条网络层的逻辑连接。的主机建立一条网络层的逻辑连接。 SA是构成是构成IPSec的基础。的基础。39 安全关联是单向的,意味着每一对通信系统连安全关联是单向的,意味着每一对通信系统连接都至少需要两个安全关联。一个是从接都至少需要两个安全关联。一个是从A到到B,一个是从一个是从B到到A。 如如A需要有一个需要有一个SA(out)用来处理外发数据包;用来处理外发数据包;一个一个SA(in)用来处理进入数据包。用来处理进入数据包。
27、 如如B需要有需要有SB(out) 和和SB(in) SA(out) 和和SB(in)共享一个加密参数共享一个加密参数 SA(in) 和和SB(out)共享一个加密参数共享一个加密参数 因此对外发和进入的因此对外发和进入的SA分别需要维护一张单独分别需要维护一张单独的数据表的数据表40 一个一个SASA由三个参数来惟一地标识:由三个参数来惟一地标识: l l 安全参数索引安全参数索引( (SPI)SPI):该比特串惟一地标识一该比特串惟一地标识一个与某一安全协议个与某一安全协议( (例如例如AHAH或者置或者置SP)SP)相关的安相关的安全关联。全关联。SPISPI位于位于AHAH和和ESPE
28、SP头内,因此接收系统头内,因此接收系统可以挑选出用于处理接收到的可以挑选出用于处理接收到的I IP P数据包的数据包的SASA。 l l 目的目的IPIP地址:该参数表明该地址:该参数表明该SASA的目的的目的IPIP地址。地址。端点可能会是最终用户系统或者一个如网关或端点可能会是最终用户系统或者一个如网关或防火墙这样的网络系统。尽管从概念上讲该参防火墙这样的网络系统。尽管从概念上讲该参数可以是任意地址类型数可以是任意地址类型( (多播、广播等多播、广播等) ),但是,但是目前它只能是一个单播地址。目前它只能是一个单播地址。 l l 安全协议标识符:该参数表明本关联是一个安全协议标识符:该参
29、数表明本关联是一个AH安全关联还是一个安全关联还是一个ESP安全关联。安全关联。 41 IPSecIPSec实施方案最终会构建一个实施方案最终会构建一个SASA数据库数据库( (SADB)SADB),由它来维护由它来维护IPSecIPSec协议用来保障数据包安全的协议用来保障数据包安全的SASA记录。记录。 在在IPSecIPSec保护保护IPIP报文之前,必须先建立一个安全报文之前,必须先建立一个安全联 盟 。 安 全 联 盟 可 以 手 工 或 动 态 建 立 。联 盟 。 安 全 联 盟 可 以 手 工 或 动 态 建 立 。InternetInternet密钥交换密钥交换( (IKE)
30、IKE)用于动态建立安全联盟,用于动态建立安全联盟,IKEIKE代表代表IPSecIPSec对对SASA进行协商,并对进行协商,并对SADBSADB进行填进行填充。充。42 安全策略数据库安全策略数据库(Security Policy Database,SPD)和安全关联数据库和安全关联数据库(Security Association Database,SAD)。 SPD指定了决定所有输入或者输出的指定了决定所有输入或者输出的IP通信部通信部署的策略。署的策略。 SAD包含有与当前活动的安全关联相关的参数。包含有与当前活动的安全关联相关的参数。 安全关联是双方所协商的安全策略的一种描述。安全关
31、联是双方所协商的安全策略的一种描述。 43 安全策略决定了为一个包提供的安全服务安全策略决定了为一个包提供的安全服务 根据根据“选择符选择符”对数据库进行检索,选择符从对数据库进行检索,选择符从网络层和传输层头提取出来网络层和传输层头提取出来 IP包的外出和进入都需要查询包的外出和进入都需要查询SPD,以判断为以判断为这个包提供的安全服务有哪些。这个包提供的安全服务有哪些。44目的目的IPIP地址:这可以是一个单一的地址:这可以是一个单一的IPIP地址、一个地址地址、一个地址列表或者是一个通配的地址。多个地址和通配地址用于列表或者是一个通配的地址。多个地址和通配地址用于多于一个的源系统共享同一
32、个多于一个的源系统共享同一个SASA的情况的情况( (例如,位于一个例如,位于一个网关之后网关之后) )。源源IPIP地址:这可以是一个单一的地址:这可以是一个单一的IPIP地址、一个地址范地址、一个地址范围或者是一个通配的地址。围或者是一个通配的地址。名称:这可以是一个名称:这可以是一个X X500500特定名称特定名称( (DN)DN)或者是一个或者是一个来自操作系统的用户标识符。来自操作系统的用户标识符。传输层协议:这可以从传输层协议:这可以从IPv4IPv4协议域或者协议域或者IPv6IPv6的下一个的下一个头域中得到。它可以是一个单独的协议号码、一个协议头域中得到。它可以是一个单独的
33、协议号码、一个协议号的列表,或者是一个协议号码范围。号的列表,或者是一个协议号码范围。源端口和目的端口:这些端口可以是单个的源端口和目的端口:这些端口可以是单个的UDPUDP或或TCPTCP端口值,真正应用协议的便是这些端口。如果端口不能端口值,真正应用协议的便是这些端口。如果端口不能访问,便需要使用通配符。访问,便需要使用通配符。数据敏感级:这被用于提供信息流安全的系统数据敏感级:这被用于提供信息流安全的系统( (例如例如无分级的或者秘密的无分级的或者秘密的) )。45 下面的参数用于定义一个下面的参数用于定义一个SASA:序列号计数器:用于生成位于序列号计数器:用于生成位于AHAH或者或者
34、ESPESP头中的序列头中的序列号域的一个号域的一个3232比特值。比特值。序列号计数器溢出:这是一个标志。序列号计数器溢出:这是一个标志。抗重放窗口:一个抗重放窗口:一个3232位计数器,用于决定一个输入的位计数器,用于决定一个输入的AH AH 或者或者ESPESP数据包是否是一个重放包。数据包是否是一个重放包。AHAH信息:与使用信息:与使用AHAH有关的参数有关的参数( (如认证算法、密钥和如认证算法、密钥和密钥生存期密钥生存期) )。ESPESP信息:与使用信息:与使用ESPESP有关的参数有关的参数( (如加密算法、密钥、如加密算法、密钥、密钥生存期和初始化值密钥生存期和初始化值)
35、)。46 SASA的生存期:一个时间间隔或者字节计数,的生存期:一个时间间隔或者字节计数,用于指定一个用于指定一个SASA使用的持续时间。当该持续时使用的持续时间。当该持续时间已结束时,必须用一个新的间已结束时,必须用一个新的SA(SA(以及新的以及新的SPl)SPl)来替代该来替代该SASA,或者终止该或者终止该SASA,同时该参数中包同时该参数中包括一个应该采取何种动作的标识。括一个应该采取何种动作的标识。 IPSecIPSec协议模式:指定对于该协议模式:指定对于该SASA的通信流所使的通信流所使用的操作模式用的操作模式( (传输模式、隧道模式,或通配模传输模式、隧道模式,或通配模式式)
36、 )。47 IPSecIPSec处理分为两类:外出处理和进入处理。处理分为两类:外出处理和进入处理。外出处理过程外出处理过程中,传输层的数据包流进中,传输层的数据包流进IPIP层,层,IPIP层检索层检索SPDSPD数据库,判断应为这个包提供哪些安全数据库,判断应为这个包提供哪些安全服务。需要输入服务。需要输入SPDSPD的是前面已经讨论过的的是前面已经讨论过的“选择选择符符”。48 至于至于SPDSPD检索的输出,则可能有下面几种情况:检索的输出,则可能有下面几种情况: 丢弃这个包。此时包不会得以处理,只是简单地丢丢弃这个包。此时包不会得以处理,只是简单地丢掉。掉。 绕过安全服务。在这种情况
37、下,绕过安全服务。在这种情况下,IPIP层会在载荷内增层会在载荷内增添添IPIP头,然后分发头,然后分发IPIP包。包。 应用安全服务。在这种情况下,假如已建立了一个应用安全服务。在这种情况下,假如已建立了一个SASA,就会返回指向这个就会返回指向这个SASA的指针;的指针; 假如尚未建立假如尚未建立SASA,就会调用就会调用IKEIKE,将这个将这个SASA建立起来。建立起来。如果如果SASA已经建立,已经建立,SPDSPD内便会包含指向内便会包含指向SASA或或SASA集束的一集束的一个指针个指针( (具体由策略决定具体由策略决定) )。如果策略的输出规定强行。如果策略的输出规定强行将将I
38、PSecIPSec应用于数据包,那么在应用于数据包,那么在SASA正式建立起来之前,正式建立起来之前,包是不会传送出去的。包是不会传送出去的。4950 进入处理进入处理有别于外出处理。如果收到的有别于外出处理。如果收到的IPSec包包是一个分段,必须把它保留下来,直到这个包是一个分段,必须把它保留下来,直到这个包的其他部分收完为止。的其他部分收完为止。 收到收到IPIP包后,包后,假如包内根本没有包含假如包内根本没有包含IPSecIPSec头头,那么安全层就会对策略进行检查,判断该如何那么安全层就会对策略进行检查,判断该如何对这个包进行处理。它会用选择符字段来检索对这个包进行处理。它会用选择符
39、字段来检索SPDSPD数据库。策略的输出可能是下述三种选择:数据库。策略的输出可能是下述三种选择:丢弃、绕过或应用。如果策略的输出是丢弃,丢弃、绕过或应用。如果策略的输出是丢弃,那么数据包就会被丢弃;如果是应用,但那么数据包就会被丢弃;如果是应用,但SASA没没有建立,包同样会被丢弃。否则,就将包传递有建立,包同样会被丢弃。否则,就将包传递给下一层,作进一步的处理。给下一层,作进一步的处理。51如果如果IPIP包中包含了包中包含了IPSecIPSec头头,就会由,就会由IPSecIPSec层对这层对这个包进行处理。个包进行处理。IPSecIPSec层会从层会从IPIP数据报中提取出数据报中提取
40、出SPISPI、源地址和目源地址和目标地址。它会利用标地址。它会利用 字元组字元组对对SADBSADB数据库进行检索。数据库进行检索。协议值要么是协议值要么是AHAH,要么是要么是ESPESP。根据这个协议值,根据这个协议值,这个包的处理要么由这个包的处理要么由AHAH层,要么由层,要么由ESPESP层进行。层进行。协议载荷处理完之后,需要查询策略,对载荷进协议载荷处理完之后,需要查询策略,对载荷进行检验。选择符则用作获取策略的依据。验证过行检验。选择符则用作获取策略的依据。验证过程包括:检查程包括:检查SASA的使用是否得当的使用是否得当( (也就是说,也就是说,SASA中中的源和目标地址是
41、否与策略对应的源和目标地址是否与策略对应) ),以及,以及SASA保护的保护的传送层协议是否和要求的相符。传送层协议是否和要求的相符。52使用一个单一的使用一个单一的SA,AH或者或者ESP来实现来实现IP数据包的安数据包的安全。然而,并没有限制使用多个全。然而,并没有限制使用多个SA,这通常称为这通常称为SA束束(bundle)。SA集结的顺序是通过安全策略来定义的。集结的顺序是通过安全策略来定义的。 IPSecIPSec体系结构文档列出了体系结构文档列出了IPSecIPSec兼容的主机或安全网关兼容的主机或安全网关必须支持的四种必须支持的四种SASA组合的例子。组合的例子。这些例子如下图所
42、示,图中,每种情况的下面部分表示这些例子如下图所示,图中,每种情况的下面部分表示的是元素的物理连接;上面部分通过一个或多个嵌套的是元素的物理连接;上面部分通过一个或多个嵌套SASA表示了逻辑连接。每个表示了逻辑连接。每个SASA可以是可以是AHAH或者或者ESPESP。对于主机到对于主机到主机的主机的SASA,可以是传输模式或者隧道模式;其他情况则可以是传输模式或者隧道模式;其他情况则必须是隧道模式。必须是隧道模式。53端到端主机之间应用端到端主机之间应用IPSecIPSec该情况中,对实现该情况中,对实现IPSecIPSec的两个端系统提供安全业务,两个端系的两个端系统提供安全业务,两个端系
43、统必须有共享的秘密密钥。此时统必须有共享的秘密密钥。此时SASA的组合方式可能有:的组合方式可能有:传输模式下的传输模式下的AHAH;传输模式下的传输模式下的ESPESP;AHAH后跟后跟ESPESP,两者都处于传输模式下(即两者都处于传输模式下(即AHAHSASA在在ESPESPSASA的内的内部);部);上面三种情况的任一种在隧道模式下的上面三种情况的任一种在隧道模式下的AH或或ESP里面里面 Internet内部网内部网内部网内部网一个或多个一个或多个SA安全网关安全网关安全网关安全网关主机主机主机主机54原始的原始的IP头头(任何选项任何选项)TCP数据数据AH(载荷载荷长度长度, S
44、PI, 序序号号, MAC)ESP尾尾TCP数据数据ESP头头(SPI,序序列号列号)源源IP头头E S P 认认证证ESP尾尾TCP数据数据ESP头头(SPI,序列号序列号)源源IP头头E S P 认认证证AH(载荷载荷长度长度, S P I , 序 号序 号 , MAC)原始的原始的IP头头(任何选项任何选项)TCP数据数据AH(载荷载荷长度长度, SPI, 序号序号, MAC)新的新的IP头头(任何选项任何选项)55 网关到网关之间实现网关到网关之间实现IPSec IPSec 该情况中,两个主机未实现该情况中,两个主机未实现IPSecIPSec,因此仅在两因此仅在两个网关之间提供安全业务
45、。此时仅需要一个隧个网关之间提供安全业务。此时仅需要一个隧道模式下的道模式下的SASA,可用于支持可用于支持AHAH、ESPESP或具有认证或具有认证选择的选择的ESPESP。由于由于IPSecIPSec安全业务作用于整个内安全业务作用于整个内部数据报,因此不需要使用嵌套的隧道模式。部数据报,因此不需要使用嵌套的隧道模式。Internet内部网内部网内部网内部网隧道隧道 SA安全网关安全网关安全网关安全网关主机主机主机主机56 上面和的组合上面和的组合 该情况在情况的基础上增加了端到端的安全性。在情况和该情况在情况的基础上增加了端到端的安全性。在情况和情况中讨论的组合在这里同样允许。网关到网关
46、的隧道为终情况中讨论的组合在这里同样允许。网关到网关的隧道为终端系统之间的所有通信量提供了鉴别服务或者机密性,或者两端系统之间的所有通信量提供了鉴别服务或者机密性,或者两种服务都提供。当网关到网关的隧道是种服务都提供。当网关到网关的隧道是ESPESP时,它还提供了有限时,它还提供了有限形式的通信量机密性。通过端到端的形式的通信量机密性。通过端到端的SASA,单独的主机可以为给单独的主机可以为给定的应用程序或给定的用户实现任何需要的补充定的应用程序或给定的用户实现任何需要的补充IPSecIPSec。Internet内部网内部网内部网内部网隧道隧道 SA安全网关安全网关安全网关安全网关主机主机主机
47、主机57 远程终端支持远程终端支持 该情况表示一个具有该情况表示一个具有IPSecIPSec的远程主机通过的远程主机通过InternetInternet到到达某一组织的防火墙,然后访问防火墙后面的本地主达某一组织的防火墙,然后访问防火墙后面的本地主机(如服务器或工作站)。此时在远程主机和防火墙机(如服务器或工作站)。此时在远程主机和防火墙之间只要求使用隧道模式,而在远程主机和本地主机之间只要求使用隧道模式,而在远程主机和本地主机之间,则使用一到两个之间,则使用一到两个SASA。Internet内部网内部网隧道隧道 SA一个或多个一个或多个 SA安全网关安全网关主机主机主机主机58 必要性必要性
48、 方式:方式: 手工手工 自动:通过使用自动的密钥管理协议,可以创建自动:通过使用自动的密钥管理协议,可以创建SA所需要的密钥。对于自动管理,可以使用各种各样所需要的密钥。对于自动管理,可以使用各种各样的协议,但是的协议,但是IKE已经成为了当前的工业标准。已经成为了当前的工业标准。 59默认的默认的IPSecIPSec密钥协商方式是密钥协商方式是InternetInternet密钥交换密钥交换协议(即协议(即Internet Key ExchangeInternet Key Exchange,简记作简记作IKEIKE)。)。IKEIKE允许两个实体通过一系列消息得到安全通信允许两个实体通过一
49、系列消息得到安全通信的会话密钥,的会话密钥,IKEIKE交换为通信双方的消息提供认证交换为通信双方的消息提供认证和(或)加密,并且针对洪流、重放、欺骗等攻和(或)加密,并且针对洪流、重放、欺骗等攻击提供不同程度保护。击提供不同程度保护。IKEIKE依赖于公私钥加密技术和密码散列函数等机依赖于公私钥加密技术和密码散列函数等机制制IKEIKE是一个使用已知的是一个使用已知的UDPUDP端口(端口为端口(端口为500500)的)的应用层协议。应用层协议。60ESPIKEAHISKMPOakleySKEME密 钥 交 换 模密 钥 交 换 模式式两个阶段两个阶段框架基础框架基础密钥交换协议密钥交换协议
50、密 钥 共 享 和密 钥 共 享 和更新更新61SKEMESKEME是一种密钥交换协议,是一种密钥交换协议,SKEMESKEME提供了多种模提供了多种模式的密钥交换。式的密钥交换。SKEMESKEME的基本模式中,提供了基于公开密钥的密的基本模式中,提供了基于公开密钥的密钥交换和钥交换和Diffie-HellmanDiffie-Hellman密钥交换。密钥交换。它还包含了对它还包含了对KerberosKerberos模型密钥交换的支持。模型密钥交换的支持。62SKEMESKEME协议的执行过程包含协议的执行过程包含四个主要阶段四个主要阶段:cookiecookie阶段、共享阶段、交换阶段和认证
51、阶段。阶段、共享阶段、交换阶段和认证阶段。(1)(1)cookiecookie阶段的目的是为了防止拒绝服务攻击。阶段的目的是为了防止拒绝服务攻击。 (2)(2)共享阶段的目的是为了建立共享阶段的目的是为了建立会话密钥会话密钥K Kabab前提:需要通信双方都拥有对方的公共密钥。前提:需要通信双方都拥有对方的公共密钥。在这个阶段,在这个阶段,A A和和B B先用对方的公共密钥把随机取得先用对方的公共密钥把随机取得的半个密钥加密,然后,用单向哈希函数把这两个的半个密钥加密,然后,用单向哈希函数把这两个半个密钥合并成一个半个密钥合并成一个k kabab。如下所示。如下所示。 :ABAB:KKa ak
52、kB B :BABA:KKb bkkA A最后,最后,A A和和B B用事先协商好的一个单向哈希函数计算用事先协商好的一个单向哈希函数计算得到得到K Kabab=h(K=h(Ka a,K,Kb b) )。63SKEMESKEME协议的执行过程包含四个主要阶段:协议的执行过程包含四个主要阶段:cookiecookie阶段、共享阶段、交换阶段和认证阶段。阶段、共享阶段、交换阶段和认证阶段。(3)(3)在支持在支持Diffie-HellmanDiffie-Hellman密钥交换的密钥交换的SKEMESKEME模式模式中,交换阶段用来中,交换阶段用来进行密钥交换进行密钥交换。假设假设A A选择了一个随
53、机数选择了一个随机数X Xa a作为作为Diffiee-HellmanDiffiee-Hellman的的指数,指数,B B选择了另一个随机数选择了另一个随机数X Xb b。A A和和B B就可以通过下面的过程进行就可以通过下面的过程进行Diffie-HellmanDiffie-Hellman密密钥交换,并得到共享密钥钥交换,并得到共享密钥g gXaXbXaXb(mod p)(mod p)。 :ABAB:g gXaXa(mod p)(mod p) :BABA:g gXbXb (mod p) (mod p)在不支持在不支持Diffie-HellmanDiffie-Hellman密钥交换的密钥交换的
54、SKEMESKEME模式中,模式中,交换阶段用来交换随机产生的即时时间值。交换阶段用来交换随机产生的即时时间值。64(4)(4)协议的执行过程中,双方的验证在认证阶段协议的执行过程中,双方的验证在认证阶段完成,这个阶段会用到共享阶段产生的密钥完成,这个阶段会用到共享阶段产生的密钥K Kabab来来验证从交换阶段得到的验证从交换阶段得到的Diffie-HellmanDiffie-Hellman指数或是指数或是即时时间值。如果交换阶段执行了即时时间值。如果交换阶段执行了DiffieDiffieHellmanHellman密钥交换,认证阶段可以表示如下。密钥交换,认证阶段可以表示如下。 :ABAB:
55、gKKabab :BABA:gKKabab如果没有执行如果没有执行Diffie-HellmanDiffie-Hellman密钥交换,密钥交换,Diffie-HellmanDiffie-Hellman指数就被即时时间值所代替。指数就被即时时间值所代替。65SKEMESKEME支持四种模式支持四种模式,即:基本模式、只有共享,即:基本模式、只有共享模式、预先共享密钥模式和快速刷新模式。模式、预先共享密钥模式和快速刷新模式。基本模式基本模式包括了前面介绍的全部四个阶段,因此,基本模式包括了前面介绍的全部四个阶段,因此,基本模式下的下的SKEMESKEME支持完美向前保密支持完美向前保密( (Perf
56、ect Forward Perfect Forward SecrecySecrecy,PFS)PFS)。PFSPFS指的是保证将来的通信受到密码学加密的保护,指的是保证将来的通信受到密码学加密的保护,即使是长期使用的加密密钥被别人发现和破译,后即使是长期使用的加密密钥被别人发现和破译,后来即时交换产生密钥,它的保密性也不会遭到危害,来即时交换产生密钥,它的保密性也不会遭到危害,同时传输数据的保密性也不会被破坏。同时传输数据的保密性也不会被破坏。只有共享模式只有共享模式支持公开密钥加密法,但不支持支持公开密钥加密法,但不支持Diffie-HellmanDiffie-Hellman密钥交换技术。因
57、此,这种模式密钥交换技术。因此,这种模式下的下的SKEMESKEME不支持完美向前保密。不支持完美向前保密。66SKEMESKEME支持四种模式支持四种模式,即:基本模式、只有共享,即:基本模式、只有共享模式、预先共享密钥模式和快速刷新模式。模式、预先共享密钥模式和快速刷新模式。预先共享密钥模式预先共享密钥模式中,中,SKEMESKEME没有使用公开密钥没有使用公开密钥加密法。只进行了加密法。只进行了Diffie-HellmanDiffie-Hellman密钥交换。在密钥交换。在这种模式中,协议认为通信双方已经有了共享密这种模式中,协议认为通信双方已经有了共享密钥,它们用这个共享密钥来产生后来
58、新的会话密钥,它们用这个共享密钥来产生后来新的会话密钥和进行密钥刷新。前面曾经提到,这个共享密钥和进行密钥刷新。前面曾经提到,这个共享密钥是带外传送的,可以通过人工安装,也可以从钥是带外传送的,可以通过人工安装,也可以从KDCKDC获得。获得。快速刷新模式快速刷新模式是最快速的是最快速的SKEMESKEME协议。它既不使协议。它既不使用公开密钥加密法,也不使用用公开密钥加密法,也不使用Diffie-HellmanDiffie-Hellman密密钥交换。在这个模式中,共享阶段完全被省略,钥交换。在这个模式中,共享阶段完全被省略,交换阶段和验证阶段也只是交换即时时间。交换阶段和验证阶段也只是交换即
59、时时间。67OakleyOakley协议具有以下协议具有以下5 5个特性:个特性:它采用称为它采用称为cookiecookie的程序机制来防止阻塞攻击。的程序机制来防止阻塞攻击。它可使通信双方协商它可使通信双方协商Diffie-HellmanDiffie-Hellman密钥交换所用的密钥交换所用的群,即协商所需的全局参数。群,即协商所需的全局参数。使用一次性随机数防止重放攻击。使用一次性随机数防止重放攻击。可使通信双方交换可使通信双方交换Diffie-HellmanDiffie-Hellman公开密钥的值。公开密钥的值。对对Diffie-HellmanDiffie-Hellman交换过程加以认
60、证以防止中间人攻交换过程加以认证以防止中间人攻击。击。以以OakleyOakley为基础,为基础,IKEIKE借鉴了不同模式的思想,在每种借鉴了不同模式的思想,在每种模式中,模式中,OakleyOakley会进行不同的通过验证的密钥交换。会进行不同的通过验证的密钥交换。68IKEIKE的报文格式就是建立在的报文格式就是建立在ISAKMPISAKMP的框架下的。的框架下的。ISAKMPISAKMP定义了双方如何沟通定义了双方如何沟通如何构建双方用以沟通的消息如何构建双方用以沟通的消息保障通信安全所需的状态交换保障通信安全所需的状态交换提供了对对方的身份进行验证的方法提供了对对方的身份进行验证的方
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 生态文明示范区引领美丽中国风
- 中考语文复习备考精彩演讲稿范文
- 《口腔功能性矫正器》课件
- 《焊接工艺补充扩展》课件
- 工程转租合同模板
- ppp合同解除合同范例
- 东莞冲压件加工合同范例
- 履带农机租赁合同范例
- 亳州农机托管合同范例
- 个人对公劳务合同模板
- 中国铁路国际有限公司招聘考试试卷2022
- 电子政务概论-形考任务5(在线测试权重20%)-国开-参考资料
- 古代小说戏曲专题-形考任务2-国开-参考资料
- 构美-空间形态设计学习通课后章节答案期末考试题库2023年
- 产万吨高密度聚乙烯聚合工段工艺设计
- 医院关键财务管理岗位定期轮换与交接制度
- [推荐考试复习资料]2020R1快开门式压力容器操作考试及R1快开门式压力容器操作实操考试视频
- 计算机网络课程设计(校园网)
- 2021年中国上市公司市值管理研究报告
- 解读《中小学教育惩戒规则(试行)》精讲PPT教学课件
- 新课标高考俄语答题卡
评论
0/150
提交评论