国密浏览器如何完成SM2国密SSL协议协商
发布日期:2019-03-28国密浏览器需要遵循国密SSL协议规范GM/T 0024-2014。 GM/T 0024-2014没有单独规范 SSL协议的文件,而是在SSL VPN技术规范中定义了国密SSL协议。国密SSL协议(SSL VPN协议)包括握手协议、密码规格变更协议、报警协议、网关到网关协议和记录层协议。握手协议用于身份鉴别和安全参数协商;密码规格变更协议用于通知安全参数的变更;报警协议用于关闭通知或对错误进行报警;网关到网关协议用于建立网关和网关的传输层隧道;记录层协议用于传输数据的分段、压缩及解压缩、加密及解密、完整性校验等。
一、SSL握手协议的过程
国密SSL握手协议过程如下:
(1)交换Hello消息来协商密码套件,交换随机数,决定是否会话重用;
(2)交换必要的参数,协商预主密钥
(3)交换证书信息,用于验证对方
(4)使用预主密钥和交换的随机数生成主密钥
(5)向记录层提供安全参数
(6)验证双方计算的安全参数的一致性、握手过程的真实性和完整性
国密浏览器客户端发送Hello消息给服务端,服务端回应服务端Hello消息。国密浏览器客户端Hello和服务端hello用于在客户端和服务端进行基于ECC算法(或其他密码算法)的协商,以及确定安全传输能力,包括协议版本、会话表示、密码套件等属性,并产生和交换随机数。
在客户端hello和服务端hello之后是身份验证和密钥交换过程。包括服务端证书、服务端密钥交换,客户端证书、客户端密钥交换。在服务端发送完hello之后,发送自己的证书消息,服务端密钥交换消息。如果服务端需要验证客户端身份,则向客户端发送证书请求信息,客户端返回消息。
然后国密浏览器客户端发生密钥交换消息,协商密钥交换算法。接着客户端发送密码规格变更消息,然后客户端立即使用刚协商的算法和密钥,加密并发送握手结束消息。服务端回应密码规格变更消息,使用刚协商的算法和密钥加密并发送握手结束消息。至此,握手过程结束,服务端和客户端开始数据安全传输。
二、国密标准支持的密码套件
国密SSL协议规范要求,客户端(国密浏览器)所支持的密码套件列表,按照密码套件使用的优先级顺序排列,优先级最高的密码套件排在首位。每个密码套件包括一个密码交换算法、一个加密算法和一个校验算法。服务器端将在密码套件列表中选择一个与之匹配的密码套件,如果没有可匹配的密码套件,应返回握手失败报警消息并关闭连接。GMT 0024-2014国密标准支持的密码套件如下表所示。其中,实现ECC和ECDHE的算法为SM2,实现IBC和IBSDH的算法为SM9,RSA算法的使用应符合国家密码管理主管部门的要求。
三、国密浏览器展示国密SSL证书的效果
使用密信国密浏览器访问配置国密SSL证书的站点(国密SSL测试站点sm2test.ovss.cn),实现SM2 SSL证书的显示效果如下图。点击浏览器安全锁标识,详情中显示该连接使用GM/T 0024-2014(国密SM2),使用ECC_SM4_SM3进行加密,同时使用SM3进行讯息身份验证并使用SM2作为密钥交换机制。
密信浏览器(MeSince Browser)是沃通CA子公司密信技术独立研发的一款国密浏览器。密信浏览器(MeSince Browser)基于 Chromium开源项目开发,完整支持SM2/SM3/SM4等国产密码算法及安全协议,遵循国家标准技术规范,并兼容国际算法体系,同时支持国密算法SSL证书和国际算法SSL证书,满足国密算法使用需求,提供简洁快速的浏览体验。目前,密信浏览器已推出Windows版本(32位和64位),未来将逐步推出Linux、Mac及移动端版本。
密信国密浏览器的发布具有重要意义,密信国密浏览器与沃通提供的国密SM2 SSL证书、服务器国密算法支持模块等产品相结合,形成从客户端、服务器端到数字证书的国密算法全生态支持体系。
以上,是为大家分享的“国密浏览器如何完成SM2国密SSL协议协商”的全部内容,如果用户遇到的问题不能解决,可通过wosign官网客服寻求帮助,凡是选择wosign ssl证书的网站用户,wosign可提供免费一对一的ssl证书技术部署支持,免除后顾之忧。
相关资讯
沃通作为国内领先的SSL证书签发CA,早在2014年就已经开始了采用国密算法签发SM2 SSL证书的研究,并取得了可喜的研究成果。我们充分认识到国密SSL证书要达到实用和大量部署使用还需要相关系统的支持,如浏览器和服务器软件。同时,还要考虑到其通用性与全球性,即网站用户可能使用各种不同的浏览器和用户来自世界各地。所以,我们一直在持续研究基于国密算法实现https网站加密的完整解决方案。
SM2证书在Windows系统上,可以通过查看证书属性中的签名算法和公钥算法来判断是否为SM2的证书。直接双击证书,安装到IE中,查看证书信息,Win7以上的操作系统对ECC的算法可以简单识别,有些信息还是不能完全识别,ECC算法后面显示的长度为0bits,是因为不能完全识别的原因。
最新资讯
Windows\Apple\Mozilla\Android删除根证书的方法
标签推荐:数字证书申请 | 域名ssl证书 | https证书申请| 数字证书过期| 网站证书安装| 可靠的ssl证书| 小程序证书| ca认证电子签名| 微软代码签名| android数字签名| java代码签名| ssl证书部署| 时间戳技术| 电子签名技术| https证书配置| 谷歌浏览器证书| tomcat数字证书| openssl漏洞| ECC加密算法| 服务器SSL证书| 链路层劫持| 物联网安全技术| 火狐插件签名证书