安全与 TLS

  • security
  • TLS
  • ESP-TLS
  • HTTPS
  • WSS

ESP-TLS 如何跳过服务器证书校验?

在 ESP32 的 ESP-TLS 中,可以通过配置启用“跳过服务器证书校验”功能,用于测试阶段快速建立 HTTPS / WSS 连接。

menuconfig 中启用以下选项:

  • CONFIG_ESP_TLS_INSECURE
  • CONFIG_ESP_TLS_SKIP_SERVER_CERT_VERIFY

esp_tls_config

启用后,如果 esp_tls_cfg_t 中没有配置以下任一服务器验证方式,ESP-TLS 会自动跳过服务器证书验证:

  • cacert_buf
  • use_global_ca_store
  • crt_bundle_attach

参考代码:

esp_tls_cfg_t cfg = {
    .cacert_buf = NULL,
    .use_global_ca_store = false,
    .crt_bundle_attach = NULL,
    .timeout_ms = 10000,
};

安全风险说明:

  • 无法验证服务器身份。
  • 容易遭受中间人攻击(MITM)。
  • 设备可能连接到伪造服务器。
  • 数据可能被窃听或篡改。

注意事项:

  • 该功能仅适用于测试环境。
  • 不建议用于生产环境。
  • 不应在公网或不可信网络中使用。
  • 生产环境应优先使用 CA 证书或证书 bundle 进行验证。