正文
AH(认证头)和 ESP(封装安全载荷):是IPSec体系中的主体,其中定义了 协议的载荷头格式以及它们所能提供的服务,另外还定义了数据报的处理规则, 正是这两个安全协议为数据报提供了网络层的安全服务。两个协议在处理数据报 文时都需要根据确定的数据变换算法来对数据进行转换,以确保数据的安全,其中包括算法、密钥大小、算法程序以及算法专用的任何信息。
IKE(Internet密钥交换): IKE利用 ISAKMP语言来定义密钥交换,是对安 全服务进行协商的手段。IKE交换的最终结果是一个通过验证的密钥以及建立在 通信双方同意基础上的安全服务——亦即所谓的“IPSec安全关联”。
SA(安全关联):一套专门将安全服务/ 密钥和需要保护的通信数据联系起 来的方案。它保证了IPSec数据报封装及提取的正确性,同时将远程通信实体和 要求交换密钥的IPSec数据传输联系起来。即SA解决的是如何保护通信数据、保 护什么样的通信数据以及由谁来实行保护的问题。
策略:策略是一个非常重要的但又尚未成为标准的组件,它决定两个实体之 间是否能够通信; 如果允许通信,又采用什么样的数据处理算法。如果策略定义不当, 可能导致双方不能正常通信。与策略有关的问题分别是表示与实施。“表 示”负责策略的定义、存储和获取, “实施”强调的则是策略在实际通信中的应用。
1.1.2 IPSec 的工作原理
设计 IPSec是为了给 IPv4 和IPv6 数据提供高质量的、可互操作的、基于密码学的安全性。 IPSec通过使用两种通信安全协议来达到这些目标:认证头(AH) 和封装安全载荷(ESP),以及像 Internet密钥交换(IKE)协议这样的密钥管理 过程和协议来达到这些目标。
IP AH协议提供数据源认证,无连接的完整性, 以及一个可选的抗重放服务。ESP协议提供数据保密性,有限的数据流保密性,数据源认证,无连接的完整性 以及抗重放服务。对于AH和ESP都有两种操作模式:传输模式和隧道模式。IKE 协议用于协商 AH和ESP所使用的密码算法,并将算法所需要的密钥放在合适的位置。
IPSec所使用的协议被设计成与算法无关的。算法的选择在安全策略数据库(SPD)中指定。IPSec允许系统或网络的用户和管理员控制安全服务提供的粒度。 通过使用安全关联(SA), IPSec能够区分对不同数据流提供的安全服务。
IPSec本身是一个开放的体系,随着网络技术的进步和新的加密、验证算法 的出现,通过不断加入新的安全服务和特性,IPSec就可以满足未来对于信息安 全的需要。随着互联网络技术的不断进步,IPSec作为网络层安全协议,也是在 不断地改进和增加新的功能。其实在 IPSec的框架设计时就考虑过系统扩展问题。 例如在 ESP和 AH的文档中定义有协议、报头的格式以及它们提供的服务,还定义有数据报的处理规则,但是没有指定用来实现这些能力的具体数据处理算法。AH默认的、强制实施的加密MAC是HMA-CMD5和HMA-CSHA,在实施方案中其它的加密算法 DES- CBC、CAST- CBC以及 3DES-CBC等都可以作为加密器使用。
1.1.3 IPSec的模式
IPSec协议(包括 AH和ESP)既可以用来保护一个完整的IP 载荷, 也可以用来 保护某个 IP 载荷的上层协议。这两个方面的保护分别由IPSec两种不同的“模式” 来提供:传输模式和隧道模式。
传输模式:在传输模式中,IP头与上层协议头之间需插入一个特殊的IPSec 头。传输模式保护的是IP包的有效载荷或者说保护的是上层协议(如TCP、UDP 和 ICMP),如图 2.4所示。在通常情况下,传输模式只用于两台主机之间的安全通信。