VPN国密协议及SM2证书的鉴定方法

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

VPN国密协议及SM2证书的鉴定方法11.1概述由于使用国际标准IPSec协议和SSL协议可能存在的算法安全、协议安全等问题,国家密码管理局分别制定了《IPSecVPN技术规范》和《SSLVPN技术规范》两个国家技术标准,用于指导IPSec和SSLVPN产品的研制、检测和使用。目前市场上的VPN产品品种众多、鱼龙混杂,而真正实现将国密协议产品化的却很少,大多数都是挂羊头卖狗肉的形式,测试和鉴定是一套版本,正式产品又是另外一套版本。本文总结了IPSec/SSLVPN国密协议和SM2证书的常用鉴定方法,可用于有效鉴别是否采用了真正的国密协议和SM2算法的证书。1.2VPN国密协议的鉴定方法国密协议和国密算法除了由国密局检测中心鉴定外,目前唯一的鉴定的方法是通过抓包,查看隧道协商过程的参数。1.2.1SSLVPN国密协议鉴定1.看算法鉴定SSLVPN隧道协商算法是国密算法,在协商过程进行抓包,抓获的协商报文可以通过wireshark查看,由于国密局制定的《SSLVPN技术规范》对SSL协议的版本号修改为1.0,所以wireshark对其协议不能识别。需要用ultraEdit编辑原文件,将版本号从1.0改成3.1,才可以使用wireshake识别协议细节。1)将160100全文替换成160301;说明:16表示握手,将版本号1.0改成3.1;2)将140100全文替换成140301;说明:14表示Change-Cipher-Spec,将版本号1.0改成3.1;采用wireshake打开修改后的抓包文件,查看Server-Hello包最终协商出的密码套件。密码套件的参数为0xe001,代表的就是ECDHE-SM1-SM3。下图给出支持国密算法的SSL隧道协商Server-Hello报文。2说明:国密协议的密码套件列表如下表序号名称值1ECDHE_SM1_SM3{0xe0,0x01}2ECDHE_SM1_SHA1{0xe0,0x02}3ECC_SM1_SM3{0xe0,0x03}4ECC_SM1_SHA1{0xe0,0x04}5IBSDH_SM1_SM3{0xe0,0x05}6IBSDH_SM1_SHA1{0xe0,0x06}7IBC_SM1_SM3{0xe0,0x07}8IBC_SM1_SHA1{0xe0,0x08}9RSA_SM1_SM3{0xe0,0x09}10RSA_SM1_SHA1{0xe0,0x0a}便于对比,下面给出国际协议国际算法隧道协商时的密码套件,国际协议国际算法的报文不需要进行修改,直接查看ServerHello中的密码套件,并且密码套件中的算法可以直接识别,如下图,32.看协议鉴定SSLVPN隧道是否国密协议,在协商过程进行抓包,抓获的协商报文通过wireshark查看,如果SSL报文可以直接显示ClientHello和ServerHello,那说明是国际协议,不能识别ClientHello和ServerHello的协商报文,按照国密算法鉴定中的修改方法,对报文进行修改完后,再用wireshark查看,此时SSL报文能显示ClientHello和ServerHello的,就可以鉴定为国密协议。1.2.2IPSECVPN国密协议鉴定IPSECVPN国密协议鉴定,隧道协商成功过程,在两个设备中间进行抓包。1.看协议IPSECVPN国密协议鉴定需要查看协商过程的第三个包,国密协议的第三个包中载荷包含有PrivateUse载荷、Identification载荷,Certificate载荷,Signature载荷,这几个载荷在国际协议中是没有的。如下图分别给出国密协议和国际协议的第三个报文中的载荷信息。4下图为国际协议协商时,第三个包的内容:2.看算法国密算法的鉴定是通过查看协商过程的加密算法参数,查看第二个协商报文,第二个报文是协商成功的加密参数等信息。下图国密协议国密算法隧道协商过程的报文信息。5说明:国密协议国密算法中第一阶段加密算法属性值的定义加密算法允许的值为:名称描述值ENC_ALG_SM1SM1分组密码算法128HASH算法允许的值有:第一阶段密码杂凑算法属性值的定义名称描述值HASH_ALG_SHASHA-1密码杂凑算法2HASH_ALG_SM3SM3密码杂凑算法20下图国际协议中国际算法的隧道中报文的算法信息。61.3SM2证书的鉴定方法国密局规定,SM2证书中签名算法OID为1.2.156.10197.1.501,公钥算法的OID为1.2.840.10045.2.1。目前大部分的厂商都还不识别这两个算法,能识别的系统直接显示的是SM2算法。1.3.1.1采用Windows鉴定SM2证书在Windows系统上,可以通过查看证书属性中的签名算法和公钥算法来判断是否为SM2的证书。直接双击证书,安装到IE中,查看证书信息,XP系统2003server以下的操作系统目前都不识别此算法,直接显示的是ID号,如下图显示2003server系统的签名算法和公钥算法Win7以上的操作系统对ECC的算法可以简单识别,有些信息还是不能完全识别,ECC算法后面显示的长度为0bits,是因为不能完全识别的原因。下图给出Win7操作系统上显示的公钥算法。71.3.1.2通过抓包鉴定1)SSLVPN隧道协商中SM2证书鉴定SSLVPN隧道协商中SM2证书鉴定,可查看协商ServerHello报文,其中含有交互证书信息,查看证书签名算法OID,OID为1.2.156.10197.3.501可鉴定隧道协商使用SM2证书。8如果协商过程证书使用RSA算法的,报文中就可以直接显示RSA的签名算法,如下图给出国际协议国际算法的SSL隧道协商时,使用RSA证书信息。2)IPSECVPN隧道协商SM2证书鉴定IPSECVPN隧道协商SM2证书鉴定,由于第三四个报文是加密的,交互的证书信息无法查看,可以通过报文载荷中证书签名长度来进行鉴定,SM2证书签名的长度不是一个确定的值,其签名长度值在70左右。下图给出IPSECVPN隧道协商过程中SM2证书的信息。下图给出采用RSA证书进行协商的信息。91.4互通性鉴定相互采用国密局的技术规范进行互通。

1 / 10
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功