微信小程序支持国密SSL证书吗?
目前微信小程序不支持仅部署国密SM2 SSL证书的网站。
微信小程序的网络请求必须通过HTTPS建立安全连接,而其TLS验证机制主要兼容国际通用PKI体系(RSA/ECC证书)。如果服务器只部署SM2国密SSL证书,小程序通常无法完成TLS握手,可能出现网络请求失败、证书不受信任或HTTPS连接异常等问题。
因此,对于既需要满足国密合规要求,又需要支持微信小程序访问的系统,业内普遍采用RSA+SM2双证书部署方案。
为什么微信小程序不能直接使用国密SSL证书?
微信小程序虽然运行在微信客户端中,但其HTTPS通信仍遵循标准TLS验证流程。
目前:
- 微信小程序支持HTTPS通信;
- 支持受公共信任CA签发的RSA或ECC证书;
- 不支持仅使用SM2算法建立HTTPS连接。
原因在于,SM2属于我国商用密码算法体系,而微信客户端并未面向公众互联网开放纯国密HTTPS通信能力。
如果服务器仅配置SM2证书,小程序无法完成证书验证,自然无法建立安全连接。
微信官方对HTTPS有什么要求?
微信小程序要求所有网络请求必须使用HTTPS,并满足以下条件:
- 使用合法域名;
- 使用受信任CA签发的SSL证书;
- TLS协议及密码套件符合安全要求;
- 域名已在微信公众平台配置为合法请求域名。
如果证书无效、已过期、域名不匹配或证书链不完整,小程序都可能拒绝建立连接。
如何同时满足国密合规和微信小程序访问?
目前最成熟的方案是部署双算法SSL证书。
即服务器同时配置:
- RSA SSL证书
- SM2国密SSL证书
不同客户端自动协商:
| 客户端 | 使用证书 |
|---|---|
| 微信小程序 | RSA证书 |
| Chrome | RSA证书 |
| Safari | RSA证书 |
| Edge | RSA证书 |
| 国密浏览器 | SM2证书 |
这种部署方式既满足国产密码应用要求,也不会影响公众互联网用户访问。
目前政务、金融、能源等行业普遍采用这种方案。
什么情况下必须部署国密SSL证书?
普通企业微信小程序通常无需部署国密SSL证书。
以下场景可考虑双证书方案:
- 政务服务平台
- 政府小程序
- 国有企业系统
- 银行及金融机构
- 国产化改造项目
- 密码应用安全性评估(密评)
- 等保整改项目
如果只是普通商城、企业官网、小程序后台,部署受公共信任CA签发的RSA证书即可满足微信小程序HTTPS要求。
微信小程序HTTPS部署建议
如果网站需要兼顾微信小程序、PC浏览器及国产化环境,可参考以下方案:
| 使用场景 | 推荐方案 |
|---|---|
| 企业官网 | RSA SSL证书 |
| 微信小程序 | RSA SSL证书 |
| APP接口 | RSA SSL证书 |
| 政务平台 | RSA+SM2双证书 |
| 国密改造项目 | 双算法SSL证书 |
| 国产浏览器访问 | SM2国密SSL证书 |
对于大多数互联网业务,双证书部署能够兼顾兼容性、安全性和合规要求。
微信小程序SSL证书选择建议
申请微信小程序SSL证书时,建议优先选择主流公共CA签发的产品,包括:
- DigiCert
- Sectigo
- GeoTrust
- GlobalSign
- sslTrus(锐安信)
- 华测(支持双算法产品)
- 沃通(支持国密双算法)
如果项目涉及国产密码应用,可选择支持RSA+SM2双算法的产品,而不是仅部署纯国密SSL证书。
常见问题
微信小程序支持SM2国密SSL证书吗?
目前不支持仅使用SM2证书建立HTTPS连接。
如果服务器只部署国密SSL证书,小程序可能无法正常访问。
微信小程序必须使用HTTPS吗?
必须。
微信官方要求所有网络请求均使用HTTPS协议,并且SSL证书必须合法、有效且受信任。
双证书部署后,小程序会使用哪张证书?
微信小程序会自动选择兼容的RSA证书。
支持国密算法的浏览器或客户端则可以协商使用SM2证书,无需人工切换。
国密SSL证书还能用于微信生态吗?
可以,但建议采用双证书部署。
这样既满足国密合规要求,又保证微信小程序、微信公众号、H5页面及普通浏览器能够正常访问。



京公网安备11010502031690号
网站经营企业工商营业执照
















