3 IPSec 协议的操作模式
IPSec 协议有两种操作模式:传输模式和隧道模式。SA 中指定了协议的操作模式。
在传输模式下,AH 或ESP 被插入到IP 头之后但在所有传输层协议之前,或所有其他IPSec
协议之前。在隧道模式下,AH 或ESP 插在原始IP 头之前,另外生成一个新头放到AH 或ESP 之
前。不同安全协议在传输模式和隧道模式下的数据封装形式(传输协议以TCP 为例)如下图所示:
图1-1 安全协议数据封装格式
从安全性来讲,隧道模式优于传输模式。它可以完全地对原始IP 数据报进行验证和加密;
此外,可以使用IPSec 对等体的IP 地址来隐藏客户机的IP 地址。从性能来讲,隧道模式比传输
模式占用更多带宽,因为它有一个额外的IP 头。因此,到底使用哪种模式需要在安全性和性能
间进行权衡。
4 验证算法与加密算法
4.1 验证算法
AH 和ESP 都能够对IP 报文的完整性进行验证,以判别报文在传输过程中是否被篡改。验证
算法的实现主要是通过杂凑函数,杂凑函数是一种能够接受任意长的消息输入,并产生固定长度
输出的算法,该输出称为消息摘要。IPSec 对等体计算摘要,如果两个摘要是相同的,则表示报
文是完整未经篡改的。一般来说IPSec 使用两种验证算法: