跳至主要內容

国密证书


国密证书

介绍

国密SSL指的是采用国密算法(SM1/2/3/4等),符合国密标准(GM/T0024-2014和GB/T38636-2020)的安全传输协议。简而言之,国密SSL就是SSL/TLS协议的国密版本。

等级保护2.0明确规定,要求对网络通信中的报文或会话过程全文加密(三级)。其中的密码技术,主要技术标准之一就是国密SSL。

国密SSL实际使用中,需要国密证书、国密U盾、国密网关/服务器、国密浏览器等互相配合,才能形成完整的落地方案。

国密证书是双证书,包含签名证书/签名密钥,加密证书/加密密钥共4个文件。

单证书和双证书介绍

  • 通常情况下,服务器会部署一张证书,用于签名和加密,这就是所谓的单证书:

    • 签名时,服务器使用自己的私钥加密信息的摘要(签名),客户端使用服务器的公钥(包含在证书中)进行解密,对比该摘要是否正确,若正确,则客户端就确定了服务器的身份,即验签成功。
    • 加密时,服务器和客户端协商出会话密钥(一般为对称密钥),会话密钥的产生根据密钥协商算法的不同,过程有所不同,但都会用到证书的公钥和私钥,也就是说证书也用在加密场景中。
    • 在单证书配置下,服务器端的公钥和私钥由服务器负责保存。私钥需要特别保存,如果泄漏出去就会有很大的安全风险。客户端的公钥和私钥一般在通信过程中动态产生,客户端也不会存储。
  • 而双证书则包括签名证书和加密证书:

    • 签名证书在签名时使用,仅仅用来验证身份使用,其公钥和私钥均由服务器自己产生,并且由自己保管,CA不负责其保管任务。
    • 加密证书在密钥协商时使用,其私钥和公钥由CA产生,并由CA保管(存根)。
  • 既然单证书可以搞定一切,为何要使用双证书?

    • 从道理上来说两个密钥具有不同的属性,逻辑上应该分开处理。
    • 其实最主要的原因是国家要保证必要的时候有能力对某些通讯进行监控,如果采用单证书,除了服务器自己谁也无法解密(理论上如此),不利于国家安全。因此某些国家法律规定使用双证书。如果拥有加密证书的私钥,可以进行实时监控。

准备证书

正式证书需要从官方渠道获取,这里介绍获取测试证书的方式:

安装配置

国密客户端

奇安信可信浏览器支持国密算法和国密SSL。

奇安信可信浏览器的配置、使用参考:奇安信国密浏览器配置.doc

img.png