IPsec入门篇讲解(第二篇)(IPsec功能)

网友投稿 510 2022-10-08


IPsec入门篇讲解(第二篇)(IPsec功能)

安全联盟(SA)

IKE协议

IKEV1版本

主模式过程

主模式详细报文过程

1 2报文过程

 1-2消息用于参数的协商(明文) 协商内容:(加密算法 验证算法 验证方式 DH组 有效期)

Initiator(发起者) Responder(响应方) ============================================================================================ HDR, SA --> <-- HDR, SA Ci SA Ci Cr SA

 HDR ISAKMP头部 Ci Cr 代表发起方和响应方的SPI 所对应的命令行如下

ike proposal 10 encryption-algorithm aes-192 ---加密算法 authentication-algorithm md5 ---认证算法 integrity-algorithm hmac-sha2-256 ---完整性算法

检查:

[FW1]display ike proposal verbose 11:42:46 2019/08/04 IKE Proposal Priority 10: ------------------------------------------------------------------ Authentication Method : PRE_SHARED ---身份验证方法 Authentication Algorithm : MD5 ---认证算法 Encryption Algorithm : 192-AES ---加密算法 Diffie-Hellman Group : DH-Group2 ---DH算法 Sa Duration(Seconds) : 86400 ---SA持续时间 Integrity Algorithm : HMAC-SHA2-256 ---完整性算法 ------------------------------------------------------------------

注意:安全提议是有默认配置,可以修改DH算法组可以修改

[FW1-ike-proposal-10]dh ? group1 Indicate the 768-bit Diffie-Hellman group group14 Indicate the 2048-bit Diffie-Hellman group group15 Indicate the 3072-bit Diffie-Hellman group group16 Indicate the 4096-bit Diffie-Hellman group group2 Indicate the 1024-bit Diffie-Hellman group,default group5 Indicate the 1536-bit Diffie-Hellman group

3 4报文过程

 3-4消息用于密钥素材的交换及产生密钥 如果1 2两个消息不协商出DH组的3 4消息中的KE也不会有

Ci Cr , KE, Ni --> <-- Ci Cr , KE, Nr

 KE key exchange 密钥交换  Ni Nr 随机数 通过前面1 2的DH算法算出公共的K值  通过K值推导SKEYID(种子密钥) SKEYID分为两种情况 预共享密钥方式(PSK)和采用数字证书方式(在1 2两个报文中进行协商) 在预共享密钥认证中,认证字作为一个输入来产生密钥,通信双方采用共享的密钥对报文进行Hash计算,判断双方的计算结果是否相同。如果相同,则认证通过;否则认证失败 在数字证书认证中,通信双方使用CA证书进行数字证书合法性验证,双方各有自己的公钥(网络上传输)和私钥(自己持有)。发送方对原始报文进行Hash计算,并用自己的私钥对报文计算结果进行加密,生成数字签名。接收方使用发送方的公钥对数字签名进行解密,并对报文进行Hash计算,判断计算结果与解密后的结果是否相同。如果相同,则认证通过;否则认证失败 在数字信封认证中,发送方首先随机产生一个对称密钥,使用接收方的公钥对此对称密钥进行加密(被公钥加密的对称密钥称为数字信封),发送方用对称密钥加密报文,同时用自己的私钥生成数字签名。接收方用自己的私钥解密数字信封得到对称密钥,再用对称密钥解密报文,同时根据发送方的公钥对数字签名进行解密,验证发送方的数字签名是否正确。如果正确,则认证通过;否则认证失败 采用预共享密钥的方式(1-2消息中已经协商)

SKEYID = prf(pre-shared-key, Ni_b | Nr_b)

 采用数字证书 (1-2消息中已经协商)

SKEYID = prf(K,Ni_b | Nr_b)

DH(DIFFIE-HELLMAN)密钥交换算法

SKEYID_d = prf(SKEYID, K | Ci | Cr | 0)

推导因子prf(伪随机函数) SKEYID_a:ISAKMP消息完整性验证密钥——谁也别想篡改ISAKMP消息了,只要消息稍有改动,响应端完整性检查就会发现!

SKEYID_a = prf(SKEYID, SKEYID_d | K | Ci | Cr | 1)

用于验证的密钥 SKEYID_e:ISAKMP消息加密密钥——再也别想窃取ISAKMP消息了,窃取了也看不懂!

SKEYID_e = prf(SKEYID, SKEYID_a | K | Ci | Cr | 2)

5 6报文过程

5-6消息用于身份认证 预共享密钥方式身份认证

HDR*, IDii, HASH_I --> <-- HDR*, IDir, HASH_R

HDR *------代表加密 ID 身份标识,一般使用IP地址

HASH_I = prf(SKEYID, K | Ci | Cr | SAi | IDii_b ) HASH_R = prf(SKEYID, K| Ci | SAi | IDir_b )

数字证书方式的身份认证

HDR*, IDii, [ CERT, ] SIG_I --> <-- HDR*, IDir, [ CERT, ] SIG_R


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:(慕课网)腾讯大牛亲授 Web 前后端漏洞分析与防御技巧 笔记(慕课网和腾讯课堂)
下一篇:基于Spring Boot 排除自动配置的4个方法
相关文章

 发表评论

暂时没有评论,来抢沙发吧~