密码综合协议—IPSec
发布网友
发布时间:2024-12-04 19:58
我来回答
共1个回答
热心网友
时间:2024-12-07 16:25
IPSec协议和SSL协议是两种综合的密码协议,它们支持多种密码技术为通信数据提供全面的安全保护,包括保密性、完整性校验、数据源身份鉴别和抗重放攻击等。IPSec工作在网络层,而SSL工作在应用层和传输层之间。IPSec通常用于两个子网之间的通信,称为站到站的通信;SSL通常用于终端到子网之间的通信,称为端到站的通信。
IPSec协议是国际组织IETF以RFC(Request For Comments)形式公布的一组IP密码协议集,其目的是将基于密码技术的安全机制引入IP协议中,实现网络层的通信安全。IPSec最初是为IPv6网络环境开发的,但首先在IPv4网络中得到广泛部署。
我国于2014年发布了密码行业标准GM/T0022-2014《IPSecVPN 技术规范》,对IPSec协议技术进行了规范。该标准主要参考了RFC4301等文档,并增加了对商用密码算法和双证书(签名证书和加密证书)的支持等内容。
IPSec协议实际上是一套协议集合,而不是一个单独的协议。它为网络层上的通信数据提供一整套的安全体系结构,包括IKE协议、认证头(Authentication Header,AH)协议、封装安全载荷(EncapsulatingSecurityPayload,ESP)协议和用于网络身份鉴别及加密的一些算法等。从工作流程上看,IPSec协议可分为两个环节:
1) IKE是第一个环节,完成通信双方的身份鉴别、确定通信时使用的IPSec安全策略和密钥;
2) 第二个环节是使用数据报文封装协议和IKE中协定的IPSec安全策略和密钥,实现对通信数据的安全传输。
IKE协议用于鉴别通信双方身份、创建安全联盟(Security Association,SA)、协商加密算法以及生成共享会话密钥等。其中ISAKMP是IKE的核心协议,定义了建立、协商、修改和删除SA的过程和报文格式,并定义了密钥交换数据和身份鉴别数据的载荷格式。ISAKMP的一个核心功能就是创建和维护SA。
SA是单向的,一个SA为单一通信方向上传输的数据提供一种安全服务,通信双方需要产生属于自己的SA。例如,同时提供认证和加密服务,那么应该创建多个SA来分别实现不同安全服务对数据的保护,即每个SA对应一个安全服务。
ISAKMP分为两个阶段:
第一阶段是主模式,通信双方建立一个ISAKMPSA,并实现双方的身份鉴别和密钥交换,得到工作密钥,该工作密钥用于保护第二阶段的协商过程;
第二阶段是快速模式,使用已建立的ISAKMPSA提供保护,实现通信双方IPSecSA的协商,确定通信双方IPSec安全策略和会话密钥。
第一阶段:主模式。主模式是一个身份保护的交换,其交换过程由6个消息组成。双方身份的鉴别采用数字证书的方式实现。
第1个消息(发起方向响应方发送,包含建议的密码算法)
第2个消息(响应方向发起方发送,确认使用何种密码算法并发送双证书)
第2个消息中的双证书将用于随后密钥交换时的数据加密和身份鉴别。
消息3和消息4(双方完成基于数字签名的身份鉴别,并通过交换数据得到为第二阶段【快速模式】提供保护的工作密钥。
消息3和4完成后,参与通信的双方利用Nonce载荷等交换数据经伪随机函数(Pseudo-RandomFunction,PRF)派生出基本密钥参数,并通过PRF用基本密钥参数派生出三个对称密钥,分别是用于产生会话密钥的密钥参数、用于验证完整性和数据源身份的工作密钥及用于加密的工作密钥。
消息5和6:发送方和响应方对前面的协商过程内容进行鉴别确认。这两个消息中传递的信息使用用于加密的工作密钥进行对称加密保护。为了检查交换内容,双方通过计算HMAC验证身份和协定的SA信息。
第二阶段:快速模式。在主模式建立了ISAKMPSA后,通信双方就可以使用快速模式了。快速模式用于协商建立通信时使用的IPSecSA,包括IPSec安全策略和会话密钥。会话密钥有两个,均为对称密钥,分别用于通信数据加密,以及完整性校验和数据源身份鉴别。
快速模式交换的数据由主模式协定的ISAKMPSA提供保护,即除了ISAKMP头外所有的载荷都是加密的,加密密钥选用用于加密的工作密钥。同时,在ISAKMP头之后会紧跟一个HMAC载荷,用于验证交换数据的完整性和数据源身份。
最后,将主模式消息3和4中派生出的用于产生会话密钥的密钥参数经PRF计算得到会话密钥。
AH协议提供数据源身份鉴别、完整性和抗重放等安全功能。不过,AH不提供任何保密性服务。
AH协议的主要作用是为整个IP数据报文(IP头和IP载荷)提供高强度完整性校验,最常用的MAC是HMAC,而HMAC对IP数据报文处理所用的密钥就是IKE协定的用于验证完整性和数据源身份的会话密钥。
和AH协议相比,ESP协议增加了对数据报文的加密功能(同时具备数据源身份鉴别、完整性和抗重放等安全功能),它可同时使用用于加密的会话密钥及用于验证完整性和数据源身份的会话密钥,来为数据提供全面保护。
ESP可单独使用,并同时选择保密性和数据源身份鉴别服务;当ESP和AH结合使用时,无须ESP提供数据源身份鉴别服务,而由AH提供该项安全服务。
AH和ESP协议可以工作在传输模式或隧道模式下。
传输模式一般用于端到端的应用场景,只有IP载荷部分被保护,对IP头不做改动;
隧道模式对整个IP数据报文提供加密和认证功能,并在此基础上添加新的IP头,一般用于创建虚拟专用网(VirtualPrivateNetworks,VPN)隧道链路。