IPsec中IKE与ISAKMP过程分析(主模式-消息3)

文章详细分析了IPsecIKE协议的第一阶段主模式中的第三条消息,讨论了密钥交换、身份验证以及证书加密的过程。文中指出了在SM4加密算法应用中可能存在的问题,如加密后的长度不符、IDi加密后的长度非16字节倍数以及签名长度异常等,暗示了国密标准实现可能存在不合规之处。
摘要由CSDN通过智能技术生成

        IPsec中IKE与ISAKMP过程分析(主模式-消息1)_搞搞搞高傲的博客-CSDN博客

        IPsec中IKE与ISAKMP过程分析(主模式-消息2)_搞搞搞高傲的博客-CSDN博客

阶段目标过程消息
IKE第一阶段建立一个ISAKMP SA实现通信双发的身份鉴别和密钥交换,得到工作密钥

(1)HDR,SA

(2)HDR,SA,Cert_sig_r,Cert_enc_r

(3)HDR,XCHi,SIGi

(4)HDR,XCHr.SIGr

(5)HDR*,HASHi

(6)HDR*,HASHr

IKE第二阶段协商IPsec SA实现通信双方IPsec SA,得到ipsec安全策略和会话密钥

(1)HDR*,HASH(1),SA,Ni

(2)HDR*,HASH(2),SA,Nr

(3)HDR*,HASH(3)

        IKE第一阶段消息3由发起方发出,此时发起方具备对方公钥证书,就可以使用数字信封加密传递密钥交换参数了,同时发送本方公钥证书并附上签名以供身份鉴别使用。XCHi具体包括:Cert_enc_r加密的SKi(生产的临时密钥),SKi加密的参数Ni,SKi加密的IDi,Cert_sig_i和Cert_enc_i(发起方签名证书和加密证书,明文就可以了)。SIGi是发起方使用本方签名私钥对SKi、Ni、IDi、Cert_enc_i的签名,进行完整性和真实性保护。目前发起方具备对方公钥证书和本方生成的随机临时对称密钥,所以可以加密运算了。但还没有任何协商得到工作密钥,所以消息3还是明文传输的,只是部分内容加密。

        消息3报文结构如下,HDR头后面紧跟DE结构的XCHi并包含发起方的签名证书和加密证书(X.509证书结构),最后是SIGi签名。

      

        消息3的抓包数据,HDR不再赘述。Payload-Private use(128)是使用对方公钥加密的Ski。消息1和消息2之前协商对称加密算法为SM4,所以这里SKi应该是16字节。经过SM2公钥加密后长度应16+96=112字节,这里是117-4=113字节,相差一个字节,问题出在哪里?

        Payload-Nonce(10)是使用Ski对Ni对称加密,使用SM4算法,分组长度16字节,密钥16字节,Ni经过SM4算法加密后长度为32字节,是16字节的整数倍。Nonce随机数的长度一般为8-256字节之间。

        Payload-Identification(5)是使用SKi对IDi对称加密,使用SM4算法,IDi用户确认通信双方的身份。IDi加密后长度为44字节,长度不是16的倍数,问题出在哪里?ID type和Protocol ID取值都不符合GMT0022标准,看来这里的ipsec的国密标准实现的确有些问题。

         Payload-Ceitificate(6)是具体的数字证书,证书编码按标准应为4(签名证书)或者5(加密证书)。

         Payload-Signature(9)是对之前信息的签名,采用SM2算法,使用本方签名私钥,签名长度应为64字节,但抓包显示长度为71字节,为什么呢? 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

游鲦亭长

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值