野蛮模式详细报文过程
野蛮模式只用到三条信息
前两条消息用于①和②协商提议,交换Diffie-Hellma公共值、必需的辅助信息以及身份信息,并且消息②中还包括响应方发送身份信息供发起方认证,消息③用于响应方认证发起方
3个消息
Initiator Responder
----------- -----------
消息一:
HDR, SA, KE, Ni, IDii -->
消息二 :
<-- HDR, SA, KE, Nr, IDir, HASH_R
消息三:
HDR*, HASH_I -->
缺点:身份认证是采用明文方式, 具有不安全性(不推荐)推荐使用:模板方式
快速模式(QUICK MODE)
快速模式中,双方需要协商生成IPSec SA各项参数(包含可选参数PFS),并为IPSec SA生成认证/加密密钥。这在快速模式交换的前两条消息①和②中完成,消息②中还包括认证响应方。消息③为确认信息,通过确认发送方收到该阶段的消息②,验证响应者是否可以通信。
快速模式 :
HDR*, HASH(1), SA, Ni
[, KE ] [, IDci, IDcr ] -->
<-- HDR*, HASH(2), SA, Nr
[, KE ] [, IDci, IDcr ]
HDR*, HASH(3) -->
注:中括号是可选参数
HASH(1) = prf(SKEYID_a, M-ID | SA | Ni [ | KE ] [ | IDci | IDcr )
HASH(2) = prf(SKEYID_a, M-ID | Ni_b | SA | Nr [ | KE ] [ | IDci |IDcr )
HASH(3) = prf(SKEYID_a, 0 | M-ID | Ni_b | Nr_b)
如果参数里面 携带了KE参数了 可以开启PFS功能
PFS------完美向前兼容,解决衍生密钥被破解, 后面密钥不会被推导出,因为从新计算DH算法,重新得到SKEYIDd
完善的前向安全性(Perfect Forward Secrecy,PFS)。PFS是一种安全特性,指一个密钥被破解,并不影响其他密钥的安全性,因为这些密钥间没有派生关系。PFS是由DH算法保障的
短暂的一次性密钥系统称为“完美向前保密”(Perfect Forward Secrecy,PFS)如果加密系统中有一个秘密是所有对称密钥的衍生者(始祖),便不能认为那是一个“完美向前保密”的系统。在这种情况下,一旦破解了根密钥,便能拿到自它衍生的所有密钥,受那些密钥保护的全部数据都会曝光
在IPSEC里,PFS是通过在IPSEC SA协商阶段重新进行一次D-H交换来实现的
PFS是一种安全特性,指一个密钥被破解,并不影响其他密钥的安全性,因为这些密钥间没有派生关系。IPSec SA的密钥是从IKE SA的密钥导出的,由于一个IKE SA协商生成一对或多对IPSec SA,当IKE的密钥被窃取后,***者将可能收集到足够的信息来导出IPSec SA的密钥,PFS通过执行一次额外的DH交换,保证IPSec SA密钥的安全
KEYMAY--------用于保护感兴趣流(通信点) 真正用户保护实际数据流的
没有开启PFS
KEYMAT = prf(SKEYID_d, protocol | SPI | Ni_b | Nr_b)
开启PFS
KEYMAT = prf(SKEYID_d, g(qm)^xy | protocol | SPI | Ni_b | Nr_b)
注: 消息三是在加密的发送的
野蛮模式使用的场景
与主模式相比,野蛮模式减少了交换信息的数目,提高了协商的速度,但是没有对身份信息进行加密保护。虽然野蛮模式不提供身份保护,但它可以满足某些特定的网络环境需求
当IPSec隧道中存在NAT设备时,需要启用NAT穿越功能,而NAT转换会改变对等体的IP地址,由于野蛮模式不依赖于IP地址标识身份,使得采用预共享密钥验证方法时,NAT穿越只能在野蛮模式中实现
如果发起方的IP地址不固定或者无法预先知道,而双方都希望采用预共享密钥验证方法来创建IKE SA,则只能采用野蛮模
如果发起方已知响应方的策略,或者对响应者的策略有全面的了解,采用野蛮模式能够更快地创建IKE SA
注: 华为不推荐使用野蛮模式,因为野蛮也必须配置remote-address, 推荐使用模板方式
来源:51CTO
作者:Oldboy1key
链接:https://blog.51cto.com/13817711/2479231